- dom-to-pdf
- Install
- Usage
- Options
- Support
- MIT License
- Конвертируем HTML в PDF при помощи Dompdf
- Приступаем к работе
- Продвинутое использование
- Подведем итоги
- Saved searches
- Use saved searches to filter your results more quickly
- License
- EmilyMew/dom-pdf
- Name already in use
- Sign In Required
- Launching GitHub Desktop
- Launching GitHub Desktop
- Launching Xcode
- Launching Visual Studio Code
- Latest commit
- Git stats
- Files
- README.md
- About
dom-to-pdf
dom-to-pdf generates a printable PDF from DOM node using HTML5 canvas and svg.
Install
npm install --save dom-to-pdf
Usage
var domToPdf = require('dom-to-pdf'); var element = document.getElementById('test'); var options = filename: 'test.pdf' >; domToPdf(element, options, function(pdf) console.log('done'); >);
Options
- filename — string, name of resulted PDF file, default name is generated.pdf
- excludeClassNames — array of strings, list of class names of elements to exclude from PDF, e.g. [‘Loading’, ‘ExcludeMeFromPdf’]
- excludeTagNames — array of strings, list of html tags to exclude from PDF, e.g. [‘button’, ‘input’, ‘select’]
- overrideWidth — number, overrides a width of a container DOM element
- proxyUrl — string, e.g. /api/proxyImage?url= , a route in your app which renders images on your domain in order to avoid problems with CORS with the images on a DOM
- compression — string, compression of the generated image, can have the values ‘NONE’, ‘FAST’, ‘MEDIUM’ and ‘SLOW’. (default is ‘NONE’)
- scale — number, increases an image’s size before exporting to improve the image quality
Support
MIT License
Copyright (c) 2023 Osman Mazinov
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the «Software»), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED «AS IS», WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Конвертируем HTML в PDF при помощи Dompdf
PDF — формат, ставший уже стандартом. Он был изначально создан Adobe для представления текста и изображений в документе с фиксированной структурой. Давно не редкость для веб-приложений, поддерживающих скачку данных, таких как счета или отчеты, отдавать их в PDF формате. Так что в этой статье мы пройдем простую генерацию PDF документов используя PHP.
Dompdf — это отличная библиотека, способная генерировать PDF из HTML-разметки и CSS-стилей (в большинстве случаев это стили, совместимые с CSS 2.1 с поддержкой некоторых свойств CSS3). Мы можем определить, как наше содержимое должно выглядеть, используя эти знакомые технологии, и после легко конвертировать его в фиксированный документ. Также эта библиотека имеет и другие полезные и интересные функции.
Приступаем к работе
Dompdf доступен на GitHub и может быть установлен используя Composer. Установка через Composer без каких-либо ошибок часто вызывает трудности, поэтому я рекомендую просто использовать Git для установки Dompdf.
Библиотека требует PHP >= 5.0 с активированными расширениями mbstring и DOM. Также она требует несколько шрифтов, которые обычно доступны на большинстве компьютеров.
Перейдите в директорию, куда собираетесь установить библиотеку и выполните в командной строке:
git clone https://github.com/dompdf/dompdf.git git submodule init git submodule update
Как только мы скачали Dompdf, давайте напишем короткий пример, который сгенерирует простой PDF документ:
Hello Dompdf