Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Идентичное отображение на принтере [D7, Win95/98, WinME, NT4, Win2k, WinXP]


Студент_ ©   (2004-12-04 14:37:00) 

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


Студент_   (2004-12-04 22:27:00) [1]

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


Anatoly Podgoretsky   (2004-12-04 21:42:00) [2]

GetDeviceCaps


Jel   (2004-12-04 21:40:00) [3]

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


Студент_   (2004-12-04 21:29:00) [4]

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


Anatoly Podgoretsky   (2004-12-04 20:57:00) [5]

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


Студент_   (2004-12-04 20:23:00) [6]

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


Jel   (2004-12-04 20:08:00) [7]

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


Студент_   (2004-12-04 19:47:00) [8]

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


Jel   (2004-12-04 14:59:00) [9]

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


Anatoly Podgoretsky   (2004-12-04 14:42:00) [10]

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо