Я работаю с PDFKit, чтобы сгенерировать PDF-файл в браузере, а затем отправить данные blob этого PDF-файла на новую вкладку для загрузки пользователем. Мне очень нравится PDFKit ... это довольно пятно.PDFKit Не удается загрузить изображение в браузере
Однако, я бегу на вопрос, когда я пытаюсь и использовать функцию PDFDocument.image()
для «нарисовать» файл изображения:
Uncaught TypeError:
fs.readFileSync
is not a function
Я довольно знакомы с узлом, и таким образом я узнал этот метод подпись сразу - браузер не имеет fs
изначально! Я менее знаком с Browserify и решил использовать pre-built version of PDFKit, чтобы избежать интеграции другой зависимости, с которой я даже не знаком.
Мое единственное догадство заключается в том, что разработчики PDFKit не включили рабочий резерв для использования этой конкретной функции в браузере без Browserify - использовал бы Browserify даже дать мне доступ к модулю fs
(опять же, никогда не использовал его)? Это мой единственный вариант здесь? Я пропустил какой-то конкретный шаг, необходимый для работы этой функции?
В настоящее время я в том числе следующих файлов JS, как зависимости для моего generate_pdf.js
файла:
pdfkit.js
blob-stream.js
Есть ли модуль, который эмулирует fs
, что я нужна? Я не вижу этого документально, но это был долгий день.
Спасибо за предложение! Я не уверен, почему PDFKit использует 'readFileSync' для получения изображения с сервера (я не пытаюсь получить доступ к файловой системе клиента).Я не думаю, что буду катиться самостоятельно. Причина, по которой я делаю это на клиенте, заключается в том, что мне гораздо удобнее JavaScript, чем PHP, и это для сайта WordPress. Я думаю, что я попытаюсь сделать, это запустить простой сервер Node для обработки генерации PDF. –
Ну, вы можете просто создать pdf-файл в процессе nodejs, вызванный с php, скажем, '' exec'' - нет необходимости настраивать сервер;) –