Laravel Browsershot, Puppeteer adlı Google Chrome’un bir başka API’si üzerine inşa edilmiştir. Browsershot’u kullanarak web sayfalarını görüntüleyebilir, ekran görüntüleri alabilir veya PDF dosyaları oluşturabilirsiniz. İşte Browsershot’un temel kullanım adımları:

1. Gerekli Kütüphanenin Yüklenmesi:

İlk olarak, Laravel projesinde Browsershot’u kullanabilmek için spatie/browsershot paketini yüklemeniz gerekiyor. Composer kullanarak şu komutu çalıştırabilirsiniz:

composer require spatie/browsershot

2. Browsershot Kullanarak Web Sayfası Yakalama:

Örnek olarak, bir web sayfasının ekran görüntüsünü yakalamak için aşağıdaki gibi bir lam parçasını kullanabilirsiniz:

use Spatie\Browsershot\Browsershot;

// Web sayfasının ekran görüntüsünü al
Browsershot::url('https://www.example.com')
    ->save('screenshot.png');

Yukarıdaki kod, https://www.example.com adresindeki web sayfasının ekran görüntüsünü screenshot.png adlı bir dosyaya kaydeder.

3. PDF Oluşturma:

Browsershot kullanarak bir web sayfasını PDF olarak kaydetmek için aşağıdaki gibi bir kod örneği kullanabilirsiniz:

use Spatie\Browsershot\Browsershot;

// Web sayfasını PDF olarak kaydet
Browsershot::url('https://www.example.com')
    ->savePdf('example.pdf');

Yukarıdaki örnek, https://www.example.com adresindeki web sayfasını example.pdf adlı bir PDF dosyasına dönüştürür.

4. Seçenekler ve Özelleştirme:

Browsershot ile farklı seçenekler ve özelleştirmeler kullanarak çıktıyı kişiselleştirebilirsiniz. Örneğin, viewport boyutunu belirlemek, JavaScript’i etkinleştirmek veya bazı CSS özelliklerini kullanmak için:

use Spatie\Browsershot\Browsershot;

Browsershot::url('https://www.example.com')
    ->viewport(1920, 1080) // Viewport boyutunu ayarla
    ->mobile() // Mobil cihaz modunu etkinleştir
    ->setDelay(2000) // İşlem arasında gecikme ekle (ms cinsinden)
    ->setOption('no-sandbox') // Sandbox'ı devre dışı bırak
    ->save('example.png');

5. Dosyayı Public Klasörüne Kaydetme

Dosyaları Laravel projesinin public klasörüne kaydetmek oldukça basit. Bunu yapmanın birkaç farklı yolu bulunabilir. Örneğin, public_path() fonksiyonunu kullanarak dosyaları public klasörü içine kaydedebilirsiniz.

Öncelikle, Browsershot kullanarak oluşturduğunuz dosyayı public klasörüne kaydetmek için aşağıdaki gibi bir örnek gösterilebilir:

use Spatie\Browsershot\Browsershot;

// Web sayfasının ekran görüntüsünü al ve public klasörüne kaydet
Browsershot::url('https://www.example.com')
    ->save(public_path('screenshots/example.png'));

Yukarıdaki kod, public klasörü altında screenshots adlı bir klasör oluşturur ve example.png adında ekran görüntüsünü kaydeder. public_path() fonksiyonu, dosyanın public klasörü içindeki tam yolunu oluşturur.

Bu şekilde, oluşturulan ekran görüntüsü veya dosya, kullanıcılar tarafından erişilebilir hale gelir çünkü public klasörü web sunucusu tarafından doğrudan erişilebilir bir konumda bulunur.

Shares:

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir