Код состояния выхода Laravel Snappy PDF 127

Я пытаюсь распечатать файл HTML в PDF для бумажных и файловых целей моего проекта в Laravel. Я попытался использовать barryvdh / laravel-snappy, поэтому внимательно следил за документацией и также установил этот wkhtmltopdf для ubuntu 16.04 64x bit, потому что я думаю, что он необходим для использования этого пакета. Но есть большая проблема. Когда я создаю образец PDF с помощью Snappy, он дает мне эту ошибку.

введите здесь описание изображения

Что-то не так с установкой моего wkhtmltopdf? или это проблема каталога? Я попытался выполнить sudo chmod -R 777 usr / bin / wkhtmltopdf, но все равно получил ту же ошибку.

Я также перешел по этой этой ссылке чтобы выручить меня. Но оказался в той же ошибке.

Нужна помощь. Заранее спасибо.

Кстати, я использую 64-разрядную версию Ubuntu 17.10.

версия wkhtmltodf - 0.12.3.2


person Jaaayz    schedule 16.02.2018    source источник
comment
Так где же ваш исполняемый файл? Попробуйте which wkhtmltopdf. Код 127 означает, что такой команды нет. Как видите, скрипт пытается запустить /usr/local/bin/wkhtmltopdf-amd64. А зачем ставили глобально? Есть потрясающий, статически связанный двоичный файл wkhtmltopdf, доступный для установки с помощью Composer.   -  person emix    schedule 16.02.2018


Ответы (3)


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

https://github.com/barryvdh/laravel-dompdf

Если вы столкнулись с какой-либо проблемой при использовании этого плагина, спросите меня, я обязательно вам помогу.

Например, убедитесь, что вы установили и настроили этот пакет, как указано в документе, а также не забудьте выполнить приведенную ниже команду после установки и настройки этого пакета.

php artisan vendor:publish --provider="Barryvdh\DomPDF\ServiceProvider"

затем попробуйте использовать приведенный ниже код:

$date = Carbon::now()->format('j F, Y');
data = ['date'=>$date];
$pdf =  PDF::loadView('admin.pages.application', $data)->setPaper('a4');

return $pdf->download('download.pdf');
person Prashant Prajapati    schedule 16.02.2018
comment
Могу ли я также сначала вернуть это изображение в формате PDF в моем браузере, прежде чем загружать его? это ведь DomPDF? - person Jaaayz; 16.02.2018
comment
да, это dompdf. вы также можете вернуть представление, используя этот код: return view ('admin.pages.application') - ›with ($ data); ИЛИ вернуть $ pdf- ›stream ('download.pdf'); - person Prashant Prajapati; 16.02.2018
comment
Я использую этот пакет, но Bootstrap и мои пользовательские файлы css не работают. - person Bangash; 26.11.2020

на моем Ubuntu 20.04 мне пришлось установить еще несколько зависимостей, чтобы он работал

Отредактируйте этот файл /etc/apt/sources.list и добавьте эту строку в его конец: deb http://security.ubuntu.com/ubuntu bionic-security main

После этого запустить: sudo apt update && apt-cache policy libssl1.0-dev

Наконец: sudo apt-get install libssl1.0-dev

И закончить: sudo apt-get install libxrender1

person Douglas Hosea    schedule 23.03.2021

Пожалуйста, дайте разрешение 777 для папки поставщика, а затем проверьте его

person Hetal    schedule 16.02.2018