Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > как страничку в webbrowser сохранить в pdf


Автор: serjufa 13.7.2009, 12:50
вопрос такой - ежедневно мне приходится сохранять веб-страницы в файлы формата pdf с шести сайтов. причем, каждый сайт - в свой pdf. в итоге, я создаю 6 pdf файлов и размещаю на сетевом ресурсе. делаю это почти вручную:

В D7 в WebBrowser я программно открываю нужный сайт, программно дожидаюсь полной загрузки, вызываю команду печать.

Вопрос - как мне программно, без диалога печати сохранить файл ч/з вирт. pdf принтер.? Т.е., я прописываю в программе путь и имена всех файлов, она открывает страницы и пишет в pdf. 

Автор: Crw 13.7.2009, 16:09
Это смотря какой pdf принтер вы используете. Если обычный принтер (без использования его SDK), то распечатать страничку из веббровзера можно следующей командой:
Код

WebBrowser1.ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER);

Автор: serjufa 14.7.2009, 06:23
Я печатаю так 

Код

    // Print without Printer Dialog
    WebBrowser1.ControlInterface.ExecWB(OLECMDID_PRINT,
      OLECMDEXECOPT_DONTPROMPTUSER, vaIn, vaOut);


Однако, выходит диалог имени файла

Автор: Crw 14.7.2009, 16:45
Если вы печатаете на обычный ПДФ принтер, тогда так и будет. Вам нужно использовать SDK для принтера (если у принтера который вы используете такое есть) чтобы иметь возможность задавать имя выходного файла и другие настройки принтера.

Автор: Keeper89 14.7.2009, 19:24
Цитата(serjufa @  14.7.2009,  07:23 Найти цитируемый пост)
Однако, выходит диалог имени файла 

как вариант можно автоматически заполнять имя и так же на автомате жать ОК.

З.Ы. Если есть денежки или авторское право не по чем smile можно использовать специальные компоненты для конвертации, например http://www.vispdf.com/ (при этом не понадобится даже WebBrowser).

Автор: Keeper89 14.7.2009, 19:45
Покопался - из бесплатных нашел только http://code.google.com/p/wkhtmltopdf/. На мой взгляд очень достойная вещь, прикрепил конвертацию форума Delphi для иллюстрации.

Автор: Crw 15.7.2009, 16:53
Цитата(Keeper89 @  14.7.2009,  19:24 Найти цитируемый пост)
например VisPDF Library 

Разве эти инструменты поддерживают конвертацию ХТМЛ ?

Автор: Keeper89 15.7.2009, 18:15
Crw, да, скорее всего ошибся на счет VisPDF. Но wkhtmltopdf работает точно.
Вот ссылки на он-лайн конвертеры:
  • http://www.htm2pdf.co.uk
  • http://html-pdf-converter.com

Автор: Crw 15.7.2009, 20:50
Цитата(Keeper89 @  15.7.2009,  18:15 Найти цитируемый пост)
http://www.htm2pdf.co.uk

Не открылся..
Цитата(Keeper89 @  15.7.2009,  18:15 Найти цитируемый пост)
http://html-pdf-converter.com

Ну и примитивизм. Просто распечатывают в ПДФ. Как для онлайн сервиса могли бы что-то получше сделать.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)