PHP ile PDF dosyaları oluşturma

İçindekiler
Dosyalar PDF Web'de belgelerin iletimi için pratik bir standart haline geldiler, platform değiştirirken formatlarını kaybetmemelerini ve tam olarak göründükleri gibi yazdırılmalarını sağladılar, ayrıca başvurduğumuzda değiştirilemezler. belirli kontroller aynı.
Bu, içinde oluşturduğumuz bir sistemden rapor stili bir çıktı oluşturmamız istendiğinde, PHP, bir dosyanın oluşturulmasıyla birlikte seçeneklerden biri CSV bir dosyanın üretilmesidir PDF.
FPDFBu sorunu çözmek için toplum içinde kendimizi destekleyebiliriz. PHP ve herhangi bir ek sunucu yapılandırması gerektirmeyen FPDF kitaplığını edinin. Bu, bu kütüphaneyi büyük bir yardım haline getiriyor ve onu hizmetlerde bile uygulayabiliyoruz. Barındırma Paylaşımı ayarlara erişimin genellikle servis sağlayıcı tarafından sınırlandırıldığı yerlerde.
İlk belgemizi oluşturmak için PDF önce bir dosyanın ne olduğunu anladığımızdan emin olmalıyız PDF. Kısaltmaları İngilizce'ye karşılık gelir. Taşınabilir Döküman Formatı ve şirket tarafından oluşturuldu Adobe üretebildiğimiz ve başkalarına göndermemiz gereken farklı belgelerin paylaşılma şeklini kolaylaştırmak için.
A PDF Bir sayfadan ekipmanımızın hafızasının direndiği sayfalara giden birkaç sayfadan oluşur. Her sayfa metin, grafik, renk, resim vb. içerecektir. Bir oluştururken PDF, bu tarayıcıdan indirilebilir veya bazı eklentilerle doğrudan çevrimiçi olarak okunabilir ve gösterilebilir, bu yüzden bu kadar güçlüdür, tek kusuru ve aynı zamanda en büyük erdemlerinden biri, değiştirilmek üzere yapılmamasıdır. şu anda.
Kodun arkasındaki ve önceki kısmı anlamak için ödevimizi yaptığımız için ilk dosyamızı oluşturacağız. Tek sayfalık bir belge oluşturacağız ve buna küçük bir metin ekleyeceğiz.
Nasıl yapılır?Hedefe ulaşmak için yeni bir belge oluşturmalıyız PHP ve etiketlerin açılmasından sonraki ilk satırında kütüphanenin eklenmesini yapmalıyız. FPDF, bunu talimatla yapacağız gerekmek () çünkü bu şekilde kütüphaneyi bulamazsak program hata verecek ve böylece bir şeyin çalıştırılması ve istenmeyen bir sonuç elde edilmesi için hiçbir olasılık kalmayacak.
Daha sonra bir nesne tipi oluşturacağız. FPDF gibi bazı yöntemler uygulayacağımız sayfa ekle () geleceğimize yeni bir yaprak eklemek için PDF, veya hücre () sayfanın içinde bir bölüm oluşturmak ve son olarak çıktı () sonucu tarayıcıya gönderen kişidir.
Anlattığımız her şeyi anlayabilmemiz için örnek kodu görelim:
 sayfa ekle (); $ pdf-> setFont ("Arial", 'B', 18); $ pdf-> cell (50, 20, "Merhaba! İlk PDF'imizi oluşturduk !!"); $pdf-> çıktı(); 

Burada gördüğümüz tek ek şey yöntem setFont () bu, metin için font ailesini, stilini, yani italik ise, kalın italik olarak ve piksel cinsinden boyutunu seçmemize izin verir, kod durumunda Arial, kalın için B ve bir boyut 18 piksel.
yöntemde hücre () ilk parametreler metnin belge içindeki konumuna atıfta bulunur ve sonuncusu görünmesi gereken metindir. Nihayet çıktı () bize gösterilecek sonucu verir. Bunu bir test sunucusunda çalıştırırken, örneğin bataklık, aşağıdakine benzer bir sonuç görebiliriz:

BÜYÜT

Üst kısımda bize gösteren kontrol setini görebiliriz. PDF tarayıcı tarafından sorunsuz bir şekilde yorumlandı.
Gördüklerimiz, bir belgeden hızlı ve fazla talep olmadan çıkmamız için işe yarayabilir, ancak bu bizim işimizin bittiği anlamına gelmez. PDF daha karmaşık olamazlar ve daha fazla ayrıntıya sahip olamazlar.
örneğini oluştururken FPDF, sınıfın stilini değiştirebilecek daha fazla öğe vermemize yardımcı olabilecek sınıfın yapıcısında bazı parametreler tanımlayabiliriz. PDF, örneğin belgenin yönünü dikeyden yataya değiştirmek gibi temel şeylerden, mesafeleri alacağı metrik sistemi değiştirmeye kadar gidebiliriz.
Bir oluştururken değiştirebileceğimiz bazı özellikleri görelim. PDF ile birlikte FPDF içinde PHP:
Oryantasyonİki olası seçeneğimiz var P dikey veya portre formu için bu nedenle ilk Portre modu ingilizce ve bizde L yatay format için veya Manzara aynı zamanda İngilizceye de tekabül etmektedir.
Ölçü birimiÖlçü birimi için üç seçeneğimiz var nokta puan için, içinde inç için ve santimetre Santimetre için, yaşadığımız ülkeye ve istediğimiz sonuçlara bağlı olarak, ölçü birimini bizim için daha rahat olan bir şeyle değiştirebiliriz.
Sayfa boyutuBir diğer hayati özellik, genellikle belgelerin basılması için belgemiz için yeterli bir boyut oluşturmamız gerektiğinden, burada Mektup harf boyutu için, Yasal yasal boyut için, o zaman gibi başka popüler formatlarımız var A3, A5 veya A4. belgelerine bakarsak FPDF Hatta levha için kendi ölçülerimizi üretme imkanının olduğunu da görebiliyoruz.
Belgemizi oluşturmak için ek özellikler olduğunu öğrendiğimize göre, yeni bir örnek oluşturmanın zamanı geldi, bunun için sınıf yapıcısındaki konfigürasyonları uygulayacağız ve ayrıca elemanların yerini belirlemek için koordinatları kullanacağız. aynı sayfa..
Koordinatlar (0,0) elemanımızı yatay X ve dikey Y düzleminde konumlandırmamızı sağlayan bir sistemdir. PDF bununla bu elemanların yerini tam olarak kontrol edebiliriz. Tüm bunlar için bir fikir edinebilmemiz için koda bakalım:
 sayfa ekle (); $ pdf-> setFont ('Arial', 'B', 16); $ pdf-> hücre (0,0, "Sol Üst Köşe", 0, 0, 'L'); $ pdf-> hücre (0,0, "Sağ Üst Köşe", 0, 0, 'R'); $pdf-> ln (2.5); $ pdf-> hücre (0, 0, "Ortada", 0, 0, 'C'); $pdf-> ln (5.3); $ pdf-> hücre (0, 0, "Sol Alt", 0, 0, 'L'); $ pdf-> hücre (0, 0, "Sağ Alt", 0, 0, 'R'); $pdf-> çıktı(); 

İlk etapta kütüphanemizi ekledikten sonra görüyoruz. FPDF ilgili nesneyi yaratacağız, sınıf yapıcısında oryantasyonu geçiyoruz P, ölçü birimi içinde ve son olarak sayfa boyutu mektup, sonra bir sayfa ekliyoruz ve sonraki adımda metin için yazı tipini ayarlıyoruz.
Koordinatlarla biraz oynayacağız ve yöntemin sağındaki dikey eksen ile farkı görmek için onları değiştireceğiz. hücre bazı ek sayılar görüyoruz, bunlar satır ve harf oluşturmak için kullanılıyor L, R veya C metnin gerekçesine karşılık gelir, yani sola, sağa veya merkeze hizalanır.
yöntem ln () bu örnekte olduğu gibi bir boşluk oluşturulacak şekilde bir ölçü geçmemize izin verir ln (2.5) sonraki yöntem çağrısından önce 2,5 inç kayacak hücre () bu nedenle aşağıdaki metnin neslinde şunu görüyoruz: Ortada belgede çok daha düşük görünecektir. Yerel sunucuda çalıştırıldığında bunun nasıl göründüğünü görelim:

Üst kısımda, ilk metnin ikinciden çok daha yüksek olduğu koordinatlar ve belgede oluşturulan boşluklar ile oyunumuzun nasıl göründüğünü fark ediyoruz. Aşağıya inersek belgemizin alt kısmını ve yerleştirdiğimiz metnin yerini görebiliriz.
Yazı tipleri ve stiller dahilTemel bir şekilde nasıl belge oluşturulacağını gördüğümüz için, kütüphanemizde başlangıçta hangi metin stillerine sahip olduğumuzu göreceğiz. FPDF.
Varsayılan olarak yerleştirebileceğimiz yazı tipleri şunlardır:
  • Arial.
  • Zamanlar
  • Helvetica
  • Kurye
  • Sembol
  • ZapfDingbat'lar
Ancak, özel yazı tiplerini sadece ona karşılık gelen dosyaya sahip olarak kullanabiliriz ve bunları yöntem ile ekleyebiliriz. addFont(). Kullanabileceğimiz stiller şunlardır:
  • Kalın için B.
  • italikler için ben.
  • Altı çizili için U.
Örneğin, tüm bu stilleri dahil etmek için, metnin fontunu tanımladığımız anda bunları yan yana yerleştirmek yeterlidir:
$ pdf-> setFont ("Kurye", 'IBU', 10);

Bunu değiştirmenin çok kolay olduğunu not ediyoruz. Ayrıca bir renk eklemek istiyorsak, yöntemi çağırmanız yeterlidir. setTextColor ve aynı kodu formatta iletin RGB. Örneğin:
$ pdf-> setTextColor (255, 0, 0);

Metnimizin kırmızı rengi için. Bir görev olarak, bu yeni talimatların bazılarında uygulanmasına izin vereceğiz. PDF zaten öğreticide bilgiyi pekiştirecek şekilde oluşturulmuştur.
Bununla bitiriyoruz, dosya oluşturmayı öğrendik PDF sadece projemize bir kütüphane ekleyerek basit ve çok hızlı bir şekilde PHP. resmi belgelerini görmek çok önemlidir. FPDF çünkü daha iyi belgeler oluşturmamıza yardımcı olabilecek başka özellikler var.Bu Eğitimi beğendiniz ve yardım ettiniz mi?Yazara olumlu puan vermek için bu düğmeye basarak yazarı ödüllendirebilirsiniz.
wave wave wave wave wave