Jadual Kandungan
订单id
12346546
Rumah rangka kerja php Laravel Artikel yang menerangkan cara mengeksport PDF dengan Laravel-snappy

Artikel yang menerangkan cara mengeksport PDF dengan Laravel-snappy

Aug 30, 2021 pm 03:27 PM
pdf

Lajur tutorial Laravel akan memperkenalkan kepada anda cara menggunakan Laravel-snappy untuk mengeksport PDF, saya harap ia dapat membantu rakan yang memerlukan.

Prakata

Terdapat banyak artikel tentang cara menggunakan Laravel-snappy dalam forum, tetapi kebanyakannya hanya menumpukan pada pemasangan dan contoh asas, dan tidak praktikal untuk aplikasi sebenar Tiada penjelasan tentang penggunaan, dan tiada jawapan kepada beberapa soalan dan keraguan, jadi saya akan menyelesaikannya di sini dan menganggapnya sebagai rekod.

Pemasangan

Ambil ubuntu sebagai contoh

1. Jalankan pemasangan wkhtmltopdf:

composer require h4cc/wkhtmltopdf-amd64 0.12.x
composer require h4cc/wkhtmltoimage-amd64 0.12.x
Salin selepas log masuk

Seperti namanya. , pemasangan ialah wkhtmltopdf dan wkhtmltoimage.

2. Salin wkhtmltopdf ke direktori perintah boleh laku ubuntu

sudo cp vendor/h4cc/wkhtmltoimage-amd64/bin/wkhtmltoimage-amd64 /usr/local/bin/
sudo cp vendor/h4cc/wkhtmltopdf-amd64/bin/wkhtmltopdf-amd64 /usr/local/bin/
//并使其可执行:
sudo chmod +x /usr/local/bin/wkhtmltoimage-amd64 
sudo chmod +x /usr/local/bin/wkhtmltopdf-amd64
Salin selepas log masuk

3 Pasang laravel-snappy

composer require barryvdh/laravel-snappy
Salin selepas log masuk

4 🎜>

Barryvdh\Snappy\ServiceProvider::class
Salin selepas log masuk
dalam tatasusunan penyedia dalam app.php 5. Tambahkan Facades pada tatasusunan alias dalam config/app.php

'PDF' => Barryvdh\Snappy\Facades\SnappyPdf::class,
'SnappyImage' => Barryvdh\Snappy\Facades\SnappyImage::class,
Salin selepas log masuk
6 Jalankan fail konfigurasi yang dijana

php artisan vendor:publish --provider="Barryvdh\Snappy\ServiceProvider"
Salin selepas log masuk
Anda boleh melihat bahawa fail konfigurasi lalai ialah config/snappy.php:

return [
    'pdf' => [
        'enabled' => true,
        'binary'  => env('WKHTML_PDF_BINARY', '/usr/local/bin/wkhtmltopdf'),
        'timeout' => false,
        'options' => [],
        'env'     => [],
    ],
    'image' => [
        'enabled' => true,
        'binary'  => env('WKHTML_IMG_BINARY', '/usr/local/bin/wkhtmltoimage'),
        'timeout' => false,
        'options' => [],
        'env'     => [],
    ],
];
Salin selepas log masuk
Perhatikan bahawa terdapat lubang di sini, konfigurasi binari lalai ialah /usr/local/bin/wkhtmltopdf dan /usr/local/bin/wkhtmltoimage, apabila digunakan buat kali pertama, mesej ralat akan dilaporkan bahawa /usr/local/bin/wkhtmltopdf tidak wujud Ini kerana di bawah sistem Linux, laluan dan nama sebenar wkhtmltopdf dan wkhtmltoimage ialah: /usr /local/bin/wkhtmltopdf-amd64 dan /usr/local/bin/wkhtmltoimage-amd64.

Artikel yang menerangkan cara mengeksport PDF dengan Laravel-snappy

Oleh itu, maklumat konfigurasi perlu diubah suai kepada:

'pdf' => [
        ...
        'binary'  => env('WKHTML_PDF_BINARY', '/usr/local/bin/wkhtmltopdf-amd64'),
        ...
    ],
    'image' => [
        ...
        'binary'  => env('WKHTML_IMG_BINARY', '/usr/local/bin/wkhtmltoimage-amd64'),
        ...
    ],
Salin selepas log masuk
Mulakan

//使用方法1
$pdf = \PDF::loadView('welcome', $data);
return $pdf->download('welcome.pdf');
//使用方法2
$html = &#39;<html><head><meta charset="utf-8"></head><h1 id="订单id">订单id</h1><h2 id="">12346546</h2></html>&#39;;
$pdf = \PDF::loadHTML($html);
return $pdf->inline();
Salin selepas log masuk
Banyak blog tidak mention it , dalam kaedah 1, ralat berikut akan dilaporkan:

The exit status code &#39;1&#39; says something went wrong: stderr: "Loading pages (1/6) [> ] 0% [======> ] 10% QSslSocket: cannot resolve CRYPTO_num_locks QSslSocket: cannot resolve CRYPTO_set_id_callback QSslSocket: cannot resolve CRYPTO_set_locking_callback QSslSocket: cannot resolve sk_free QSslSocket: cannot resolve sk_num QSslSocket: cannot resolve sk_pop_free QSslSocket: cannot resolve sk_value QSslSocket: cannot resolve SSL_library_init QSslSocket: cannot resolve SSL_load_error_strings QSslSocket: cannot resolve SSLv3_client_method QSslSocket: cannot resolve SSLv23_client_method QSslSocket: cannot resolve SSLv3_server_method QSslSocket: cannot resolve SSLv23_server_method QSslSocket: cannot resolve X509_STORE_CTX_get_chain QSslSocket: cannot resolve OPENSSL_add_all_algorithms_noconf QSslSocket: cannot resolve OPENSSL_add_all_algorithms_conf QSslSocket: cannot resolve SSLeay QSslSocket: cannot call unresolved function CRYPTO_num_locks QSslSocket: cannot call unresolved function CRYPTO_set_id_callback QSslSocket: cannot call unresolved function CRYPTO_set_locking_callback QSslSocket: cannot call unresolved function SSL_library_init QSslSocket: cannot call unresolved function SSLv23_client_method QSslSocket: cannot call unresolved function sk_num [==================> ] 31% QSslSocket: cannot call unresolved function SSLv23_client_method QSslSocket: cannot call unresolved function SSL_library_init [============================================================] 100% Counting pages (2/6) [============================================================] Object 1 of 1 Resolving links (4/6) [============================================================] Object 1 of 1 Loading headers and footers (5/6) Printing pages (6/6) [> ] Preparing [============================================================] Page 1 of 1 Done Exit with code 1 due to network error: UnknownNetworkError QSslSocket: cannot call unresolved function CRYPTO_num_locks QSslSocket: cannot call unresolved function CRYPTO_set_id_callback QSslSocket: cannot call unresolved function CRYPTO_set_locking_callback " stdout: "" command: /usr/local/bin/wkhtmltopdf-amd64 --lowquality &#39;/tmp/knp_snappy612c3edcdfc855.21787864.html&#39; &#39;/tmp/knp_snappy612c3edcdfce49.80482557.pdf&#39;.
Salin selepas log masuk
Pelaksanaan:

sudo apt-get update
sudo apt install libssl1.0-dev
Salin selepas log masuk
Pembaikan selesai dan halaman selamat datang dieksport.

Jika anda menggunakan kaedah save () untuk menyimpan, ia akan disimpan ke folder /public secara lalai Jika nama fail adalah sama, simpan kedua akan meminta bahawa fail itu sudah wujud.

Atas ialah kandungan terperinci Artikel yang menerangkan cara mengeksport PDF dengan Laravel-snappy. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Akan R.E.P.O. Ada Crossplay?
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk membenamkan dokumen PDF dalam lembaran kerja Excel Bagaimana untuk membenamkan dokumen PDF dalam lembaran kerja Excel May 28, 2023 am 09:17 AM

Ia biasanya perlu untuk memasukkan dokumen PDF ke dalam lembaran kerja Excel. Sama seperti senarai projek syarikat, kami boleh menambahkan data teks dan aksara pada sel Excel dengan serta-merta. Tetapi bagaimana jika anda ingin melampirkan reka bentuk penyelesaian untuk projek tertentu pada baris data yang sepadan? Nah, orang sering berhenti dan berfikir. Kadang-kadang berfikir juga tidak berfungsi kerana penyelesaiannya tidak mudah. Gali lebih dalam artikel ini untuk mengetahui cara memasukkan berbilang dokumen PDF dengan mudah ke dalam lembaran kerja Excel, bersama-sama dengan baris data yang sangat khusus. Contoh Senario Dalam contoh yang ditunjukkan dalam artikel ini, kami mempunyai lajur yang dipanggil ProductCategory yang menyenaraikan nama projek dalam setiap sel. Satu lagi lajur ProductSpeci

Bagaimana untuk menggabungkan PDF pada iPhone Bagaimana untuk menggabungkan PDF pada iPhone Feb 02, 2024 pm 04:05 PM

Apabila bekerja dengan berbilang dokumen atau berbilang halaman dokumen yang sama, anda mungkin mahu menggabungkannya ke dalam satu fail untuk dikongsi dengan orang lain. Untuk perkongsian mudah, Apple membenarkan anda menggabungkan berbilang fail PDF ke dalam satu fail untuk mengelakkan penghantaran berbilang fail. Dalam siaran ini, kami akan membantu anda mengetahui semua cara untuk menggabungkan dua atau lebih PDF ke dalam satu fail PDF pada iPhone. Cara Menggabungkan PDF pada iPhone Pada iOS, anda boleh menggabungkan fail PDF menjadi satu dalam dua cara – menggunakan apl Fail dan apl Pintasan. Kaedah 1: Gunakan apl Fail Cara paling mudah untuk menggabungkan dua atau lebih PDF ke dalam satu fail ialah menggunakan apl Fail. Buka pada iPhone

3 Cara Mendapatkan Teks daripada PDF pada iPhone 3 Cara Mendapatkan Teks daripada PDF pada iPhone Mar 16, 2024 pm 09:20 PM

Ciri Teks Langsung Apple mengecam teks, nota tulisan tangan dan nombor dalam foto atau melalui aplikasi Kamera dan membolehkan anda menampal maklumat tersebut pada mana-mana aplikasi lain. Tetapi apa yang perlu dilakukan apabila anda bekerja dengan PDF dan ingin mengekstrak teks daripadanya? Dalam siaran ini, kami akan menerangkan semua cara untuk mengekstrak teks daripada fail PDF pada iPhone. Cara Mendapatkan Teks daripada Fail PDF pada iPhone [3 Kaedah] Kaedah 1: Seret Teks pada PDF Cara paling mudah untuk mengekstrak teks daripada PDF adalah dengan menyalinnya, sama seperti pada mana-mana apl lain dengan teks . 1. Buka fail PDF yang ingin anda ekstrak teks, kemudian tekan lama di mana-mana pada PDF dan mula menyeret bahagian teks yang ingin anda salin. 2

Bagaimana untuk mengesahkan tandatangan dalam PDF Bagaimana untuk mengesahkan tandatangan dalam PDF Feb 18, 2024 pm 05:33 PM

Kami biasanya menerima fail PDF daripada kerajaan atau agensi lain, sesetengahnya dengan tandatangan digital. Selepas mengesahkan tandatangan, kami melihat mesej SignatureValid dan tanda semak hijau. Sekiranya tandatangan tidak disahkan, kesahihannya tidak diketahui. Mengesahkan tandatangan adalah penting, mari lihat cara melakukannya dalam PDF. Cara Mengesahkan Tandatangan dalam PDF Mengesahkan tandatangan dalam format PDF menjadikannya lebih boleh dipercayai dan dokumen lebih cenderung untuk diterima. Anda boleh mengesahkan tandatangan dalam dokumen PDF dengan cara berikut. Buka PDF dalam Adobe Reader Klik kanan tandatangan dan pilih Show Signature Properties Klik butang Tunjukkan Sijil Penandatangan Tambah tandatangan pada senarai Sijil Dipercayai daripada tab Amanah Klik Sahkan Tandatangan untuk melengkapkan pengesahan Biarkan

Bagaimana untuk memproses fail PDF menggunakan PHP Bagaimana untuk memproses fail PDF menggunakan PHP Jun 19, 2023 pm 02:41 PM

Sebagai format fail universal, fail PDF digunakan secara meluas dalam pelbagai senario aplikasi, seperti e-buku, laporan, kontrak, dsb. Semasa proses pembangunan, kita selalunya perlu menjana, mengedit, membaca dan operasi lain pada fail PDF. Sebagai bahasa skrip, PHP juga boleh menyelesaikan tugasan ini dengan mudah. Artikel ini akan memperkenalkan cara menggunakan PHP untuk memproses fail PDF. 1. Jana fail PDF Terdapat banyak cara untuk menjana fail PDF, yang paling biasa ialah menggunakan perpustakaan PDF. Pustaka PDF ialah alat yang menjana dokumen PDF untuk

Bagaimana untuk menukar fail pdg kepada pdf Bagaimana untuk menukar fail pdg kepada pdf Nov 14, 2023 am 10:41 AM

Kaedah termasuk: 1. Gunakan alat penukaran dokumen profesional 2. Gunakan alat penukaran dalam talian 3. Gunakan pencetak maya.

Cara mengimport dan menganotasi PDF dalam Apple Notes Cara mengimport dan menganotasi PDF dalam Apple Notes Oct 13, 2023 am 08:05 AM

Dalam iOS 17 dan MacOS Sonoma, Apple menambah keupayaan untuk membuka dan menganotasi PDF terus dalam apl Nota. Baca terus untuk mengetahui cara ia dilakukan. Dalam versi terkini iOS dan macOS, Apple telah mengemas kini apl Nota untuk menyokong PDF sebaris, yang bermaksud anda boleh memasukkan PDF ke dalam Nota dan kemudian membaca, memberi anotasi dan bekerjasama pada dokumen tersebut. Ciri ini juga berfungsi dengan dokumen yang diimbas dan tersedia pada kedua-dua iPhone dan iPad. Menganotasi PDF dalam Nota pada iPhone dan iPad Jika anda menggunakan iPhone dan ingin menganotasi PDF dalam Nota, perkara pertama yang perlu dilakukan ialah memilih fail PDF

Bagaimana untuk mengeksport fail xmind ke fail pdf Bagaimana untuk mengeksport fail xmind ke fail pdf Mar 20, 2024 am 10:30 AM

xmind adalah perisian pemetaan minda yang sangat praktikal Ia adalah bentuk peta yang dibuat menggunakan pemikiran dan inspirasi orang Selepas kami membuat fail xmind, kami biasanya menukarnya ke dalam format fail pdf untuk memudahkan penyebaran dan penggunaan semua orang ke fail pdf? Di bawah adalah langkah-langkah khusus untuk rujukan anda. 1. Mula-mula, mari kita tunjukkan cara mengeksport peta minda ke dokumen PDF. Pilih butang fungsi [Fail]-[Eksport]. 2. Pilih [dokumen PDF] dalam antara muka yang baru muncul dan klik butang [Seterusnya]. 3. Pilih tetapan dalam antara muka eksport: saiz kertas, orientasi, resolusi dan lokasi penyimpanan dokumen. Selepas melengkapkan tetapan, klik butang [Selesai]. 4. Jika anda klik butang [Selesai].

See all articles