2009-01-06 7 views
7

Я использую ITextSharp для преобразования HTML-страницы в PDF.Поддерживать стили CSS при преобразовании HTML в PDF в ASP.NET

Однако ITextSharp печатает CSS в декларации STYLE прямо, игнорирует таблицы стилей, даже если они добавлены программно и только прослушиваются некоторые встроенные стили (например, размер шрифта и цвет, но не фоновый цвет).

Есть ли что-то, что мне не хватает в ITextSharp, или есть лучший (и бесплатный) способ сделать это преобразование?

Спасибо заранее,

ответ

5

Посмотрите на WKHTMLTOPDF. Это открытый исходный код, основанный на webkit и бесплатный.

Мы написали небольшой учебник here.

+3

Это возможно программировать с помощью C# ... Я вижу только использование командной строки?! –

+0

Это выглядит наиболее перспективным до сих пор. –

+0

Существует библиотека связок C, которая теоретически может быть использована с C# с использованием P/Invoke, но мне еще не удалась: http://github.com/bamccaig/WkHtmlToPdfDflat. Я также попробовал написать простую программу на C (от Linux, даже), чтобы напрямую протестировать привязки C, но даже это не удалось: http://code.google.com/p/wkhtmltopdf/issues/detail?id=614 , – bambams

7

HTML/CSS поддержки в IText/iTextSharp является very basic. Это просто не правильный инструмент для преобразования html в pdf. Взгляните на эти решения вместо:

Они делают HTML к изображению. Затем вы можете вставить их в свой PDF-файл с помощью iTextSharp.

В противном случае вы можете попробовать конвертировать HTML -> XSL-FO -> PDF, но в том числе CSS есть иная вещь.

+0

Большое спасибо! Я проверю их. –

0

ABCpdf предоставляет два HTML-рендеринга двигателей. Один из них основан на версии MSHTML, установленной в системе. Другая основана на движке рендеринга FireFox Gecko.

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

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

Я работаю над программным компонентом ABCpdf .NET, поэтому в моих ответах могут содержаться концепции, основанные на ABCpdf. Это то, что я знаю. :-)

+0

Возможно, стоит упомянуть, что это коммерческий компонент. На самом деле сайт запутан в этом вопросе - говорит, что он свободен, тогда говорит, что это shareware. –

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

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