Рубрики
Uncategorized

Laravel использует пакеты расширений для создания PDF-файлов

Автор оригинала: David Wong.

Представил

Существует множество расширений для PDF. На этот раз выбран DOMPDF. Вот конкретные операции. Код смотрит на GitHub.

Установка и настройка композитора

Все еще устанавливайте с помощью composer, согласно документу

  1. реализовать композитору требуется barryvdh/ laravel -dompdf
  2. Далее идет служба регистрации, в config/app. php Добавить в Barryvdh\DomPDF\Поставщик услуг::класс, Следующим образом
  1. Добавление фасадов также находится в config/app.php Добавить в 'PDF' => Barryvdh\DomPDF\Фасад::класс, Следующим образом
  1. После вышеуказанных трех шагов его можно использовать в обычном режиме. Для того, чтобы удобно изменить конфигурацию, вы можете config Создать файл конфигурации в каталоге, выполнить поставщик php artisan:опубликовать После успеха вы можете увидеть config/dompdf.php Файл конфигурации. В соответствии с их собственными потребностями для модификации, но также поддерживает динамическую модификацию.

Воспользуйся

После определения маршрута проверяется новый контроллер. Согласно официальным документам, вы можете использовать Приложение::make('dompdf.обертка') возможно PDF Создан экземпляр фасада, эффект тот же, используйте внимание фасада используйте PDF

Используйте первый пример в документе

$pdf = App::make('dompdf.wrapper');
$pdf - > Load HTML ('< H1 > Test '); // Generate PDF from HTML code
return $pdf->stream();

Эффект заключается в следующем

Давайте попробуем второй пример в документе.

$pdf = PDF:: loadView ('pdf', ['date'=> date ('Y-m-d')]; //Generate PDF from view file
Return $pdf - > Download ('date. pdf'); // parameter is file name

После открытия ссылки вы можете скачать имя дата.pdf Документ гласит следующее

Выше используются load HTML() и load View() Два метода, основанные на HTML-коде и генерации представлений. Используйте LoadFile() Давайте попробуем.

$file = storage_path('app/public/pdf/name.html');
$pdf = PDF::loadFile($file);
return $pdf->stream();

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

return PDF::loadView('pdf', ['date' => date('Y-m-d')])->save(storage_path('app/public/pdf/date.pdf'))->stream('date.pdf');

Ссылка: DOMPDF.