Создание pdf файла из рендера express-handlebars с библиотекой html-pdf, css файлы не работают - PullRequest
0 голосов
/ 20 декабря 2018

Я пытаюсь сгенерировать PDF-файл, который генерируется при рендеринге экспресс-руля.Однако некоторые CSS-файлы, похоже, не работают.

Bootstrap по-прежнему работает нормально, но пользовательский CSS (я использую тему) не работает.Я пробовал конфигурацию phantomjs (--web-security = false, ...), переключая каталог папки css с локального на сервер.Но ни один из них, кажется, не работает.Изображения работают нормально.

генерация HTML и создание PDF-файлов

var config = {
        format: "A4",
        orientation: "landscape",
        base: "http://127.0.0.1:3002/uploads/theme/",
        timeout: 100000, 
        phantomArgs: ["--web-security=false","--local-to-remote-url-access=true"]
    }

    var html = await hbs.render('./views/pdf.handlebars', data)
    await fs.writeFile("pdf.html", html, function(err) {
        if(err) {
            return console.log(err);
        }
    })
    var fileName = uuid.v4()
    await pdf.create(html, config).toFile(`./downloads/${fileName}.pdf`, function (err, res) {
        if (err) return console.log(err);
        response.send({ success: true, data: { downloadURL: fileName } })

, включая CSS-файлы:

<link rel="stylesheet" type="text/css" href="css/style.css">
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="css/animate.min.css">

сервер, получающий вызовы из CSS-файлов:

Imgur

Ожидаемые результаты:

Imgur

Фактический результат:

Imgur

Как видите, bootstrap и font-awesome работают нормально, но «style.css» не работает.У кого-нибудь есть идеи по поводу этой проблемы?Большое спасибо заранее!

...