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

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

Печать через DLL и управление принтером


JLes ©   (2005-11-21 14:49:00) 

Ситуация - в программе генерируется HTML-файл, содержащий таблицы, который затем посылается на печать через "rundll32.exe mshtml.dll,PrintHTML " filename"". Сама печать проходит без проблем, за исключением того, что таблицы в тексте бывают довольно широкими, и обрезаются справа. Поэтому юзерам было дано указание переключать формат печати (portrait/landscape) вручную в положение landscape. Многие этого до сих пор не освоили, поэтому было принято решение включать landscape из программы.

Попытка в лоб, т.е. Printer.Orientation:=poLandscape перед вызовом функции DLL, успехом не увенчалась.

Соответственно возник вопрос к гурам - возможно ли установить формат принтера в landscape по умолчанию, чтоб он действовал и для других процессов/DLLек/EXEшников? Жестко установить этот формат в системе - дело не очень хорошее, т.к. основной формат таки portrait. Т.е. нужно перед распечаткой установить landscape, после распечатки - снова сбросить в portrait.


tesseract   (2005-11-21 17:57:00) [1]


> Соответственно возник вопрос к гурам - возможно ли установить
> формат принтера в landscape по умолчанию, чтоб он действовал
> и для других процессов/DLLек/EXEшников? Жестко установить
> этот формат в системе - дело не очень хорошее, т.к. основной
> формат таки portrait. Т.е. нужно перед распечаткой установить
> landscape, после распечатки - снова сбросить в portrait.
>


Да в настройках драйвера принтера.  
Также можно почитать help про Tprinter.


Наверх

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