Генерация PDF из HTML (компонент для .NET)

Не могли бы вы указать мне на открытый исходный код или коммерческий продукт по разумной цене, способный генерировать PDF из HTML?

Ответов (12)

Успешно использую (коммерческий) Aspose.Pdf уже много лет. Работает как для .NET, так и для Java.

PrinceXML

И конвертер EVO html в pdf

По характеру задачи (преобразование HTML в PDF) симпатичный инструмент создания PDF должен отображать HTML как веб-браузер. К счастью, он уже существует: проект с открытым исходным кодом WkHtmlToPdf, но он не обеспечивает никакой интеграции с .NET из коробки.

Не тратьте время на изобретение колеса: я уже упаковал WkHtmlToPdf в одну DLL (никаких внешних зависимостей), просто добавьте ее в свой проект и сгенерируйте PDF с помощью одной строчки кода:

var pdfBytes = (new NReco.HtmlToPdfConverter()).GeneratePdf(htmlContent); 

Кроме того, можно указать различные параметры (например, поля, коэффициент масштабирования и т. Д.) Через свойства HtmlToPdfConverter.

DLL можно скачать здесь (БЕСПЛАТНО): PdfGenerator для .NET

В прошлом мы использовали ABCPdf, и он может принимать веб-запросы и создавать из них PDF-файлы.

Я раньше успешно использовал HTML to PDF Converter for .NET в проекте.

Одним из альтернативных решений было бы использовать элемент управления веб-браузера и распечатать HTML-код на установленном PDF-принтере.
Доступно несколько бесплатных принтеров PDF, и их можно настроить для печати непосредственно в файл без отображения пользовательского интерфейса.

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

В настоящее время мы используем ABCpdf в одном из наших более сложных приложений. Он сослужил нам хорошую службу и совсем не очень дорогой. Мне нравится тот факт, что я могу отправить ему необработанный текст HTML, и он будет отображать его в PDF в памяти или в виде файла, поэтому мы используем его для создания PDF-файлов на лету и обслуживания их через Интернет, фактически никогда не сохраняя его на диск.

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

Дополнительную информацию можно найти на их веб-сайте: http://www.websupergoo.com/abcpdf-1.htm.

Мы добились большого успеха с продуктом с открытым исходным кодом под названием itextsharp - он не так уж хорош при преобразовании HTML в PDF, но хорош для тщательного объединения определенного PDF-документа (например, квитанции). Это также бесплатно, что всегда является бонусом. Видеть:

http://sourceforge.net/projects/itextsharp/

Еще одно быстрое и легкое решение - XMLPdf, написанный компанией-разработчиком программного обеспечения Ibex из Новой Зеландии. У этого инструмента есть модель, в которой вы создаете файл шаблона XML с тегами HTML в схеме. Вы также можете определять теги в XML, которые вы связываете с объектами в вашем .NET-коде. Немного неуклюжий, но полезный в определенных обстоятельствах. Не бесплатно, но дешево. Можно найти его, выполнив поиск XMLpdf в Google.

Вот компонент HTML to PDF .NET по разумной цене. Но у него есть собственные механизмы чтения html / css и рендеринга pdf.

  1. PDFSharp
  2. Четкий PDF
  3. iTextSharp

Просто назвать несколько.

wwww

: http://www.pdfsharp.com/

Abcpdf .Net версии 8 работает, но создает множество проблем на производственных серверах, где безопасность и права пользователей ограничены.

Прямое преобразование URL-> pdf затруднительно. Мы закончили тем, что URL-Сохранить HTML в локальной папке -> прочитать HTML и преобразовать в PDF -> удалить HTML-файл из папки - сложный подход, но он работает. Единственный недостаток заключается в том, что вам нужно дать разрешение на чтение / запись для папки на сервере. Это все же лучше, чем снижение настроек безопасности.