Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.20;
Скачать: 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 вся ветка

Текущий архив: 2005.03.20;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.031 c
1-1109338130
Asail
2005-02-25 16:28
2005.03.20
Зависание Delphi 7 при включенном Hyper-Threading


3-1108641732
Shizuku
2005-02-17 15:02
2005.03.20
Report for iBx


14-1109342839
Rouse_
2005-02-25 17:47
2005.03.20
Маленькое ММР


14-1109591523
Александр Иванов
2005-02-28 14:52
2005.03.20
Стоимость MS SQL


1-1109874982
Kosald
2005-03-03 21:36
2005.03.20
С шрифтами проблема