Без качване, 100% локално, без акаунт

HTML към PDF

Поставете HTML, изберете размер на страницата и изтеглете PDF, всичко се изобразява в браузъра.

Как работи HTML към PDF

HTML to PDF взема HTML маркиране, поставено в редактора, почиства го с DOMPurify за премахване на скриптове и опасни атрибути, рендира го върху скрит canvas с html2canvas и го кодира в PDF с jsPDF. Целият тръбопровод се изпълнява в раздела на браузъра ви; никакъв HTML код или рендиран изход не се предава на сървър. Това го прави подходящ за конвертиране на HTML фрагменти, съдържащи лични данни, които не бихте искали да поставяте в онлайн услуга.

Разберете изходния формат, преди да разчитате на него. Страниците на PDF са растерни изображения, а не векторен текст. Текстът в изходния файл не може да бъде избиран, търсен или пренареждан. Външни ресурси като изображения, препращани чрез URL, са блокирани от CORS политиката на браузъра и няма да се заредят. Вградените стилове и CSS работят, но сложните оформления с персонализирани уеб шрифтове или разширен CSS grid може да не се рендират точно. За вярно на документа конвертиране на пълни уеб страници, браузър без глава, работещ на сървърна страна, е по-подходящият инструмент.

Как да използвате HTML към PDF, стъпка по стъпка

  1. Поставете HTML маркирането в зоната за редактор.
  2. По желание регулирайте размера на страницата (A4 или Letter) и ориентацията.
  3. Натиснете convert; DOMPurify почиства HTML, а html2canvas го рендира.
  4. Изчакайте jsPDF да кодира изхода на canvas като PDF страници.
  5. Изтеглете PDF.

Често срещани приложения

  • Генерирахте HTML фактура в браузъра от локален шаблон и искате PDF копие без да го изпращате по имейл до услуга за конвертиране.
  • Прост HTML отчет, изграден от API данни, трябва да бъде записан като PDF за архивиране; поставете HTML и конвертирайте локално.
  • Написахте стилизиран HTML шаблон за имейл и искате да видите как ще изглежда отпечатан като PDF.
  • Разработчик се нуждае от бърз PDF от HTML фрагмент по време на тестване, без да настройва браузър без глава на сървърна страна.

Често задавани въпроси

Защо текстът в изходния PDF не може да бъде избиран?

Тръбопроводът за конвертиране рендира HTML в битмап на canvas с html2canvas, след което кодира битмапа като данни от изображение в страниците на PDF с jsPDF. Изходният файл е растеризирано изображение, а не текстов слой. Ако ви трябва PDF с избираем текст, ще ви е необходим браузър без глава на сървърна страна като Puppeteer, който инструментът намеренно избягва, за да запази обработката локална.

Защо изображенията в HTML ми не се появяват в PDF?

Изображенията, заредени от външни URL адреси, са обект на CORS политиката на браузъра. Ако сървърът на изображения не изпраща разрешителни CORS заглавки, html2canvas не може да прочете пикселните данни и слотът на изображението остава празен. Вградените изображения в base64, директно вградени в HTML, или изображенията от същия произход работят без това ограничение.

Изпраща ли се HTML, поставен от мен, до сървър?

Не. HTML остава в паметта на браузъра през цялото време. DOMPurify го почиства от страната на клиента, html2canvas го рендира от страната на клиента, а jsPDF кодира PDF от страната на клиента. Нищо не напуска раздела на браузъра.

Какво премахва санирането от DOMPurify?

DOMPurify премахва тагове за скрипт, атрибути на обработчици на събития като onclick и onload, javascript: URL адреси и други конструкции, способни да изпълняват код. Той запазва структурното и стиловото маркиране, така че рендираният изход изглежда по същия начин, но е безопасен за вмъкване в контекст на документ.

Мога ли да конвертирам пълен URL адрес на уеб страница вместо да поставям HTML?

Не. Инструментът работи с HTML маркиране, поставено директно. Зареждането на URL адрес би изисквало извличане на страницата, което попада в CORS ограничения за повечето сайтове и би включило мрежова заявка, изнасяща операцията извън локалния модел на обработка.