Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Компоненты для работы с PDF в Delphi без Adobe Reader: возможности и лицензии

Delphi , Технологии , ActiveX

Вопрос о поиске компонентов для просмотра и печати PDF файлов в среде Delphi и C++Builder является актуальным для многих разработчиков. Пользователь с ником Brian столкнулся с рядом проблем при поиске подходящего решения, которое бы соответствовало требованиям бесплатного распространения с royalty-free лицензией и не требовало установленного Adobe Reader.

Проблема и опыт поиска

Brian уже испробовал несколько компонентов, таких как Gnostice PDFtoolkit, Radaee PDF Viewer, VeryPDF, WPViewPDF, GdViewer, QuickPDF library, eXPert PDF Viewer и EasyPDF SDK. Однако, каждый из них имел свои недостатки, включая проблемы с отображением изображений, сбои, медленную работу и ограничения по лицензии.

Возможные решения

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

Рекомендации

Среди рекомендуемых решений выделяется Amyuni PDF Creator ActiveX, который предлагает royalty-free лицензию, поддержку JPX изображений, непрерывное отображение нескольких страниц и другие функции.

Еще одним вариантом является WPViewPDF в версии 3.x, который теперь работает с большинством PDF файлов, обладает высокой отзывчивостью благодаря многопоточности и возможностям манипуляции PDF файлами.

Также упоминается SumatraPDF, который можно интегрировать в Delphi приложение, используя параметр -plugin для создания встроенного просмотрщика. SumatraPDF быстро работает и распространяется в соответствии с условиями GPL, используя движок MuPDF.

Пример кода

Для демонстрации, приведем пример использования SumatraPDF в Delphi приложении. Для интеграции SumatraPDF в качестве встроенного просмотрщика PDF, можно использовать следующий подход:

uses
  System.Shell;

procedure TForm1.Button1Click(Sender: TObject);
var
  SumatraPDF: TProcess;
begin
  SumatraPDF := TProcess.Create(nil);
  try
    with SumatraPDF do
    begin
      // Запуск SumatraPDF с указанием пути к PDF файлу и параметром -plugin
      // для интеграции в приложение
      CommandLine := 'path_to_sumatrapdf.exe -plugin "C:\PathToYourContainer" "path_to_your_pdf_file.pdf"';
      // Указываем родительский элемент для встраивания (например, Panel)
      // В параметре -plugin указывается путь к элементу интерфейса
      // Например, если в вашем проекте есть Panel с именем Panel1, то путь будет
      // "C:\Windows\System32\YourApp.exe#Panel1"
      Execute;
    end;
  finally
    SumatraPDF.Free;
  end;
end;

Это базовый пример, который демонстрирует, как можно запустить SumatraPDF из вашего Delphi приложения, используя указанный путь к PDF файлу и необходимый параметр для интеграции в интерфейс приложения.

Подтвержденный ответ

На основе предоставленных данных, наиболее подходящим решением для просмотра и печати PDF файлов в Delphi, с учетом требований к лицензии и отсутствию необходимости в установленном Adobe Reader, является использование Amyuni PDF Creator ActiveX или интеграция SumatraPDF с помощью параметра -plugin.

Заключение

Выбор компонента для работы с PDF в Delphi зависит от конкретных требований к функционалу и лицензии. Рассмотренные варианты предлагают различные возможности и могут быть адаптированы под нужды конкретного проекта.

Создано по материалам из источника по ссылке.

Вопрос связан с поиском компонентов для работы с PDF в среде Delphi, с акцентом на бесплатное распространение и отсутствие необходимости в Adobe Reader.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




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


:: Главная :: ActiveX ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-06-15 23:13:57/0.0036101341247559/0