PDFium Delphi Component Docs

Yapı dolaşımı ve önbellek

Component: TPdf  ·  Unit: PDFium
Etiketli PDF yapısını kademeli olarak okur ya da eksiksiz revizyon duyarlı sayfa anlık görüntülerini yeniden kullanır

ReadStructureElements

function ReadStructureElements(PageNumber: Integer; const Options: TPdfStructureReadOptions; out Status: TPdfStructureReadStatus): TPdfStructureElements;

Yinelemeli ön sıra (pre-order) dolaşımı kullanır ve kararlı Level ile ParentIndex değerlerine sahip, çağıranın sahip olduğu düzleştirilmiş bir anlık görüntü döndürür

Her TPdfStructureElement; hiyerarşi bilgilerini MarkedContentIDs, ChildCount, ChildMarkedContentIDs ve AttributeCount üzerinden, tablo yapısını HasHeaders, HeadersIds ve ColSpan üzerinden, ayrıca baskı ve referans işaret bayraklarını HasPrintField ve HasReference üzerinden bildirir

Rol eşlemesi RoleMappedNamespaceUri ve RoleMappedTypeName üzerinden, ilişkili dosyalar HasAssociatedFile, AssociatedFileRelationship, AssociatedFileDescription, AssociatedFileDeclaredInCatalog, AssociatedFileDeclaredInStructure, AssociatedFileInEmbeddedFilesNameTree, AssociatedFileHasReadingOrder ve AssociatedFileReadingOrderIndex üzerinden, ek açıklama bilgileri ise AnnotationSubtype, AnnotationContents, AnnotationAlternateText, IsArtifact, widget işaret bayrakları WidgetCount ve HasAppearance ile FieldAlternateName üzerinden açığa çıkarılır

MaxDepth, MaxElements, MaxAttributeValues ve DeadlineMilliseconds, yerleşik işi ve yönetilen ayırmayı sınırlar

IncludeAttributes=False, öznitelik değerlerinin oluşturulmasını atlayarak yapı metnini, hiyerarşiyi ve MCID'leri korur

Herhangi bir bütçeye ulaşıldığında, süre dolduğunda ya da bir ziyaretçi dolaşımı durdurduğunda Status.Completed false olur

Status.ElementsVisited ve Status.AttributeValuesVisited yapılan işi sayarken; Status.DepthLimitReached, Status.ElementLimitReached, Status.AttributeLimitReached ve Status.DeadlineReached hangi bütçenin geçişi durdurduğunu belirler

VisitStructureElements

function VisitStructureElements(PageNumber: Integer; const Options: TPdfStructureReadOptions; Visitor: TPdfStructureElementVisitor; out Status: TPdfStructureReadStatus): Integer;

Sayfa dizisinin tamamını ayırmadan her öğe için Visitor geri çağrısını bir kez çağırır

Status.VisitorStopped üzerinden bildirilen normal bir erken duruş için geri çağırmanın KeepGoing parametresini false yapın

Her geri çağırma, geri çağırma döndükten sonra saklanabilen yönetilen öğe verisi alır ve hiçbir yerleşik yapı tanıtıcısı (handle) açığa çıkarılmaz

StructureElementsForPage

property StructureElementsForPage[PageNumber: Integer]: TPdfStructureElements; // read only

PageNumber değerini ya da OnPageChange olayını tetiklemeden birden başlayan herhangi bir sayfayı okur

Varsayılan bütçeyle tamamlanan sonuçlar; StructureElements, TPdfView.StructureElements, okunabilir içerik, reflow, yapılandırılmış metin ve erişilebilirlik doğrulaması tarafından kullanılan paylaşılan LRU önbelleğine girer

İç içe dinamik diziler ve öznitelik veri blokları derin kopyalanır; böylece döndürülen bir anlık görüntüyü değiştirmek önbelleği ya da PDF'i değiştiremez

StructureCacheCapacity

property StructureCacheCapacity: Integer; // read and write, default 8

En son kullanılan sırasına göre saklanan eksiksiz sayfa anlık görüntülerinin sayısını sınırlar

Önbellekteki anlık görüntüleri serbest bırakmak ve gelecekteki önbelleğe almayı devre dışı bırakmak için kapasiteyi sıfıra ayarlayın

Negatif kapasite değerleri EPdfError fırlatır

StructureCacheCount

property StructureCacheCount: Integer; // read only

Geçerli sayfa anlık görüntülerinin güncel sayısını döndürür

StructureCacheHitCount and StructureCacheMissCount

property StructureCacheHitCount: Int64; // read only
property StructureCacheMissCount: Int64; // read only

Bileşen örneği için kümülatif arama telemetrisini açığa çıkarır

Düzenlemeler, kümülatif sayaçları korurken etkilenen sayfayı ya da önbelleğin tamamını geçersiz kılar

Default budgets

MaxDepth256
MaxElements100000
MaxAttributeValues100000
DeadlineMilliseconds0, süre limiti yok anlamında
IncludeAttributesTrue

See Also

StructureElements, ReadableContent, ValidatePdfUaStructureElements