2009-05-29 1 views
4

В существующей системе есть много отчетов. Используя бесплатный pdf-принтер, например dopdf или cutepdf, пользователь может открыть отчет, выбрать PDF-принтер, ввести имя файла и сохранить отчет в виде файла pdf. Это кажется немного утомительным.Печать в pdf

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

Печать должна быть бесшумной, чтобы пользователь не запрашивал имя файла. Например, при нажатии 1 файл будет иметь файл c: \ 1.pdf. что-то вроде этого ActivatePdfPrinter (c: \ 1.pdf); printreport; ClosePdfPrinter;

или любым другим способом.

Я использую delphi, но если вы предлагаете какие-либо другие инструменты, которые работают на других языках программирования, я могу искать в правильном направлении.

+1

Не используйте «dotnet» для тега - вместо этого используйте «.net». Пожалуйста, обратите внимание на подсказки подсказки при пометке вашего вопроса - любой тег с номером <10 после того, как имя, вероятно, следует избегать. –

ответ

0

Pragnaan имеет PDF Экспорт Устройство для ReportBuilder: Report Builder Export Devices

+0

Здравствуйте, Stijn, благодарю вас за ответ. Но я думаю, что это потребует от нас конвертировать все наши существующие отчеты в reportbuilder, не так ли? или я понял неправильно? – Anna

+0

Вы не указали, какой отчет (ы) вы использовали, поэтому я сделал предположение. –

0

Вы не говорите, как вы создаете свои отчеты, но Gnostice есть ряд инструментов, которые могут вам помочь.

+0

Привет, Саймон, система содержит около 120 отчетов, некоторые из них - быстрый отчет, некоторые разработчики отчетов версии 5, gnostice поддерживает только новую версию reportvuilder, а некоторые отчеты даже печатаются с использованием Excel. поэтому поэтому его немного хлопот, чтобы преобразовать в reportbuilder – Anna

+0

Быстрые отчеты Анны Гностиц. В частности, вам нужно посмотреть на продукт eDocEngine. http://www.gnostice.com/eDocEngine_VCL.asp#goto_3rd-Party___Reporting_tools_Support –

+0

С учетом формата отчетов, я думаю, что, как утверждают другие, лучше всего пойти по маршруту принтера. –

0

В ответ на ответ Стейна Сандерса: Последняя версия ReportBuilder из цифровых метафор теперь включает в себя собственный экспорт в формате PDF, а также «тихую» экономию PDF и отправку по электронной почте отчета. Вы правы, однако, в том, что вам придется преобразовать все ваши отчеты в ReportBuilder. Возможно, стоит заглянуть, в зависимости от сложности и количества отчетов в вашем проекте. Мы обратились из Rave Reports и никогда не оглядывались назад.

+0

Привет, Джон, спасибо. Мне нужно будет рассмотреть это как последнее средство. Система имеет около 120 отчетов, поэтому поэтому немного сложно перевести в reportbuilder – Anna

1

Установите Adobe Acrobat Professional и выберите «Adobe PDF» в качестве принтера.

0

Я использую PDFFactory. Является ли программное обеспечение, подобное другим, работать как виртуальный принтер. Не очень дорого. Особенность заключается в том, что вы можете управлять (используя реестр Windows) некоторыми параметрами для печати любого документа без вмешательства пользователя.

Я использую его в своем приложении Delphi.

  1. Выберите принтер по умолчанию (PDFFactory)
  2. Написать FileName, ... на ключ реестра
  3. Отправить на печать.

Пользователь не должен ничего писать и не просматривать любое окно конфигурации.

+0

отличный ответ Neftali, я буду использовать это. Я думаю, что это решит мою проблему. Большое спасибо – Anna

+0

Это ссылка с подробным объяснением. http://www.fineprint.com/developers/index.html –

+0

Ссылка на фабрику PDF теперь находится здесь: http://fineprint.com/pdf/ –

0

Anna, в качестве комментария в комментариях вы упоминаете, что используете более старую версию ReportBuilder - посмотрели ли вы на компонент TExtraDevices Waler? У меня нет его руки, но я, похоже, вспоминаю в тот день, когда мы использовали это для вывода из ReportBuilder в PDF, и из-за того, как ReportBuilder думает, что это текстовое устройство, вы можете сделать это без предварительного просмотра или взаимодействия со стороны конечного пользователя.

Сказав это, вы ищете универсальный метод, который будет работать с QuickReport и Excel.Я действительно думаю, что вы закончите с каким-то «PDF-принтером» и заставляете свои отчеты на этот «именованный принтер». Возможно, вы можете настроить PDF Factory таким образом, чтобы он получал имя выходного файла из названия документа и т. Д., Но я думаю, что вы всегда будете иметь немного взаимодействия с пользователем, как бы вы ни старались. :-(

дайте нам знать, что вы делаете, так как это проблема, я имел себя и никогда не удавалось очень удовлетворительное решение. Мне было бы интересно посмотреть, что вы хотите сделать!

+0

Привет, Роб, спасибо за вход. Мне нравится Neftalis ответ, я думаю, что решит мою проблему – Anna

8

бесплатно, с открытым исходным кодом PDFCreator может функционировать как виртуальный принтер, но также можно использовать с помощью COM настройки по умолчанию, даже включает в себя примеры COM

Вы можете проверить образцы COM в хранилище SourceForge SVN здесь:.. http://pdfcreator.svn.sourceforge.net/viewvc/pdfcreator/trunk/COM/

Delphi и ActiveX отлично сочетаются, поэтому у вас не должно быть особых проблем.

+0

Mihai благодарит миллион. Я думаю, что это будет отличное решение. – Anna

+0

Добро пожаловать, рад, что это помогло. –

+1

+1 - Этот метод очень хорошо подходит для общих случаев, и я сделал это с этим конкретным продуктом. Там, где я его разбил, были в чрезвычайно больших документах (тысячи страниц, используя очень маленькие шрифты - интервал был критическим), где было лучше использовать специальный инструмент PDF, такой как PDFBox или Gnostice. – skamradt

0

Win2PDF также имеет API-адрес реестра print to PDF with no user interaction. Из Delphi вам просто нужно установить ключ реестра «PDFFileName» в файл PDF, а затем распечатать на принтер Win2PDF.

 Смежные вопросы

  • Нет связанных вопросов^_^