Вниз
Скачать: CL | DM;

Идентичное отображение на принтере   Найти похожие ветки 

← →
Студент_   (2004-12-04 14:37) [0]

Заранее прошу прощение за примитивную формулировку вопроса - так он, по моему мнению, наиболее ясно отражает сущность возникшей проблемы.
Как бы написать программу, выводящую на экран чистый лист - как в Word, позволяющую через canvas получить доступ к этому листу, причем лист должен по размеру соответствовать листу принтера - чтобы можно было его распечатать (один в один как на экране), но не требующую установленного в системе принтера.
Printer.PageHeight и Printer.PageWidth проблему решают лишь наполовину, так как не работают при отсутствии в системе принтера. Ввод же констант я со стандартными размерами листа я считаю неправильным - как-то это должно решаться по-другому. Ведь в той же Word документы созданные на одном компьютере отлично распечатываются на другом. Вне зависимости от разрешения принтера и т.д.


← →
Anatoly Podgoretsky ©   (2004-12-04 14:42) [1]

Боюсь, что тебе придется изрядно потружиться в том же ворде, чтобы получить "по размеру соответствовать листу принтера", при том все твои труды не будут действовать за пределами этого компьютера и даже не нем же не всегда.


← →
Jel ©   (2004-12-04 14:59) [2]

Без установленно в системе принтера задача ИМХО лишена смысла. Разные модели принреров имеют разное разрешение, разные поля и т.д., Размер листа соответственно тоже будет разный.


← →
Студент_   (2004-12-04 19:47) [3]

На самом деле полная идентичность не требуется. Я не зря упомянул Word, так как нужно что-то типа встроенного в него предпросмотра - чтобы пользователь знал ЧТО и ГДЕ выведется в итоге на печать. Мне говорили, что окно предпросмотра, вроде как стандартная функция и легко вызывается, но подробности умолчали. Может кто знает что-нибудь про это?


← →
Jel ©   (2004-12-04 20:08) [4]

Word перед тем, как показать preview тоже попросит установить принтер. Preview без принтера не имеет смысла, поскольку об устройстве для которого делается просмотр ничего неизвестно.


← →
Студент_   (2004-12-04 20:23) [5]

Все, свою ошибку понял. А pageheight и pagewidth указывают размеры, с включенными в них полями? То есть в области заданной этими параметрами принтер точно может печатать?


← →
Anatoly Podgoretsky ©   (2004-12-04 20:57) [6]

Нет, это только физические параметры листа.


← →
Студент_   (2004-12-04 21:29) [7]

Гм, и что делать, чтобы узнать физические параметры печати принтера (область где он может печатать)?


← →
Jel ©   (2004-12-04 21:40) [8]

Вызвать GetDeviceCaps для данного device-context. Там масса полезной информации возвращается.


← →
Anatoly Podgoretsky ©   (2004-12-04 21:42) [9]

GetDeviceCaps


← →
Студент_   (2004-12-04 22:27) [10]

Спасибо - попробую.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.027 c
3-1108790471
DelphiN!
2005-02-19 08:21
2005.03.20
Как работать с SQL не "визуально" ?


14-1109573541
syte_ser78
2005-02-28 09:52
2005.03.20
Блин, не могу комп настроить


8-1100501665
maxistent
2004-11-15 09:54
2005.03.20
прозрачная текстура


4-1107734223
Fessio
2005-02-07 02:57
2005.03.20
Папка "Мой компьютер"


3-1108715065
Prohodil Mimo
2005-02-18 11:24
2005.03.20
Как в IB6 удалить FOREIGN KEY ?




   Наверх