Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk melaksanakan fungsi pratonton fail pdf applet WeChat berdasarkan PHP
(Tutorial disyorkan: Tutorial video PHP)
Beberapa masa lalu, jenis perpustakaan Applet WeChat Saya menghadapi masalah semasa pembangunan, iaitu untuk melihat pratonton fail PDF dalam Alibaba Cloud OSS dalam program mini. Terdapat hanya satu penyelesaian rasmi yang disediakan oleh WeChat, iaitu untuk cache dokumen secara tempatan dan kemudian membukanya dengan pengurus sumber.
Masalah menulis dengan cara ini adalah jelas . Dan saya hanya perlu pratonton beberapa halaman pertama, dan saya juga perlu cache semua dokumen dan membukanya dalam penjelajah fail. Pengalaman yang sangat teruk.
Pilihan 1: Gunakan paparan web program mini untuk pratonton pada halaman web. Pengalaman masih okey, tetapi masalah yang dihadapi ialah masalah merentas domain tidak dapat diselesaikan.
Pilihan 2: pdf.js. Banyak penyelesaian di Internet mengatakan untuk menggunakan ini dan menulis halaman statik pada pelayan untuk pratonton. Dengan penyelesaian ini, tidak mengapa jika fail pdf berada pada pelayan nama domain anda sendiri. Walau bagaimanapun, jika fail berada dalam oss pihak ketiga, anda masih akan menghadapi masalah merentas domain. Selain itu, program mini dalam talian akan mengeluarkan gesaan lompat. Dokumen pdf.js sukar dibaca, dengan pelbagai isu keserasian dan masalah tidak diketahui yang tidak dapat diramalkan.
Pilihan 3: Tukar fail pdf kepada imej, applet hanya memuatkan imej yang sepadan. Penyelesaian ini adalah yang paling sempurna, tetapi ia lebih sesuai untuk pembangun back-end pascasiswazah. Bahagian belakang kami terlalu menyusahkan, jadi saya tiada pilihan selain memperbaikinya. Saya hanya boleh melakukannya sendiri.
Lulus pautan fail pdf untuk dipratonton dan bilangan halaman yang akan dipratonton ke bahagian belakang. Bahagian belakang menghuraikan fail pdf mengikut parameter yang diluluskan dan mengembalikan halaman yang diperlukan sebagai gambar.
Selepas menentukan nombor halaman yang sepadan melalui parameter p, gambar nombor halaman yang sepadan akan dipaparkan di sebelah kiri.
wget https://netix.dl.sourceforge.net/project/imagemagick/im7-src/ImageMagick-7.0.7-25.tar.gz tar -zxvf ImageMagick-7.0.7-25.tar.gz cd ImageMagick-7.0.7-25 ./configure make && make install
Operasi yang sepadan bagi lima arahan ialah: Muat turun, ekstrak, buka direktori , konfigurasikan, susun dan pasang
Anda juga boleh menyusun dan memasangnya, ini ialah Abaikan buat masa ini.
wget https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs925/ghostscript-9.25.tar.gz tar zxvf ghostscript-9.25.tar.gz cd ghostscript-9.25 ./configure --prefix=/usr make && make install
Operasi yang sepadan bagi lima arahan itu ialah: muat turun, nyahmampat, buka direktori, konfigurasi, susun dan pasang
echo "/usr/local/lib" >> /etc/ld.so.conf ldconfig
<?php try{ $url = !empty($_GET['url']) ? $_GET['url'] : die('error'); $page = isset($_GET['p']) ? $_GET['p']-1 : '0'; $file_name = 'temp_' . mt_rand(1000,9999) . 'pdf'; file_put_contents( './'.$file_name,file_get_contents($url)); $imagePreview = new imagick('./'. $file_name . '['.$page.']'); $imagePreview->setImageFormat( "jpg" ); // $imagePreview->setResolution( 900, 900 ); header( "Content-Type: image/jpeg" ); echo $imagePreview; unlink('./'. $file_name); }catch(\Exception $e){ echo '发生错误'; }
Nota: Laluan fail pdf boleh jadi itu pelayan anda sendiri, atau anda boleh melaraskannya sendiri.
(Tutorial disyorkan: Tutorial video PHP)
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan fungsi pratonton fail pdf applet WeChat berdasarkan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!