Размер файла PDFTron html2pdf 0 КБ

#pdf-generation #node-modules #html2pdf #hapi #pdftron

#генерация pdf #узел-модули #html2pdf #hapi #pdftron

Вопрос:

У меня есть @pdftron модуль node, установленный в приложении test Node (Hapi) на моем Mac. Я пытаюсь сгенерировать PDF-файл из HTML-строки, но сохраненный файл имеет размер 0 КБ. Я пробовал это двумя способами:

  • Путем реализации примера кода в обработчике GET для маршрута, настроенного в index.js
  • Запустив примеры сценариев, которые установлены на node_modules/@pdftron/pdfnet-node/samples/HTML2PDFTest/NODEJS/HTML2PDFTest.js

В обоих случаях все новые сохраненные PDF-файлы имеют размер 0 КБ, а все существующие PDF-файлы, которые должны быть изменены процессом, остаются неизменными.

Я проверил, что html2pdf путь к библиотеке модуля задан правильно.

Следующий код обработчика маршрута соответствует примеру кода, предоставленному PDFTron.

 server.route({
    method: 'GET',
    path: '/pdftron/html',
    handler: (request, h) => {

        const { PDFNet } = require('@pdftron/pdfnet-node/lib/pdfnet.js')

        const main = async () => {
            await PDFNet.initialize()
            await PDFNet.HTML2PDF.setModulePath('node_modules/@pdftron/pdfnet-node/lib')
            const output_path = '/tmp/'

            try {

                const html2pdf = await PDFNet.HTML2PDF.create();
                const doc = await PDFNet.PDFDoc.create();
                const html = '<html><body><h1>Heading</h1><p>Paragraph.</p></body></html>'
        
                html2pdf.insertFromHtmlString(html);
                await html2pdf.convert(doc);
                doc.save(output_path.concat('pdf2html.pdf'), PDFNet.SDFDoc.SaveOptions.e_linearized);

            } catch (err) {
                console.log(err)
            }

        }
    
        PDFNet.runWithCleanup(main, 0).then(function () { PDFNet.shutdown(); })
        return 'PDF2HTML Test'
    }
})

  

Любые мысли / предложения будут высоко оценены.

Комментарии:

1. Недавно я использовал puppeteer пакет для преобразования html2pdf, и у меня это отлично сработало

2. Спасибо, мы пробовали это, но не хотим использовать headkess Chrome и использовать скриншоты. Нам нужно больше контроля, а также соответствие требованиям PDF / A.

3. pdftron, я думаю, не бесплатный

4. Это не проблема

5. обратитесь за поддержкой к компании

Ответ №1:

Обновление по этому поводу — я получил отзыв от PDFTron, в котором говорилось, что в настоящее время существует проблема с текущей стабильной версией сборки Mac OS и что они решают ее.

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