PurgeUnusedResources

Belge işleme, İyileştirme

Açıklama

Seçili sayfanın içerik katmanlarını ve geçişli kaynak bağımlılıklarını tarar, ardından geçerli kaynak kapsamında başvurulmayan adlandırılmış kaynakları kaldırır

Varsayılan seçenekler Form XObjects, döşeme desenleri, Type 3 glifleri, açıklama görünümleri ve yumuşak maske grupları içine yinelemeli olarak girer; görüntülerle diğer kaynakların başvurduğu renk uzaylarını korur, kullanım dışı /ProcSet dizileriyle boş kaynak kategorilerini kaldırır ve temizleme nedeniyle erişilemez olan dolaylı nesneleri toplar

Sözdizimi

Delphi

Function TPDFlib.PurgeUnusedResources(Const PageRange: WideString= '';
  Options: Integer= PDF_RESOURCE_PURGE_DEFAULT): Integer; Overload;
Function TPDFlib.PurgeUnusedResources(Const PageRange: WideString;
  Options: Integer; Out Stats: TPDFlibResourcePurgeStats): Integer; Overload;

Parametreler

PageRangeDiğer sayfa aralığı API'leriyle aynı söz dizimini kullanan 1 tabanlı bir sayfa aralığı veya tüm sayfalar için boş bir dize
OptionsKaynak temizleme seçeneği sabitlerinin bit düzeyinde birleşimi
StatsTarama, güvenlik, kaldırma ve artık nesne sayaçlarını alır

Seçenekler

PDF_RESOURCE_PURGE_RECURSE_FORMSBaşvurulan Form XObjects öğelerini tarar ve bunların kendi veya devralınmış kaynak kapsamlarına uyar
PDF_RESOURCE_PURGE_REMOVE_PROCSETKullanımdan kaldırılmış /ProcSet dizilerini kaldırır
PDF_RESOURCE_PURGE_REMOVE_EMPTYBoş kaynak kategorisi sözlüklerini kaldırır
PDF_RESOURCE_PURGE_AGGRESSIVE_UNKNOWNBir içerik akışı bilinmeyen bir işleç içerdiğinde temizlemeye olanak tanır
PDF_RESOURCE_PURGE_DRY_RUNBelgeyi değiştirmeden kaldırılabilir adlandırılmış girdileri bildirir
PDF_RESOURCE_PURGE_GARBAGE_COLLECTCanlı temizlemeden sonra erişilemez hâle gelen dolaylı nesneleri toplar
PDF_RESOURCE_PURGE_RECURSE_PATTERNSBaşvurulan döşeme desenlerinin içeriğini ve bağımsız kaynak kapsamını tarar
PDF_RESOURCE_PURGE_RECURSE_TYPE3Başvurulan Type 3 yazı tiplerindeki her CharProc akışını yazı tipi kaynak kapsamını kullanarak tarar
PDF_RESOURCE_PURGE_RECURSE_APPEARANCESNormal, rollover, down ve adlandırılmış durum ek açıklama görünüm akışlarını tarar
PDF_RESOURCE_PURGE_RECURSE_SOFT_MASKSExtGState yumuşak maske sözlüklerinin başvurduğu saydamlık grubu akışlarını tarar
PDF_RESOURCE_PURGE_SCAN_IMAGE_DEPENDENCIESİç içe bağımlılıklar için görüntü XObject öğelerini, açık maskeleri, yumuşak maske görüntülerini ve alternatif görüntüleri inceler
PDF_RESOURCE_PURGE_RECURSE_DEPENDENCIESPattern, Type 3, görünüm, yumuşak maske ve görüntü bağımlılığı analizini birleştirir
PDF_RESOURCE_PURGE_DEFAULTTüm bağımlılık analizini, Form özyinelemesini, ProcSet kaldırmayı, boş kategori kaldırmayı ve çöp toplamayı birleştirir

Dönüş değerleri

Live cleanupKaldırılan adlandırılmış kaynak girdilerinin sayısı
Dry runKaldırılabilecek adlandırılmış kaynak girdilerinin sayısı
0Kaldırılabilir adlandırılmış girdi, seçili sayfa veya yüklenmiş belge yok

Açıklamalar

Tarama, satır içi görüntü sözlüklerindeki özel renk alanları ve kaynak nesnelerinin taşıdığı dolaylı bağımlılıklar dahil Font, XObject, ExtGState, ColorSpace, Pattern, Shading ve Properties başvurularını tanır

Bağımlılık kapanışı görüntü ve gölgelendirme renk alanlarını, Indexed temellerini, Separation ve DeviceN alternatiflerini, Pattern temel alanlarını, ICCBased alternatiflerini, döşeme deseni içeriğini, tüm Type 3 CharProcs değerlerini, ek açıklama görünüm durumlarını, ExtGState yumuşak maske gruplarını, görüntü maskelerini, yumuşak maske görüntülerini ve alternatif görüntüleri kapsar

PDF adları büyük/küçük harfe duyarlı eşleştirilir ve seçilen her sayfanın tüm içerik katmanları temizleme öncesinde birleştirilir

PDF_RESOURCE_PURGE_AGGRESSIVE_UNKNOWN ayarlanmadıkça hatalı biçimlendirilmiş akışlar ve bilinmeyen işleçler, kaynak kapsamlarının tamamını korur

Paylaşılan ve devralınan kaynak sözlükleri değiştirilmeden önce kopyalanır; böylece temizleme seçilen sayfa, Form, desen, Type 3 yazı tipi, görünüm veya yumuşak maske grubuyla sınırlı kalır

Yinelenen akışlar ve bağımlılık girdileri önbelleğe alınmış ayrıştırma sonuçlarını yeniden kullanırken derinlik sınırları ve etkin akış izleme bozuk kaynak döngülerini sonlandırır

İptal Abort üzerinden, bir OnProgress işleyicisinden kullanılabilir

Örnek

var
  Stats: TPDFlibResourcePurgeStats;
  Removed: Integer;
begin
  Removed:= PDF.PurgeUnusedResources('1-20',
    PDF_RESOURCE_PURGE_DEFAULT, Stats);
  PDF.SaveToFile('optimised.pdf');
end;

Ayrıca bkz

TPDFlibResourcePurgeStats, GarbageCollectObjects, OnProgress, Abort