Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > ОС и железо
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 17.02.2016, 16:16
-=#PupaJr#=- -=#PupaJr#=- вне форума
Новичок
 
Регистрация: 17.08.2010
Сообщения: 69
Репутация: 518
По умолчанию Параллельная печать документа в PDF

Delphi6.
При составлении отчёта в виде текста и графика рисую на канве принтера сам отчёт и вывожу его на лазерный принтер. Всё работает ОК.
Возникла задача тоже самое делать скрытым образом от пользователя параллельно печатая в PDF. В принципе в PrintDialog выбирая PDFwriter можно сделать требуемое.. но часто забывают и остаётся лишь бумажная версия.
Сделал - вызываю дважды печать - первый раз с принтером который стоит по умолчанию "LaserJet" а второй раз "PDFwriter" выбирая его по индеклу из списка установленных в системе. Всё срабатывает, но надо вводить путь и имя файла для сохранения PDF - НО ЭТОГО НЕ должно быть видно - должно проходить незаметно для пользователя, имя файла - дата и время (сделал), путь - в папку спрограммой (тоже просто), но от появления диалога немогу избавится... как???
Та же проблема если беру XPSwriter - тоже самое, появляется диалог сохранения и погасить его незнаю как... ???
Можно попробывать FindWindow и хендл диалога и искать кнопку "ОК/SAVE" с полем ввода имени -но это изврат..
Можно сделать специальный порт принтера и настроить его сразу на нужную папку - это нужны права администратора и просто программу не перенесёшь уже на другой ПК, тем более как сделать это из самой программы.. ??? К тому же печать в PDF почему-то так идёт в оттенках серого, а при нормальном выборе принтера, вместо лазерного, печатает в цвете, но это не принципиально... хотя иногда на некоторых ПК палитра не серая а черно-белая и тогда пропадают некоторые элементы графика (видимо настройки драйвера).
Печать в картинку тоже не вариант(несколько страниц, была бы 1....), но вот в WMF многостраничный можно было-бы, но не знаю как.
Спасибо.
Ответить с цитированием
  #2  
Старый 17.02.2016, 21:07
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Скачайте альтернативный драйвер PDFCreator 2.2. Он бесплатный и там есть все нужные вам настройки. Я его попробовал, все чудно, в фоне создается каталог с файлом в нужном мне формате. Взял себе на заметку, может пригодится тоже.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.

Последний раз редактировалось Страдалецъ, 17.02.2016 в 21:20.
Ответить с цитированием
  #3  
Старый 18.02.2016, 06:19
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,003
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Страдалец, а не знаешь бесплатных библиотек, позволяющих делать то же самое из программы? Пусть и с ограниченным функционалом?
Фактически, надо "печатать" в pdf что-то типа фотоальбома. Оглавление (если поддерживает, то с превьюшками картинок) и потом сами картинки (если поддерживает, то можно несколько на одной странице).
Ответить с цитированием
  #4  
Старый 18.02.2016, 11:59
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Сам не пробовал, попробуйте вы. Тут рецептик есть, возможно это решение вас устроит.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #5  
Старый 28.02.2016, 05:53
-=#PupaJr#=- -=#PupaJr#=- вне форума
Новичок
 
Регистрация: 17.08.2010
Сообщения: 69
Репутация: 518
По умолчанию

Спасибо. Проект сдан. В итоге печать всё равно будет в оттенках серого, а PDF печаталка ставится вместе с офисом 2010 и что-то добавить/удалить в драйверах системы это возможен геморр... Так как машины корпоративные, всё должно быть "по умолчанию" и максимум совместимо с любой другой машиной.
Понял что прямого рецепта нет. Спасибо. Пока отложим до следующей версии, если такавая вдруг понадобится. ))
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 12:41.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter