Cara Membuat file PDF dengan PHP (fpdf)


PDF telah menjadi terkenal cukup luas di kalangan bisnis dan institusi untuk membuat secara otomatis dan dinamis memproduksinya dalam jumlah besar adalah keterampilan yang berharga untuk belajar. Portable Document File dari Adobe mudah diproduksi di PHP, menjadikannya sebagai bahasa melekat lebih baik daripada sebelumnya. Karena siapa pun dapat menginstal PHP, mereka dapat menggunakan sederhana PHP 5 kelas PDFLib yang disediakan untuk membuat sebanyak PDF dalam format apapun yang Anda butuhkan. 


Ironisnya, tentu saja, PDFLib sekarang komersial dan menawarkan PDFLib Lite. Either way, perpustakaan PDFLib memiliki kurva belajar berat, dan sebagai gantinya, saya sarankan FPDF untuk penggunaan umum PDF Anda. Ini adalah PDF perpustakaan freeware yang ditulis sepenuhnya dalam PHP, sehingga tidak ada PECL atau PEAR instalasi yang diperlukan, yang tidak memperlambatnya. Jadi, bisnis besar tidak harus menggunakan ini untuk memproses ratusan PDF, tetapi untuk pekerjaan yang lebih singkat. 



Membuat dokumen PDF dasar dengan cepat 



Saya akan menunjukkan kepada Anda bagaimana untuk membuat dokumen PDF dasar dengan blok teks keberpihakan yang berbeda, serta double-spacing, header dan footer dan menampilkan gambar. 



Mari segera kita lihat contoh berikut ini: 


<?php
require('classes/fpdf/fpdf.php');
class PDF extends FPDF {
function Header() {
    $this->SetFont('Times','',12);
    $this->SetY(0.25);
    $this->Cell(0, .25, "John Doe ".$this->PageNo(), 'T', 2, "R");
    //reset Y
    $this->SetY(1);
}
function Footer() {
//This is the footer; it's repeated on each page.
//enter filename: phpjabber logo, x position: (page width/2)-half the picture size,
//y position: rough estimate, width, height, filetype, link: click it!
    $this->Image("logo.jpg", (8.5/2)-1.5, 9.8, 3, 1, "JPG", "http://www.phpjabbers.com");
}
}
//class instantiation
$pdf=new PDF("P","in","Letter");
$pdf->SetMargins(1,1,1);
$pdf->AddPage();
$pdf->SetFont('Times','',12);
$lipsum1="Lorem ipsum dolor sit amet, nam aliquam dolore est, est in eget.";
  
$lipsum2="Nibh lectus, pede fusce ullamcorper vel porttitor.";
  
$lipsum3 ="Duis maecenas et curabitur, felis dolor.";
  
$pdf->SetFillColor(240, 100, 100);
$pdf->SetFont('Times','BU',12);
  
//Cell(float w[,float h[,string txt[,mixed border[,
//int ln[,string align[,boolean fill[,mixed link]]]]]]])
$pdf->Cell(0, .25, "lipsum", 1, 2, "C", 1);
  
$pdf->SetFont('Times','',12);
//MultiCell(float w, float h, string txt [, mixed border [, string align [, boolean fill]]])
$pdf->MultiCell(0, 0.5, $lipsum1, 'LR', "L");
$pdf->MultiCell(0, 0.25, $lipsum2, 1, "R");
$pdf->MultiCell(0, 0.15, $lipsum3, 'B', "J");
$pdf->AddPage();
$pdf->Write(0.5, $lipsum1.$lipsum2.$lipsum3);
  
$pdf->Output();
?>

Saya membuat file PDF dalam mode Portrait dengan ukuran Letter dan diukur dalam inci. Kemudian, saya mengatur margin 1 inci, tambahkan halaman pertama, dan kemudian mengatur Font Times, Ukuran 12 Kemudian, 3 teks boneka saya, dan setelah itu saya mengatur warna fill yang akan menjadi latar belakang teks judul saya dengan tebal / digarisbawahi modifikator. Setelah itu, saya mencetak judul, kemudian reset font dan menentukan beberapa jenis MultiCells. Halaman ini terdiri dari sel-sel pada x, y perangkat di FPDF, yang membuatnya cukup nyaman untuk bekerja dengan untuk mengedit PDF dasar. 

Header dan footer adalah fungsi otomatis disebut dalam kelas induk, tetapi mereka melakukan apa-apa secara default. Itu berarti kita harus mendefinisikannya kembali untuk kebutuhan kita. Dalam hal ini, nama dan nomor halaman sebagai header dan logo dengan link sebagai footer. Ini diulang pada setiap halaman. 

Perhatikan bahwa dalam rangka untuk menempatkan teks di lokasi yang tepat, saya harus menggunakan setX dan Sety fungsi. Jangan lupa untuk me-reset mereka untuk aliran normal mereka setelah selesai di header atau footer, meskipun! 

Sel adalah unit individu pada halaman. Lebih mudah untuk mendefinisikan garis dengan satu sel, tapi pada saat yang sama ini dapat dicapai jauh lebih cepat dengan menggunakan fungsi multicell yang secara otomatis akan membuat sel baru sebagai teks yang lewat. Menulis hanya dialirkan teks. 

Satu hal yang benar-benar perlu diingat adalah bahwa Anda tidak dapat output teks ke browser ketika mencoba untuk mengirim PDF ini ke browser, jika Anda membuat itu dengan cepat. Jika Anda membuat untuk penyimpanan atau digunakan nanti, maka tidak ada masalah menghasilkan teks kepada pengguna juga. Hal ini dilakukan dengan mengatur parameter untuk output tepat. 

Jarak ini dilakukan dengan tinggi baris. Anda harus melakukan beberapa matematika untuk mencari tahu apa yang Anda inginkan. Ketinggian line adalah seluruh ketinggian garis, yang berarti garis terhadap satu sama lain. Itu berarti apapun yang Anda tetapkan untuk garis tinggi adalah jarak antara huruf, juga! 

Dengan keterampilan ini dalam pikiran, Anda harus dapat melakukan apapun yang Anda inginkan ke PDF. Untuk menambah kemampuannya, ada bagian Script, tapi tentu saja selalu ada perpustakaan PDFLib yang menyediakan semua jenis spesialisasi. FPDF adalah perpustakaan yang sangat didokumentasikan meskipun, dan itu benar-benar mudah digunakan.Good luck!
Previous
Next Post »