prelaunchX Invitation

Kamis, 31 Mei 2012

Memmbuat dokumen pdf mengguakan php


Portable Document Format (PDF) adalah format file yang dibuat oleh Adobe Systems pada tahun 1993 untuk pertukaran dokumen. PDF digunakan untuk merepresentasikan dokumen dua dimensi dengan cara yang independen dari perangkat lunak aplikasi, perangkat keras, dan sistem operasi.
PDF adalah format dokumen yang diterima secara umum sehingga kita mungkin perlu untuk membuat dokumen PDF secara dinamis. Kita bisa membuat dokumen PDF dengan PHP. Banyak perpustakaan generasi PDF PHP yang tersedia. TCPDF dan EZPDF adalah dua perpustakaan opensource yang baik yang memungkinkan kita untuk membuat dokumen PDF secara dinamis.

1) EZPDF
EZPDF adalah library cepat dan mudah digunakan yang dikembangkan oleh R & OS Ltd
1.1) Membuat dokumen PDF dengan menggunakan EZPDF
Kami membutuhkan 2 file php "class.ezpdf", "class.pdf" dan font (dalam. AFM) format. Anda bisa mendapatkan file-file dari http://www.ros.co.nz/pdf/
1,2) Langkah
1) Download file dari http://www.ros.co.nz/pdf/ dan ekstrak ke direktori aplikasi web kita.
2) Sertakan "class.ezpdf.php" ke halaman kami.
3) Buat objek Cezpdf oleh $ pdf = & Cezpdf baru ();
4) Mengatur font yang dibutuhkan.
5) Cetak konten kami dari dokumen menggunakan fungsi eZpdf.
6) Output / Simpan file PDF.
Contoh Program
  <? Php
 selectFont ('/ aset / perpustakaan / pdf / fonts / Helvetica.afm');
 $ Pdf -> ezText ('Halo .. Ini adalah file PDF sameple!', 50);
 $ Pdf -> ezStream ();
 ?>
Kita dapat memformat / desain dokumen dengan menggunakan metode kelas Ezpdf itu. Anda dapat mengatur margin, font, ukuran font, warna, dll posisi menggunakan fungsi. Kami menambahkan gambar, link, menggambar bentuk seperti garis, kurva, dll poligon ke dokumen dan kita dapat mengatur gaya perbatasan juga. Fitur lain yang baik dari kelas ini adalah dukungan untuk membuat tabel, kita dapat mengatur orientasi, lebar, warna, kesenjangan baris, kolom dll kesenjangan Kita dapat mengenkripsi dokumen dan menulis ke disk jika kita inginkan.
Ezpdf adalah sangat mudah digunakan perpustakaan PHP untuk membuat file PDF secara dinamis. Karena opensource, Anda dapat memperpanjang baseclass untuk mengubah / menambahkan metode.
1,3) Fitur
  • Ringan
  • Mudah dan sederhana
  • Cepat
  • Opensource
  • Otomatis halaman istirahat
  • Dukungan untuk menambahkan / pengaturan tabel, gambar, link, bentuk, fize, warna dll
1,4) Keterbatasan
  • Doesnot mendukung UTF-8 Unicode dan kanan Untuk Kiri-bahasa.
  • Tidak ada metode untuk mempublikasikan (x) kode HTML
2) tcpdf
TCPDF adalah gratis dan open source software populer PHP kelas untuk menghasilkan dokumen PDF. TCPDF saat ini perpustakaan berbasis PHP yang hanya menyertakan dukungan lengkap untuk UTF-8 Unicode bahasa dan Hak-Untuk-Kiri
TCPDF mendukung semua format halaman ISO dan format halaman kustom, margin adat dan Satuan ukuran, UTF-8 Unicode, bahasa RTL, HTML, barcode, TrueTypeUnicode, TrueType, OpenType, Type1, dan CID-0 font, gambar, fungsi grafis, kliping , bookmark, JavaScript, formulir, halaman kompresi, tanda tangan digital, dan enkripsi.
2,1) Langkah-langkah untuk membuat file PDF menggunakan TCPDF
  1. Sertakan file configaration dan file kelas halaman.
  2. Mengatur font, dll marjin
  3. Cetak konten ke file pdf
  4. Output file pdf.


Contoh Program
  <? Php
         setPrintHeader (false);
         $ Pdf -> setPrintFooter (false);
         / / Set default font monospace
         $ Pdf -> SetDefaultMonospacedFont (PDF_FONT_MONOSPACED);
         / / Set margin
         $ Pdf -> SetMargins (15, 15, 15);
         / / Set auto halaman istirahat
         $ Pdf -> SetAutoPageBreak (TRUE, PDF_MARGIN_BOTTOM);
         / / Set beberapa tergantung pada bahasa string
         $ Pdf -> setLanguageArray ($ l);
         / / Set font yang
         $ Pdf -> setfont ('kali', 'BI', 16);
         / / Menambahkan halaman
         $ Pdf -> AddPage ();
         $ Htmlcontent = 'Halo .. Ini adalah file PDF sameple!'.;
         $ Pdf -> writeHTML ($ htmlcontent, benar, 0, true, 0);
         $ Pdf -> Output ('myPdfExample.pdf', 'saya');
         exit;
 ?>;
2.2) Fitur
  • mendukung semua format halaman ISO;
  • mendukung UTF-8 Unicode bahasa dan Hak-Untuk-Kiri;
  • mendukung TrueTypeUnicode, OpenTypeUnicode, TrueType, OpenType, Type1 dan CID-0 font;
  • mendukung enkripsi dokumen;
  • termasuk metode untuk mempublikasikan (x) kode HTML;
  • termasuk metode grafis (geometris) dan transformasi;
  • termasuk dukungan Javascript dan bentuk;
  • termasuk metode untuk mencetak format barcode berbagai: KODE 39, ANSI MH10.8M-1983, USD-3, 3 dari 9, CODE 93, USS-93, Standar 2 dari 5 Interleaved 2 dari 5, KODE 128 A / B / C, 2 dan 5 Digit UPC Berbasis Ekstensi, EAN 8, EAN 13, UPC-A, UPC-E, MSI, POSTNET, PLANET, RMS4CC (Royal Mail 4-negara Kode Pelanggan), CBC (Customer Bar Code), KIX (Klant indeks - indeks Pelanggan), Mail Barcode Cerdas, Onecode, USPS-B-3200, Codabar, CODE 11, PHARMACODE, PHARMACODE DUA-TRACKS;
  • termasuk metode untuk mengatur Bookmarks dan mencetak Daftar Isi;
  • termasuk metode untuk memindahkan halaman;
  • termasuk metode untuk header halaman otomatis dan manajemen footer;
  • mendukung page break otomatis;
  • mendukung otomatis penomoran halaman dan kelompok halaman;
  • mendukung JPEG dan gambar PNG native, semua gambar didukung oleh GD
  • mendukung stroke dan modus kliping untuk teks;
  • mendukung masker kliping;
  • mendukung Grayscale, RGB, CMYK, Warna Spot dan Transparansi;
  • mendukung penjelasan, termasuk link, teks dan lampiran file;
  • mendukung transaksi untuk UNDO perintah;
  • mendukung tanda tangan digital
Tips & Trik
Aku digunakan setelah 2 trik dalam proyek saya, berharap ini akan membantu Anda.
  1. Dalam EZPDF Anda dapat mengatur warna teks, bentuk, garis dll, warna harus ditentukan dalam triplet RGB, masing-masing dalam kisaran 0 ke 1. Sebagian besar alat (misalnya: - pemetik warna, Adobe Photoshop) menunjukkan warna di kisaran 0-255 atau dalam format heksadesimal. Jika Anda ingin nilai warna di kisaran 0-1, membagi nilai warna dengan 255. Misalnya Blue rgb (0, 155, 255). Anda dapat mengubahnya ke kisaran 0-1 dengan membagi setiap nilai dengan 255. Jadi biru adalah rgb (0, 0,61, 1) dalam 0-1 jangkauan.
  1. Menentukan colur latar belakang untuk dokumen: Bila Anda menambahkan halaman baru, menggambar persegi panjang dalam ukuran dokumen yang dan menulis semua konten di atas persegi panjang itu, sehingga akan menjadi seperti warna latar belakang untuk halaman tersebut.
Kesimpulan
Kedua EZPDF dan TCPDF adalah perpustakaan yang mudah dan kuat, TCPDF memiliki fitur lebih dari EZPDF dan masih dipelihara oleh para pengembang dimana EZPDF terakhir diperbarui pada tanggal 17 Juni 2006. Aku digunakan baik EZPDF dan TCPDF; untuk membuat dokumen sederhana, saya sarankan EZPDF dan jika Anda ingin banyak fitur seperti UTF-8 support / RTL, dukungan HTML dan lain-lain pergi untuk TCPDF.
Sumber :

2.       Hasilkan PDF dari Servlet dengan iText

Mari kita lihat contoh berikut Servlet yang menghasilkan file PDF dengan iText.

package com.geek.tutorial.itext.servlet;
 
import javax.servlet.*;
import javax.servlet.http.*;
 
import com.lowagie.text.pdf.PdfPTable;
import com.lowagie.text.pdf.PdfPCell;
import com.lowagie.text.pdf.PdfWriter;
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
 
import java.io.*;
import java.util.*;
 
public class PDFServlet extends HttpServlet {
 
        public void init(ServletConfig config) throws ServletException{
               super.init(config);
        }
        
        public void doGet(HttpServletRequest request, 
                       HttpServletResponse response) 
                       throws ServletException, IOException{
               doPost(request, response);
        }
        
        public void doPost(HttpServletRequest request, 
                       HttpServletResponse response) 
                       throws ServletException, IOException{
               
               response.setContentType("application/pdf"); // Code 1
               Document document = new Document();
               try{
                       PdfWriter.getInstance(document, 
                               response.getOutputStream()); // Code 2
                       document.open();
                       
                       // Code 3
                       PdfPTable table = new PdfPTable(2);
                       table.addCell("1");
                       table.addCell("2");
                       table.addCell("3");
                       table.addCell("4");
                       table.addCell("5");
                       table.addCell("6");            
                       
                       // Code 4
                       document.add(table);           
                       document.close(); 
               }catch(DocumentException e){
                       e.printStackTrace();
               }
        }
        
}
 
               
Kode 1.
Menetapkan jenis Konten dari servlet ke PDF. Ini akan memanggil penampil PDF pada mesin klien untuk menangani isi PDF.

Kode 2.
Lulus ServletOutputStream ke PDFWriter untuk menghasilkan PDF.

Kode 3.
Buatlah tabel PDF untuk demonstrasi tutorial ini.

Kode 4.
Tambahkan tabel ke dalam dokumen dan menutupnya.

Kompilasi contoh di atas dan tempat PDFServlet.class hasil ke dalam aplikasi web Anda WEB-INF \ kelas \ com \ pecandu \ tutorial \ iText \ servlet \ folder. Perhatikan bahwa Anda perlu servlet-api.jar ditambahkan ke dalam compiler classpath atau akan mendapatkan suatu kelas tidak ditemukan pengecualian Anda. Salah satu cara Anda dapat menemukan bahwa servlet-api.jar dalam diinstal umum direktori tomcat \ lib \.

Selanjutnya tambahkan potongan XML berikut ke dalam file web.xml aplikasi web Anda.

<servlet>

        <servlet-name>PDFServlet</servlet-name>

        <servlet-class>com.geek.tutorial.itext.servlet.PDFServlet
</servlet-class>

    </servlet>

    

    <servlet-mapping>

        <servlet-name>PDFServlet</servlet-name>

        <url-pattern>/PDFServlet</url-pattern>

    </servlet-mapping>  

Sekarang Anda dapat menguji servlet Anda dengan browser internet. Misalnya, jika URL akar aplikasi web Anda adalah http://localhost:8080/test/, maka Anda harus memasukkan URL sebagai http://localhost:8080/test/PDFServlet. Servlet ini akan menghasilkan PDF berikut di dalam browser internet.


Menampilkan kotak dialog Save As, bukan tampilan di browser
Jika Anda ingin memaksa pengguna untuk menyimpan file PDF ke dalam drive lokal mereka bukannya melihat menghasilkan PDF di browser, Anda dapat menambahkan potongan kode berikut tepat setelah pengaturan jenis konten dari servlet

...
response.setContentType("application/pdf");
response.setHeader("Content-Disposition",
         " attachment; filename=\"example.pdf\"");
...
               

Tidak ada komentar:

Posting Komentar

silakan berikan komentar