Показать сообщение отдельно
  #3 (permalink)  
Старый 13.12.2018, 18:55
Аватар для SuperZen
Профессор
Отправить личное сообщение для SuperZen Посмотреть профиль Найти все сообщения от SuperZen
 
Регистрация: 08.11.2017
Сообщений: 642

Скачать https://nodejs.org/en/

Создать папку, в ней создать два файла:

package.json
{
  "name": "puppeteer_pdf",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT",
  "dependencies": {
    "puppeteer": "^1.11.0"
  }
}


index.js
const puppeteer = require('puppeteer')
const { join } = require('path')
const htmlFile = 'html.html'
const pdfFile = 'html.pdf'
const job = async () => {
  const browser = await puppeteer.launch()
  const page = await browser.newPage()
  await page.setViewport({
    width: 1024,
    height: 800,
    // landscape: true,
  })
  await page.goto(`file:${join(__dirname, htmlFile)}`, { waitUntil: 'networkidle2' })
  // форматы "Letter", "Legal", "Tabload", "Ledger", "A0", "A1", "A2", "A3", "A4", "A5"
  await page.pdf({ path: pdfFile, format: 'A4', landscape: true })
  await browser.close()
}
job()


в этой папке выполнить две команды:
npm install
node index.js

должен появиться pdf из файла html %)

Последний раз редактировалось SuperZen, 13.12.2018 в 19:45.
Ответить с цитированием