Кукольник - разные результаты для генерации PDF (локальные [windows] и live [centos])? - PullRequest
0 голосов
/ 16 мая 2018

Я использую Puppeteer для создания PDF со следующей средой разработки:

Локальная среда:

  • Версия Puppeteer: 1.3.0 Платформа / ОС
  • версия: Windows 10 Node.js
  • версия: v8.11.11

Серверная среда:

  • Версия кукловода: 1.3.0
  • Версия платформы / ОС: CentOS Linux выпуск 7.4.1708 (Core)
  • Версия Node.js: v8.11.11

TheПроблема, с которой я сталкиваюсь, заключается в том, что PDF, сгенерированный с сервера, имеет большой размер, а также шрифт не загружается.Результаты представлены в следующих форматах: PDF.

Локальный: fromlocal.pdf

Сервер: fromserver.pdf

Обратите внимание, что приведенный ниже HTML-код копируется из HTML-файла, который я использую для создания PDF (в виде URL).[Я использую URL для page.goto для создания PDF].

<html>
 <body>
 FOOOO <span style="font-family: Impact, Charcoal">impact</span>
 <span style="font-family: 'Courier New', Courier, monospace">courier</span>
 </body>
 </html>

Фрагменты кода следующие:

const config = {
  headless: true,
  ignoreHTTPSErrors: true,
  args: [
    '--no-sandbox',
    '--disable-setuid-sandbox',
    '--disable-dev-shm-usage'
  ],
};
browser = await puppeteer.launch(config);
page = await browser.newPage({ context: 'another-context' });
await page.goto(pageURL, {timeout: 50000,waitUntil: ['domcontentloaded','networkidle0']});
await page.emulateMedia('screen');
const pdfOptions = {
    format,
    pageRanges,
    printBackground:true
}
const pdf = await page.pdf(pdfOptions);

Я что-то отсутствует в среде, явид новичка для Centos (если чего-то не хватает).Пожалуйста, помогите, так как я не могу выяснить, чего здесь не хватает.

Каков ожидаемый результат? Файл PDF, созданный на локальном сервере и на сервере, должен совпадать.Тот же шрифт и размер для того же кода.

Что происходит вместо этого? Сгенерированный PDF сервера больше локального и не загружает PDF.

1 Ответ

0 голосов
/ 17 мая 2018

Шрифты не включены в PDF-файл сервера, поскольку он является сервером Linux и не имеет шрифтов Windows.Согласно этому ответу вы можете установить следующие шрифты:

yum install curl cabextract xorg-x11-font-utils fontconfig
yum install https://downloads.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm

См. Также: http://mscorefonts2.sourceforge.net/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...