NextPDF'yi kurun ve ilk PDF'nizi oluşturun
NextPDF, PDF (Portable Document Format) dosyaları oluşturan bir PHP kütüphanesidir. Bu öğreticide onu boş bir klasöre kurar ve ilk tek sayfalık belgenizi oluşturursunuz. Bir terminale ve yaklaşık on dakikaya ihtiyacınız var.
Ne oluşturacaksınız
“Ne oluşturacaksınız” başlıklı bölümTek bir betik içeren küçük bir proje oluşturacaksınız: 01-hello.php.
Bu betik, kalın bir başlık satırı ve bir paragraf içeren tek bir sayfa oluşturur.
Sonucu out/hello.pdf olarak kaydeder. Bu sırada, kurulumunuzun sağlıklı
olduğunu doğrulayan iki komut öğrenirsiniz.
Bu sayfa tek bir kurulum yolunu öğretir: boş bir klasör artı motor paketi. Framework adaptörleri, tarayıcı tabanlı işleyiciler ve Python istemcisi gibi başka yollar da mevcuttur. Bunlar Kurulum ve Yolunuzu seçin sayfalarında bulunur. Bugün onlara ihtiyacınız yok.
1. Adım: Bir proje oluşturun ve NextPDF’yi kurun
“1. Adım: Bir proje oluşturun ve NextPDF’yi kurun” başlıklı bölümComposer, PHP için paket yöneticisidir. Kütüphaneleri projenize indirir ve bir autoloader oluşturur. Autoloader, kütüphane sınıflarını sizin için bulan küçük bir PHP dosyasıdır; böylece hiçbir zaman uzun include listeleri yazmazsınız.
Bir terminal açın ve şu üç komutu çalıştırın:
mkdir hello-nextpdfcd hello-nextpdfcomposer require nextpdf/coreComposer, paketleri çözümleyip indirirken ilerlemeyi yazdırır. Tam satırlar, Composer sürümünüze ve yerel önbelleğinize göre değişir. Başarılı bir kurulum, hata metni olmadan sona erer ve kabaca şöyle görünür:
./composer.json has been createdRunning composer update nextpdf/coreLoading composer repositories with package informationUpdating dependenciesLock file operations: ... installs, 0 updates, 0 removals...Generating autoload filesAz önce ne oldu
“Az önce ne oldu” başlıklı bölümComposer, klasörünüzde üç şey oluşturdu. composer.json, projenizin motora
bağlı olduğunu kaydeder. composer.lock, kurduğu tam sürümü sabitler; böylece
sonraki bir kurulum aynı kodu çözümler. vendor/ klasörü, vendor/autoload.php
dahil indirilen paketleri barındırır. Betiğiniz bu tek dosyayı yükler ve her
motor sınıfı kullanılabilir hale gelir.
Composer ayrıca kurulum sırasında PHP yapılandırmanızı denetledi. Motor, ihtiyaç duyduğu PHP eklentilerini bildirir. Eklentiler, PHP’ye gömülü isteğe bağlı modüllerdir. Biri eksikse, Composer sizi bozuk bir kurulumla bırakmak yerine durur ve onun adını verir.
2. Adım: İlk PDF’nizi oluşturun
“2. Adım: İlk PDF’nizi oluşturun” başlıklı bölümcomposer.json dosyasının yanında 01-hello.php adında bir dosya oluşturun.
Bu eksiksiz programı yapıştırın:
<?php
declare(strict_types=1);
require __DIR__ . '/vendor/autoload.php';
use NextPDF\Core\Document;
@mkdir(__DIR__ . '/out');
$document = Document::createStandalone();$document->setTitle('Hello from NextPDF');$document->addPage();
$document->setFont('helvetica', 'B', 24);$document->cell(0, 15, 'Hello from NextPDF', newLine: true);
$document->setFont('helvetica', '', 12);$document->cell(0, 10, 'This page came from a short PHP script and the built-in fonts.', newLine: true);
$document->save(__DIR__ . '/out/hello.pdf');
echo "Wrote out/hello.pdf\n";Çalıştırın:
php 01-hello.phpTam olarak tek bir satır görmelisiniz:
Wrote out/hello.pdfout/hello.pdf dosyasını herhangi bir PDF görüntüleyicide açın. Kalın başlık
satırını ve altındaki paragrafı görürsünüz; çoğu görüntüleyici pencere başlığında
“Hello from NextPDF” ifadesini gösterir.
Az önce ne oldu
“Az önce ne oldu” başlıklı bölümBetiği yukarıdan aşağıya inceleyin:
require, Composer autoloader’ını yükler; böyleceDocumentsınıfı çözümlenir.@mkdir,out/klasörünü oluşturur. Baştaki@, klasör zaten varken betiği sessiz tutar; böylece onu tekrar çalıştırabilirsiniz.Document::createStandalone(), yeni bir belge döndürür. Tam olarak bunun gibi kısa komut satırı betikleri için yapılmıştır.setTitle(), görüntüleyicilerin pencere başlığında gösterdiği belge başlığını ayarlar.addPage(), boş bir sayfa ekler ve imleci sol üst köşeye yerleştirir.setFont(), bir yazı tipi ailesi, bir stil ve punto cinsinden bir boyut seçer. Punto, baskıda yazı tipi boyutları için standart birimdir.'B'kalın,''ise normal anlamına gelir.helveticaadlı aile gömülüdür; böylece yazı tipi dosyalarına ihtiyacınız olmaz.cell(), imlecin bulunduğu yere bir satır metin yazar.0genişliği “sağ kenar boşluğuna kadar uzat” anlamına gelir.newLine: true, sonrasında imleci aşağı taşır; Enter’a basmak gibi.save(), tamamlanmış PDF’yi oluşturur ve diske yazar.
Bir belge, bir dosya üretir. İkinci bir PDF’ye ihtiyaç duyduğunuzda, eskisini yeniden kullanmak yerine yeni bir belge oluşturun.
3. Adım: Kurulumunuzu doğrulayın
“3. Adım: Kurulumunuzu doğrulayın” başlıklı bölümİki hızlı kontrol, bu kurulumun tek bir betiğin ötesinde de çalışmaya devam edeceğini doğrular.
Önce, PHP’nizin taşıdığı eklentileri listeleyin:
php -mListede curl, gd, intl, mbstring, openssl ve zlib öğelerini arayın.
Motor bu altısına dayanır. Composer bunları 1. Adım’da zaten denetledi;
dolayısıyla hepsi görünmelidir.
İkinci olarak, motorun kendi sağlık kontrolünü çalıştırın:
vendor/bin/nextpdf doctorWindows’ta bunun yerine vendor\bin\nextpdf doctor çağırın. Komut; PHP
sürümünüzü, eklentileri, geçici klasörü ve yapılandırmayı inceler. Her kontrol
[OK], [WARN] veya [FAIL] yazdırır ve ardından tek bir genel karar gelir.
Az önce ne oldu
“Az önce ne oldu” başlıklı bölümÖnce Extensions bloğunu okuyun. curl, gd, intl, mbstring, openssl
ve zlib adlı altı [OK] satırı, kurulumunuzun bundan sonraki her öğreticiye
hazır olduğu anlamına gelir.
Rapor ayrıca motor yeteneklerini listeler. Ücretsiz Core kurulumunda, ticari
paketlere ait yetenekler, onları sağlayan paketin adını veren bir mesajla
[FAIL] yazdırır. Bu, burada beklenen bir durumdur ve Core yapılandırmanız iyi
olsa bile genel kararı UNHEALTHY durumuna çevirebilir. Bu öğreticiler için
önemli olan sinyal, Extensions bloğudur.
Bir şey ters giderse
“Bir şey ters giderse” başlıklı bölümÖnce belirtinizi şu yaygın durumlarla eşleştirin:
composer: command not found, Composer’ın eksik olduğu veyaPATH’inizde bulunmadığı anlamına gelir. Onu getcomposer.org adresinden kurun, ardından 1. Adım’ı tekrarlayın.Failed opening required '.../vendor/autoload.php', betiğin proje klasörünün dışında çalıştığı veya kurulumun tamamlanmadığı anlamına gelir. 1. Adım’daki klasöre geçin vecomposer installçalıştırın.- Composer 1. Adım sırasında durur ve eksik bir PHP eklentisinin adını verirse,
o eklentiyi
php.inidosyanızda etkinleştirin.php -mile doğrulayın, ardından kurulumu tekrarlayın. - doctor’ın Extensions bloğundaki bir
[FAIL]satırı, eksik bir PHP eklentisinin adını verir. Onuphp.inidosyasında etkinleştirin,php -mile doğrulayın ve doctor’ı yeniden çalıştırın. Ticari bir paketin adını veren yetenek[FAIL]satırları, Core kurulumunda beklenir ve burada herhangi bir işlem gerektirmez.
Başka herhangi bir durum için, sorun giderme bilgi tabanı ile başlayın. Bir betik bir istisna oluşturursa, sınıfını hata referansı içinde arayın; başlangıç düzeyindeki hataların çoğu genel hatalar altında görünür.
Sonraki
“Sonraki” başlıklı bölümÇalışan bir kurulumunuz ve ilk oluşturulmuş dosyanız var. Sayfa boyutlarını, gömülü yazı tiplerini, renkleri ve hizalamayı kontrol etmek için Metin, yazı tipleri ve sayfa temelleri ile devam edin.