Перетворити HTML + CSS в PDF [закрито]


1628

У мене є HTML (не XHTML) документ, який добре відображає файли Firefox 3 та IE 7. Він використовує досить базовий CSS для його стильового оформлення, а штраф - HTML.

Зараз я шукаю спосіб перетворення його в PDF. Я намагався:

  • DOMPDF : у нього були величезні проблеми з таблицями. Я створив свої великі вкладені таблиці, і це допомогло (раніше вона лише витрачала до 128 М пам'яті, а потім помирала - ось мій ліміт пам’яті в php.ini), але це робить повний безлад таблиць і, схоже, не виходить образи. Таблиці були просто базовими елементами з деякими стилями меж, щоб додати кілька рядків у різних точках;
  • HTML2PDF та HTML2PS : Мені справді пощастило з цим. Він створив деякі зображення (усі зображення - це URL-адреси Google Chart), і форматування таблиці було набагато краще, але, здавалося, є якась проблема складності, яку я ще не з'ясував і продовжував вмирати з невідомими помилками node_type (). Не впевнений, куди піти звідси; і
  • Htmldoc : це, здається, добре працює на базовому HTML, але майже не підтримує CSS, тому вам доведеться робити все в HTML (я не розумів, що це був ще 2001 рік у Htmldoc-land ...), тому мені це марно.

Я спробував додаток Windows під назвою Html2Pdf Pilot, який насправді зробив досить пристойну роботу, але мені потрібно щось, що працює як мінімум на Linux і в ідеалі працює за запитом через PHP на веб-сервері.

Що мені не вистачає чи як я можу вирішити цю проблему?


9
Html2Pdf фактично використовує вбудований екземпляр IE для візуалізації сторінки, а потім перетворює його в PDF - можливо, через механізм друку IE.
Джоел Мюллер

55
оскільки це питання 2008 року, dompdf зараз значно зріліший. ;-)
Хендра Узія

5
DOMPDF тепер підтримує CSS 2.1 і може мати справу з @import, @mediaі @screenправила, і буде завантажувати зовнішні таблиці стилів. Він також поставляється в комплекті з усім необхідним для його роботи, хоча є речі, які ви можете встановити для отримання кращої продуктивності, ніж лібри за замовчуванням. code.google.com/p/dompdf
totalNotLizards

6
Оновлення 2015 року: вивчивши безліч варіантів, ми вирішили перейти з wkhtmltopdf - це приємна утиліта, яку ми боремося з CSS, оскільки у нас є зовнішній файл CSS, але тоді ми застосували трюк, щоб поставити фіктивну посилання CSS на наш елемент HTML, який ми хочемо конвертувати та встановити правильний шлях, він працює як МАГІЧНИЙ !!!
Аншул Нігам

10
Я вірю, що незабаром кожен вважає Chrome / Chromium без голову chrome --headless --print-to-pdf="path/to/pdf" https://your_url найбагатшим, найшвидшим та найпростішим інструментом для генерації HTML у форматі pdf crbug.com/603559, оскільки він підтримує більшість функцій html, розробники покладаються на веб-розробки та не витримують складних сценаріїв, як більшість інших бібліотеки та інструменти.
Ебрагім Бягові

Відповіді:


551

Важливо: Зверніть увагу, що ця відповідь була написана в 2009 році, і це може бути не найвигіднішим рішенням сьогодні в 2019 році. Інтернет-альтернативи сьогодні є кращими, ніж вони були тоді.

Ось кілька онлайн-сервісів, якими ви можете скористатися:


Погляньте на PrinceXML .

Це, безумовно, найкращий HTML / CSS в PDF-конвертер там, хоча він і не є безкоштовним (але ей, і ваше програмування може бути не безкоштовним, так що якщо ви заощадите 10 годин роботи, ви вдома вільні (оскільки вам також потрібно врахуйте, що альтернативні рішення вимагатимуть встановлення виділеного сервера з потрібним програмним забезпеченням)

О так, хіба я згадував, що це перше (і, мабуть, єдине) рішення HTML2PDF, яке робить повний ACID2 ?

Зразки PrinceXML


16
Моя компанія написала веб-службу, побудовану навколо Prince. Значно дешевші авансові витрати, які можна використовувати, не встановлюючи нічого: docraptor.com
Joel Meador

6
Я також використовував DocRaptor. Дивовижний спосіб отримати переваги принца без необхідності платити за дорогу ліцензію. Вітаю з чудовим продуктом, Джоель.
Nate365

22
Шлях занадто дорогий. WKHTMLTOPDF (див. Іншу відповідь) є безкоштовним, виконує роботу та використовує webkit, який є приголомшливим.
thomallen

1
є послуга Saas однакової або кращої якості за частку ціни - див. htm2pdf.co.uk
користувач1914292

5
Якщо у вас є доступ до командної лінії, і НЕ хочете платити $ 3500, PhantomJS за допомогою цього сценарію: github.com/ariya/phantomjs/blob/master/examples/rasterize.js може бути рішенням - це вільний і простий спосіб!
chjortlund

666

Погляньте wkhtmltopdf. Це відкритий код, заснований на веб-програмі та безкоштовний.

Ми написали невеликий підручник тут .

EDIT (2017):

Якби сьогодні побудувати щось, я б більше не ходив по цьому маршруту.
Але використовував би http://pdfkit.org/ замість цього.
Можливо, позбавивши його всіх своїх залежностей від nodejs, щоб запустити в браузері.


10
Цей працює в найкращому приміщенні ІМО. Конвертація Boostrap з існуючого рендері замість того, щоб писати його з нуля - не тривіальна задача. Крім того, Webkit написаний на C ++, і тому набагато швидше та значно менше ресурсів, ніж реалізація на основі PHP.
Koobz

3
У нас виникли величезні проблеми, намагаючись змусити це відтворити шрифти належним чином серверів CentOS. Після буквально тижнів возитися навколо, здається, єдиний варіант - не використовувати CentOS.
Abhi Beckert

1
УВАГА! Якщо ви використовуєте wkhtmltopdf (принаймні, в моїй системі, XAMPP в Windows 7 64-розрядному), у всіх випадках, які я намагався, зображення у форматі .gif не відображаються у файлі PDF. Я спробував декілька запропонованих способів вирішення в різних місцях, таких як "ширина" та "висота" та написання URI відповідно до різних умов. Ніщо, що я намагався, ніколи не спричинило появу .gif (зокрема, навіть не пропозиція "ширина" та "висота", яку я спробував як за допомогою вбудованих стилів, так і за допомогою архаїчних, необроблених "ширини" та "висоти" атрибутів HTML). Однак заміна зображень на .jpg працювала з першої спроби.
Дан Ніссенбаум

6
Ця абстракція досить приємно , хоча mikehaertl.github.io/phpwkhtmltopdf
Саада

1
Комерційні послуги були для нас надто дорогими, тому ми реалізували WKHTMLTOPDF як безкоштовну хмарну службу html2pdfrocket.com для будь-якого користувача, а потім використали їх самі для наших клієнтів. Ми зробили це так, щоб нашим клієнтам не довелося встановлювати exe на своїх серверах тощо. Я, безумовно, оцінюю WKHTMLTOPDF, якщо ви будуєте свій власний сервіс.
eagle779

150

Після деякого розслідування та загального підтягування волосся рішення, здається, є HTML2PDF . DOMPDF зробив жахливу роботу з таблицями, рамками та навіть помірно складним компонуванням, а htmldoc здається досить надійним, але майже повністю не знає CSS, і я не хочу повертатися до того, щоб робити макет HTML без CSS тільки для цієї програми.

HTML2PDF виглядав найбільш перспективно, але я все-таки мав цю дивну помилку щодо нульових аргументів посилання на node_type. Я нарешті знайшов рішення для цього. В основному, PHP 5.1.x відмінно працював із заміною регулярного виразів (preg_replace_ *) на рядках будь-якого розміру. PHP 5.2.1 представив директиву конфігурації php.ini під назвою pcre.backtrack_limit . Що робить цей параметр config - обмежує довжину рядка, для якого проводиться відповідність. Чому це було введено, я не знаю. Значення за замовчуванням було обрано 100 000. Чому таке низьке значення? Знову ж таки, ідеї немає.

Помилка була піднята проти PHP 5.2.1 для цього , який досі відкрите майже два роки по тому .

Жахливим у цьому є те, що при перевищенні ліміту заміна просто мовчки виходить з ладу . Принаймні, якщо помилка була піднята та зареєстрована, ви мали б вказати, що сталося, чому і що потрібно змінити, щоб виправити її. Але не.

Тож у мене є 70-кілограмовий HTML-файл, який перетворюється в PDF Для цього потрібні наступні налаштування php.ini:

  • pcre.backtrack_limit = 2000000; # напевно, більше, ніж мені потрібно, але це нормально
  • memory_limit = 1024М; # так, один гігабайт ; і
  • max_execution_time = 600; # так, 10 хвилин .

Тепер проникливий читач, можливо, помітив, що мій HTML-файл менший за 100 Кб. Єдиною причиною, за якою я здогадуюсь, чому я потрапив у цю проблему, є те, що html2pdf робить перетворення в xhtml як частину процесу. Можливо, це мене перейняло (хоча майже 50% набряку здається дивним). Як би там не було, вищезгадане спрацювало.

Тепер html2pdf - це ресурсна свиня. Для створення мого файлу розміром 70 К потрібно приблизно 5 хвилин і принаймні 500-600М оперативної пам’яті, щоб створити PDF-файл на 35 сторінок. Недостатньо швидкий (на сьогоднішній день) для завантаження в реальному часі, на жаль, і використання пам’яті ставить коефіцієнт використання пам’яті в порядку 1000 до 1 (600М оперативної пам’яті для файлу 70 К), що абсолютно смішно.

На жаль, це найкраще, що я придумав.


1
@cletus, чи можете ви сказати мені про стабільну версію HTML2PDF. Наведений вище приклад посилання застарів
Ripa Saha

Для останньої версії дивіться github.com/spipu/html2pdf
Люк Венке


Працює так само погано, як mPDF ... швидше, але не точно ... та перетворення шрифтів TTF неймовірно болісно ... у них навіть є незалежна бібліотека "tc-lib-pdf-font" лише для створення шрифтів
Martin Zvarík

125

Чому б не спробувати mPDF версії 2.0 ? Я використовував його для створення PDF-документа. Це чудово працює.

Тим часом mPDF знаходиться у версії 5.7, і він активно підтримується, на відміну від HTML2PS / HTML2PDF

Але майте на увазі, що з документацією дійсно важко впоратись. Наприклад, погляньте на цю сторінку: https://mpdf.github.io/ .

Дуже основні завдання навколо html до pdf, можна виконати з цією бібліотекою, але більш складні завдання потребують певного часу для читання та "розуміння" документації.


1
Я спробував тут купу запропонованих. Поки що цей додаток завантажено та відпрацьовано з коробки без зайвих клопотів, і документи справді дивовижні порівняно з рештою. Інструкція по застосуванню чітко написана.
Сміт Сміті

mPDF доставляє мені серйозні клопоти при розміщенні html-тегів із фоном зображення або тегами з бази даних:mPDF error: IMAGE Error (http://www.example.com/folder/image.jpg): Error parsing image file - image type not recognised, and not supported by GD imagecreate
Стефан

Версія 6.0 працює так, як очікувалося: включіть її (або в рамку, завантажте її) екземпляр, заповніть ваші речі, виведіть так чи інакше ... Це все!
toesslab

Добре MPDF працює добре, правда! Але код і документація несуперечливі - реально складно виконати складнішу задачу, наприклад створити лист щодо норми din.
Qullbrune

Стверджує, що це набагато повільніше, ніж html2fpdf. Але для базового вмісту я вважав, що це досить швидко (рахунки-фактури, звіти тощо). Величезним плюсом для mPDF є те, що навряд чи існують вимоги щодо розширення PHP (працює поза кодом на спільному хостингу)
Joao

70

1) використовуйте MPDF !

а) витягнути в yourfolder

б) створити file.php в yourfolderі вставити такий код:

<?php
include('../mpdf.php');
$mpdf=new mPDF();
$mpdf->WriteHTML('<p style="color:red;">Hallo World<br/>Fisrt sentencee</p>');
$mpdf->Output();   exit;
 ?>

в) відкрийте file.php у своєму браузері




2) Використовуйте pdfToHtml !

1) витягніть pdftohtml.exe у свою кореневу папку:

2) всередині цієї папки, у файлі anyfile.php , покладіть цей код (якщо припустити, джерело example.pdf також є):

<?php
$source="example.pdf";
$output_fold="FinalFolder";

    if (!file_exists($output_fold)) { mkdir($output_fold, 0777, true);}
$result= passthru("pdftohtml $source $output_fold/new_filename",$log);
//var_dump($result); var_dump($log);
?>

3) введіть FinalFolder , і там будуть конвертовані файли (стільки сторінок, скільки у вихідному PDF-файлі ..)


Я б спробував GrabzIt їх API підтримує CSS, JavaScript та більшість інших типів ресурсів. На нього просто потрібно посилатись з абсолютними URL-адресами або робити їх вбудованими і включати в HTML, який надсилається до служби. Спробуйте тут: grabz.it/html-to-pdf-image-api.aspx

GrabzIt не безкоштовний
Chatoxz

56

Оформити замовлення TCPDF . Він має деякі функції HTML у PDF, які можуть бути достатніми для того, що вам потрібно. Це також безкоштовно!


1
його підтримка полягає в наданні html досить обмежена, ви можете прочитати це: tcpdf.org/doc/classTCPDF.html#ac3fdf25fcd36f1dce04f92187c621407
Hendra Uzia

1
але стиль css не працює
KBK

32

Для того, щоб нарізати нитку, я спробував DOMPDF, і це спрацювало чудово. Я використовував DIVі інші елементи рівня блоку для позиціонування всього, я тримав це строго CSS 2.1, і він грав дуже добре.


31

Я пропоную DocRaptor (який використовується PrinceXMLяк "двигун")


На жаль, неможливо використовувати, якщо ви хочете генерувати великі PDF-файли з великою кількістю зображень. Я думаю, що існує 60 секунд часу на запити, і якщо Docraptor буде потрібно завантажити багато файлів, це буде перевищено, і жоден файл не буде зроблений.
Вільгельм

1
Це питання, про яке згадував Вільгельм, було виправлене.
illbzo1

30

Про це вже згадувалося, але я просто хотів би підтвердити, що mpdf - це найпростіший, найпотужніший і найвільніший HTML-конвертер у форматі pdf. Небо справді межа. Ви навіть можете генерувати pdf динамічних, створених користувачем даних.

Наприклад, клієнт хотів системи CMS, щоб він міг оновити список треків музики, яку він грав у своєму клубі. Це не було жодних проблем, але він також хотів, щоб користувачі могли завантажити .pdf плейлиста, і тому цей PDF-файл, який можна завантажити, повинен був оновитись і cms. Завдяки mpdf, за допомогою декількох простих циклів та змінних змінних я міг би зробити саме це. Щось, на що я думав, займе мене тижнями, буквально зайняло мене хвилин.

Чудова стаття, яка допомогла мені почати.


7
PDF-список відтворення. Допоможи мені Бог.
Генрік Ерландссон

29

Хороші новини! Snappy !!

Snappy - це дуже проста бібліотека PHP5 з відкритим кодом, що дозволяє створювати мініатюри, знімки або PDF з URL-адреси чи сторінки HTML. І ... він використовує відмінний wkhtmltopdf на основі веб - файлів

Насолоджуйтесь! ^ _ ^


1
Я створив HTTP API, який використовує Snappy (на основі wkhtmltopdf). Ви можете перейти за URL-адресою та перетворити веб-сторінку з HTML у PDF: github.com/Dellos7/dhtml2pdf
Девід Лопес

26

Добре, якщо ви хочете знайти ідеальну бібліотеку XHTML + CSS to PDF Converter, забудьте про це. Це далеко не можливо. Тому що це просто як знайти ідеальний браузер (XHTML + CSS-механізм візуалізації). У нас є такий? IE або FF?

Я мав певний успіх у DOMPDF. Вся справа в тому, що вам потрібно змінити свій HTML + CSS-код, щоб відповідати способу роботи бібліотеки. Крім цього, у мене досить хороші результати.

Дивись нижче:

Оригінальний HTML

Перетворення HTML в PDF


25

HTML2PDF і html2ps , який був спочатку згаданий в першому пості говорили про пакет 2009 року з цієї посиланням

Але є кращий HTML2PDF

Він заснований на TCPDF, хоча частково є французькою мовою.

Ви можете мати заголовки таблиць або колонтитули, які повторюються на сторінках і мають номер сторінки та загальну кількість сторінок. Дивіться його приклади . Я використовую його вже більше трьох років і рекомендую.


1
Чому це не зверху? Він працює без зайвих залежностей, і досить хороший для програм більшості людей, не витрачаючи 3800 доларів!
вироджене

22

Я використовую fpdf для створення файлів PDF за допомогою PHP. Наразі мені добре працює, щоб створити прості результати.


21

Існує підручник із Zend devzone про генерування pdf з php ( частина 1 , частина 2 ) без жодних зовнішніх бібліотек. Я ніколи не реалізував подібне рішення, але оскільки це все php, вам може здатися більш гнучким у застосуванні та налагодженні.



Так, але це не перетворює HTML ... це необроблене покоління PDF
Мартін Зварик

16

Спробуйте схопити останню нічну збірку dompdf - я використовував старішу версію, яка була жахливою свиней ресурсу, і мені назавжди потрібно було відтворити pdf. Після того, як схопив ніч звідси .

Щоб створити PDF-файл, знадобилося лише кілька секунд - І це було так само чудово, як у принцаXXML / Docraptor . Здається, вони серйозно оптимізували код dompdf, оскільки я останній раз ним користувався!


dompdf - це справді чудовий варіант. Я два рази користувався, і це дуже просто. Рекомендую спробувати dompdf. Ось посилання на офіційний github repo: github.com/dompdf/dompdf
Rituparna sonowal

16

Згадка Дарріла Хайна над TCPDF , ймовірно, чудова ідея. Код Нікола Асуні досить зручний і потужний. Єдиним вбивцею є те, якщо ви коли-небудь плануєте об'єднувати PDF-файли із створеним PDF-файлом, у нього немає цих функцій. Вам слід створити PDF, а потім об'єднати його, використовуючи щось на зразок PDFTK від Sid Steward (www.pdflabs.com/tools/pdftk-the-pdf-toolkit/).


13

З точки зору вартості, використання веб-сервісу (API) у багатьох випадках може бути більш розумним підходом. Крім того, за рахунок аутсорсингу цього процесу ви розвантажуєте власну інфраструктуру / сервіс та - за умови використання авторитетного сервісу - забезпечуєте сумісність із коригуванням веб-стандартів, часу роботи, коротких термінів обробки та швидкої доставки вмісту.

Я провів деякі дослідження більшості веб-сервісів, які зараз є на ринку, будь ласка, знайдіть нижче API, які, на мою думку, варто згадати в цій темі, в порядку, заснованому на співвідношенні ціна / вартість. Усі вони пропонують попередньо складені класи та пакети PHP.

  1. pdflayer.com - Вартість: $ - Якість: ☆☆☆☆
  2. docraptor.com - Вартість: $$$ - Якість: ☆☆☆☆☆
  3. pdfcrowd.com - Вартість: $$ - Якість: ☆☆☆

Якість:

Маючи високоякісний двигун PrinceXMLяк основу, DocRaptor чітко пропонує найкращу якість PDF, повертаючи високополіровані та добре перетворені PDF документи. Однак сервіс API pdflayer тут дуже близько. Pdfcrowd не обов'язково оцінюється якістю, але швидкістю обробки.

Вартість:

pdflayer.com - Як зазначено вище, найбільш рентабельним варіантом тут є pdflayer.com, який пропонує абсолютно безкоштовний план підписки на 100 PDF-файлів щомісяця та преміум-підписки від 9,99 до 119,99 дол. Ціна 10 000 щомісячних PDF-документів становить 39,99 дол.

docraptor.com - пропонує 7-денний безкоштовний пробний період. Плани передплати преміум класу становлять від 15 до 2250 доларів. Ціна на 10 000 PDF-документів щомісяця становить ~ 300,00 доларів.

pdfcrowd.com - пропонуйте 100 PDF-файлів один раз безкоштовно. Плани передплати преміум класу становлять від 9 до 89 доларів. Ціна на 10 000 PDF-файлів щомісяця становить ~ 49,00 доларів.

Я використав всі три з них, і цей текст повинен допомогти кожному прийняти рішення, не платячи за них. Цей текст не був написаний для підтвердження жодного товару, і я не маю приналежності до жодного з продуктів.


Дякую за стружки. Я досліджував усі варіанти цілий день і зосередився більше на вільних, або на купівлі. Ваша відповідь допоможе мені знову зайнятися. Я маю на увазі для малого бізнесу - це рентабельний спосіб і найпростіший спосіб користуватися веб-сервісами. Для pdflayer.com; менше ніж 100 доларів США / рік потрібно 20 або 30 років, щоб вирівняти рівномірність, але я не думаю, що ми поїдемо в той самий світ 20 років пізніше :)
вільнонаймане

12

Якщо у вас є доступ до командного рядка, можна використовувати PhantomJS для створення PDFз URL(віддаленого або локального).

Це працює дуже добре, і це безкоштовне рішення.

Погляньте на цей приклад сценарію, зробленого для цієї точної проблеми.


але у вас можуть виникнути проблеми з шрифтами (веб-шрифтами)
Mihai Crăiță

11

Це питання вже досить старе, але я ще не бачив, щоб хтось згадував CutyCapt, тому я буду :)

CutyCapt

CutyCapt - це невелика утиліта командного рядка з платформою для захоплення веб-сторінки WebKit у різноманітних векторних та растрових форматах, включаючи SVG, PDF, PS, PNG, JPEG, TIFF, GIF та BMP



9

Я не думаю, що клас php стане найкращим для візуалізації сторінки xHtml із css.

Що відбувається, коли вийде нове правило css? (незабаром css 3.0 ...)

Найкращий спосіб візуалізації сторінки HTML - це, очевидно, браузер. Firefox 3.0 може спочатку «друкувати» у форматі PDF, torisugary розробив розширення (друк командного рядка) для його використання. Тут ви знайдете його.

У всякому разі, є ще багато problmes runninr Firefox тільки як конвертер PDF ...

На даний момент я думаю, що wkhtmltopdf найкращий (тобто той, який використовується браузером safari), швидкий, швидкий, приголомшливий. Так, відкритий ресурс також ... Подивіться


PHP корисний, якщо ви хочете вивести якийсь тип офіційної документації, наприклад квитанцію для користувача, і ви можете використовувати CSS, щоб це виглядало красиво.
Люк Венке

9

Я розробив публічний API для створення PDF-файлів із веб-сторінок. Він має хороший клієнтський клас PHP, що робить його супер простим у використанні. Він використовує wkhtmltopdf для візуалізації PDF у хмарі.

Не потрібно нічого особливого в HTML. Немає необхідності в абсолютних URL-адресах у посиланнях images / css / js. Працює і на localhost (Dev machine).

В даний час служба має кінцеві точки в 4 регіонах Лазурного походження: Схід США, Захід США, Північна ЄС, Південно-Східна Азія.

Це швидко, оскільки він використовує фірмовий протокол для надсилання вмісту веб-сторінки в API для перетворення в PDF.

Це надійно, оскільки всі кінцеві точки збалансовані навантаженням.

Безкоштовний акаунт доступний для тестування або низького використання Деталі на веб-сайті:

https://rotativahq.com


8

Можливо, ви можете спробувати використати Tidy, перш ніж передавати файл конвертору. Якщо хтось із рендерінга задається якоюсь проблемою HTML (наприклад, незакритий тег), це може допомогти.


Так, дійсний пункт, але я вже про це думав. У моєму HTML немає неперевершених і нестандартних тегів.
клент

7

Тонка візуалізація нічого не означає. Чи підтверджує це?

Усі браузери роблять все можливе, щоб просто показати щось на екрані, незалежно від того, наскільки вхідний. І звичайно вони не роблять те саме. Якщо ви бажаєте того ж рендерінгу, що і FireFox, ви можете використовувати його механізм візуалізації. Для цього є PDF-генератори. Це дуже жахливо.


7

Хоча вже запропоновано багато рішень, я рекомендую наступні два:

  1. HTM2PDF - пропонує API для перетворення HTML у PDF, а також має PHP SDK, що робить його дуже легким для реалізації у PHP; Він пропонує вибір розташування серверів у Європі, Азії та США
  2. PDFmyURL - пропонує API, який також робить URL-адресу та HTML у форматі PDF, приблизно з такою ж функціональністю, як і HTM2PDF, але працює у врівноваженому ландшафті навантаження та працює трохи довше

Різниця цих двох API від усіх раніше згаданих рішень полягає в тому, що - крім перетворення HTML у PDF у форматі CSS та JavaScript - він також пропонує управління правами PDF, водяний маркування та шифрування. Тому це все-в-одному рішення для тих, хто хоче бігти по землі.

Відмова: Я працюю в Kaiomi, компанії, яка керує обома цими веб-сайтами.


Я б не хотів покладатися на послугу, коли вона продається . Враховуючи той факт, що він був проданий на тому аукціоні, я можу лише припустити, що він буде проданий найближчим часом?
Робін ван Бален

насправді моя компанія придбала його через деякий час після аукціону ....
user1914292

У такому випадку, гадаю, нема про що хвилюватися.
Робін ван Бален

5

Чи дійсно потрібно перетворення HTML у PDF на сервері за допомогою PHP?

Щойно я натрапив на jsPDF , клієнтське рішення, що використовує HTML5 / JavaScript. Ліцензований код MIT також є на GitHub .


для мене бібліотека дуже обмежена
YXN

5

TCPDF працює нормально, немає залежностей, безкоштовний і постійно виправляється помилками. Він має розумну швидкість, якщо наданий вміст HTML / CSS добре відформатований. Я, як правило, генерую 50-300 кБ введення HTML (включаючи CSS) і отримую PDF-висновок протягом 1-3 секунд з 10 - 15 сторінками PDF.

Я настійно рекомендую використовувати акуратну бібліотеку як симпатичний HTML-формат, перш ніж надсилати що-небудь на TCPDF.


4

Я спробував багато різних бібліотек для PHP. Все перераховане я пробував. На мою думку, бібліотека TCPDF є найкращим компромісним виконанням / зручністю використання. Це дуже просто встановити та використовувати, а також хороші показники в невеликому середньому застосуванні. Якщо вам потрібен високопродуктивний та дуже великий документ PDF, використовуйте модуль Zend_PDF , але будьте готові до жорсткого кодування!


Zend PDF не може конвертувати з HTML
Martin Zvarík

3

Веб-API

Якщо є люди, які завжди шукають подібні речі, є безкоштовний веб-сайт, який дозволяє вам конвертувати HTML-код і сторінки в pdf. Також є (дуже маленький) api, який дозволяє отримати файл PDF з URL.

Перевірте це тут


2

не PHP , а бібліотека Java , яка робить таке:

Flying Saucer приймає XML або XHTML та застосовує до нього CSS 2.1-стильові таблиці стилів, щоб передати PDF

Це можна використовувати з PHP через system()або подібний дзвінок. Хоча це вимагає добре сформованості XMLinput .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.