Base64'ten PDF'ye Dönüştürücü

Bir API yanıtından, e-postadan veya veritabanından aldığınız Base64'ü yapıştırın ve yeniden PDF'ye dönüştürün. Belgeyi gömülü görüntüleyicide okuyun, ardından normal bir .pdf dosyası olarak kaydedin.

Tamamen tarayıcınızda çalışır. Hiçbir veri yüklenmez.

Nasıl kullanılır

  1. Base64 dizesini veya data:application/pdf;base64, ile başlayan bir data URI'yi girdi kutusuna yapıştırın.
  2. Dosyanın PDF olarak algılandığını kontrol edin ve görüntüleyicide okuyun.
  3. PDF'yi cihazınıza kaydetmek için indirin.

Bir API yanıtından Base64 kopyalama

Fatura, kargo etiketi, rapor veya imzalı sözleşme üreten hizmetler PDF'yi çoğu zaman JSON içinde döndürür, örneğin {"filename": "label.pdf", "data": "JVBERi0..."}. Yalnızca alan adından sonraki tırnak işaretleri arasındaki metni kopyalayın ve şu ayrıntılara dikkat edin:

  • Kaçışlı eğik çizgiler. PHP'nin json_encode fonksiyonu da dahil olmak üzere bazı JSON kodlayıcıları her / karakterini \/ olarak yazar. / normal bir Base64 karakteri olduğundan, yapıştırmadan önce \/ dizilerini / ile değiştirin ya da önce JSON'u ayrıştırıp değeri kopyalayın.
  • Tırnak işaretleri ve virgüller. Çevreleyen tırnak işaretlerini ve sondaki virgülü dışarıda bırakın.
  • Satır sonları. Base64 içindeki boşluklar ve gerçek satır sonları (örneğin 76 karakterde bölünmüş bir değer) sorun değildir ve silinmeleri gerekmez. Ham JSON'daki harfiyen \n veya \r\n dizileri ise başka bir konudur: bunlar ters eğik çizgi karakterleri içerir ve silinmelidir.

Değeri tarayıcınızın geliştirici araçlarındaki ayrıştırılmış görünümden kopyalamak bu kaçış sorunlarının hepsini önler.

Bir e-postadan PDF ekini çıkarma

E-posta ekleri ham iletinin içinde Base64 olarak saklanır. İletinin kaynağını açın (Gmail'de "Orijinali göster", Thunderbird'de "İleti Kaynağı", Apple Mail'de "Ham Kaynak") ve başlıklarında Content-Type: application/pdf (veya .pdf uzantılı bir dosya adıyla birlikte application/octet-stream) ile Content-Transfer-Encoding: base64 bulunan bölümü bulun. Bu başlıkların altındaki boş satırdan sonra başlayan ve -- ile başlayan bir sonraki satırdan, yani MIME sınırından önce biten bloğu kopyalayın. Bloğu buraya olduğu gibi yapıştırın; satır sonları yok sayılır.

Base64 PDF'yi kendi web uygulamanızda gösterme

Ön yüzünüz bir Base64 PDF alıp görüntülemesi gerektiğinde, bazı tarayıcıların yeni sekmede açmayı reddettiği data URI yerine bir Blob URL'si kullanmak daha güvenilirdir:

const bytes = Uint8Array.from(atob(base64), c => c.charCodeAt(0));
const blob = new Blob([bytes], { type: 'application/pdf' });
const url = URL.createObjectURL(blob);
window.open(url); // veya bir <iframe> öğesinin src değeri olarak kullanın

Belleği serbest bırakmak için belgeye artık ihtiyaç kalmadığında URL.revokeObjectURL(url) çağrısını yapın. atob yalnızca standart Base64 alfabesini kabul ettiğinden URL güvenli girdiyi (- ve _) önce dönüştürün.

Sıkça sorulan sorular

Base64 dizem neden PDF olarak algılanmıyor?
Bir Base64 PDF, %PDF- ifadesinin kodlaması olan JVBERi0 ile başlar. Sizinki bir tırnak işareti, alan adı veya başka bir metinle başlıyorsa bunu kaldırın. SlZCRVJ ile başlıyorsa PDF iki kez Base64 ile kodlanmıştır: Base64 kod çözücüyle bir kez çözün ve sonucu buraya yapıştırın. Bunların hiçbiri değilse veri başka bir dosya türü olabilir; Base64'ten Dosyaya aracı bu türü belirleyebilir.
PDF iniyor ama açılmıyor. Sorun ne?

Büyük olasılıkla Base64 kesilmiştir. Loglar, konsollar ve veritabanı araçları uzun değerleri sık sık kısaltır. Sonu eksik bir PDF okunamaz, çünkü her sayfanın yerini belirten çapraz başvuru tablosu dosyanın sonuna yakın bir yerde saklanır. Değerin tamamını yeniden kopyalayın; en iyisi orijinal yanıtı bir dosyaya kaydetmektir.

Telefonumda önizleme boş görünüyor. Dosya bozuk mu?

Öyle olması gerekmiyor. Bazı mobil tarayıcılar PDF'yi sayfa içinde gösteremez. Kontrol etmek için dosyayı indirip bir PDF okuyucuda açın.

Parola korumalı bir PDF'nin kodunu çözebilir miyim?

Evet. Kod çözme, şifrelemesi de dahil olmak üzere dosyayı bayt bayt geri yükler. Önizleme parola isteyebilir veya boş kalabilir; indirilen dosya ise parolayı girdiğinizde herhangi bir PDF okuyucuda açılır.

Belge herhangi bir yere yükleniyor mu?

Hayır. Kod çözme ve önizleme tarayıcınızda gerçekleşir; bu nedenle sözleşmeler, maaş bordroları veya tıbbi kayıtlar gibi gizli PDF'ler cihazınızda kalır.