HTML документ в PDF? - PullRequest
       25

HTML документ в PDF?

6 голосов
/ 05 февраля 2009

У меня есть веб-страница ASP.NET, которая представляет собой динамически генерируемый отчет. По деловым причинам этот точный отчет должен быть подготовлен в формате PDF. Какой лучший способ сделать это? Установка выбранного принтера в Adobe PDF не возможна.

Научитесь программно создавать PDF с нуля? Есть ли способ отрендерить его в каком-либо элементе управления браузером, а затем сохранить результат?

Ответы [ 10 ]

9 голосов
/ 05 марта 2009

wkhtmltopdf - Я скомпилировал его в Windows, и он прекрасно работает. Он использует WebKit (Safari, Chrome и т. Д.) Для рендеринга HTML-страницы в PDF, и это бесплатно!

4 голосов
/ 05 февраля 2009

Если отчет представляет собой таблицу (вероятно, есть), может помочь этот пост в блоге с использованием iTextSharp . iTextSharp - это хороший и самый полный PDF API для C #, который я когда-либо видел.

3 голосов
/ 27 марта 2009

В прошлом году я сделал проект с PDF-файлами и только что выучил формат PDF, чему я очень рад.

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

Нужно ли делать прямой PDF, зависит от сложности ваших документов. Для базовых вещей, таких как простая графика, текст и изображения (например, счет-фактура является хорошим кандидатом), я бы просто написал PDF напрямую. Вы получите хороший опыт и получите полный контроль.

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

3 голосов
/ 05 февраля 2009

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

http://www.websupergoo.com/abcpdf-5.htm

Я использовал PDFsharp (при условии, что вы используете C # в сочетании с ASP), и он работает хорошо. Насколько я знаю, он не отображает HTML.

http://pdfsharp.com/PDFsharp/

0 голосов
/ 09 сентября 2011

Вы также можете найти продукты, которые делают это из Adobe , Foxit и Наветренные отчеты (отказ от ответственности - я технический директор в Наветренном). *

0 голосов
/ 04 октября 2009

Использовать PDF Duo .NET конвертирующий компонент. Он преобразует HTML в PDF, поэтому после генерации вашего HTML-отчета вы можете создать другой PDF-файл в своем проекте ASP.NET.

0 голосов
/ 27 марта 2009

Вы смотрели на службы отчетов SQL Server? Если вы используете MSSQL 2005/2008, то, возможно, у вас уже есть службы отчетов, и вам просто нужно настроить их. Вы можете разместить свои отчеты там и всего за несколько строк кода получить отчет в виде файла PDF.

    //create the web request for the report based on a URL that will define export 
    //format, parameter values, etc.
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(reportUrl);
    //send creditials if necessary
    request.Credentials = new NetworkCredential(userName, password);
    //response will contain the PDF file as a stream
    HttpWebResponse response = (HttpWebResponse)request.GetResponse();

Вот ссылка , которая также может помочь

0 голосов
/ 22 февраля 2009

Если вы специально сосредоточены на создании PDF, я могу порекомендовать вам Dynamic PDF продукты CeTe. Они немного дороги, но у них много вариантов, они просты в использовании и довольно хорошо документированы.

0 голосов
/ 05 февраля 2009

Вы не упомянули о себе, если вы ищете решение с открытым исходным кодом или решение $$?

Но вот конвертер с открытым исходным кодом: http://sourceforge.net/projects/itextsharp/ что довольно прилично.

0 голосов
/ 05 февраля 2009

Эти ссылки могут помочь:

http://www.411asp.net/home/assembly/document/pdf

http://alt -soft.com / Support_kb_generating_pdf_from_asp_net.aspx

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

НТН

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...