THPDFRenderDocAccess Kaydı

Renderer'ı, referans çözümleme, stream okuma, görsel çözümleme, font bulma ve layer görünürlüğü değerlendirme işleri için document servislerine bağlar

Bildirim

THPDFRenderDocAccess= record
  Context: Pointer;
  SharedCache: THPDFRendererSharedCache;
  ShareRenderCaches: boolean;
  // v2.375.0 generic indirect-ref resolver (any object type). The typed
  // Resolve* fields below predate it and return nil for non-matching
  // types, which silently dropped indirect refs to arrays (e.g. a
  // /ColorSpace entry pointing at a [/Separation ...] array object)
  ResolveObject: function(Context: Pointer; Obj: THPDFObject): THPDFObject;
  ResolveDictionary: function(Context: Pointer; Obj: THPDFObject): THPDFDictionaryObject;
  ResolveStream: function(Context: Pointer; Obj: THPDFObject): THPDFStreamObject;
  ReadDecodedStreamBytes: function(Context: Pointer; Stream: THPDFStreamObject; out Bytes: TBytes): boolean;
  AcquireDecodedImageStream: function(Context: Pointer;
    Stream: THPDFStreamObject): IHPDFDecodedBitmapHandle;
  DecodeImageStream: function(Context: Pointer; Stream: THPDFStreamObject): TBitmap;
  BeginProgressiveImageDecode: function(Context: Pointer;
    Stream: THPDFStreamObject;
    CancellationToken: THPDFCancellationToken): IHPDFProgressiveImageDecoder;
  DecodeImageRegion: function(Context: Pointer; Stream: THPDFStreamObject;
    RegionLeft, RegionTop, RegionRight, RegionBottom,
    DesiredWidth, DesiredHeight: Integer): TBitmap;
  AcquireDecodedImageRegion: function(Context: Pointer;
    Stream: THPDFStreamObject; RegionLeft, RegionTop, RegionRight,
    RegionBottom, DesiredWidth,
    DesiredHeight: Integer): IHPDFDecodedBitmapHandle;
  // v2.425.0 inline-image decoder: builds a throwaway stream from the raw
  // ID..EI bytes and the normalised BI key set, then decodes it without the
  // ObjectNumber-keyed cache (inline images have no object number). Returns
  // a TBitmap the caller owns, or nil on failure. Nil hook = inline images
  // are not rendered (legacy behaviour)
  DecodeInlineImage: function(Context: Pointer; const Bytes: TBytes;
    const Keys: THPDFInlineImgKeys): TBitmap;
  // Colour-key /Mask array of an image XObject as a soft mask, white where
  // the image shows and black where it is masked out. Returns a TBitmap the
  // caller owns, or nil when the image has no usable colour-key mask; a nil
  // hook draws such images unmasked
  DecodeColorKeyMask: function(Context: Pointer;
    Stream: THPDFStreamObject): TBitmap;
  // Look up a font dictionary by resource key in a Resources dict, following
  // indirect refs at both /Resources and /Font levels. Returns nil if absent
  ResolveFontDict: function(Context: Pointer; PageObj: THPDFDictionaryObject;
    const FontKey: AnsiString): THPDFDictionaryObject;
  // v2.377.0 optional-content visibility oracle: evaluates an /OC property
  // object (OCG or OCMD) against the document's layer states. Nil hook or
  // a True result means the content is drawn
  EvalOCVisibility: function(Context: Pointer; PropObj: THPDFObject): boolean;
  CancellationToken: THPDFCancellationToken;
  ColourIntent: Integer;
  FallbackPolicy: THPDFRenderFallbackPolicy;
  FallbackDiagnosticLimit: Integer;
  OverprintPreview: boolean;
  ProofICCProfile: TBytes;
  OutputICCProfile: TBytes;
  BlackPointCompensation: boolean;
  SeparationPlate: AnsiString;
end;

Birim

HPDFPageRenderer

Alanlar

AlanAmaç
ContextHer callback'e ilk argüman olarak geçilen, çağıranın sağladığı context pointer'ı; belge kendisini buraya bağlar
SharedCacheShareRenderCaches etkinken birkaç sayfanın paylaşabildiği renderer cache'i
ShareRenderCachesBelge, eşzamanlı renderer'ların decode cache'lerini paylaşmasına izin veriyorsa True
ResolveObjectHerhangi bir nesne türü için genel indirect-reference çözümleyici; tipli çözümleyiciler uyuşmayan türlerde nil döndürdüğü için eklendi
ResolveDictionaryBir indirect reference'i dictionary nesnesine çözümler; diğer türlerde nil
ResolveStreamBir indirect reference'i stream nesnesine çözümler
ReadDecodedStreamBytesBir stream'i tamamen çözümlenmiş olarak bayt dizisine okur
AcquireDecodedImageStreamBir image XObject'i paylaşımlı, referans sayılmış bir bitmap handle'ına çözer
DecodeImageStreamBir image XObject'i çağıranın sahipliğindeki bir bitmap'e çözer
BeginProgressiveImageDecodeBüyük bir image stream için iptal edilebilir progressive decoder başlatır
DecodeImageRegionBir görselin alt bölgesini istenen piksel boyutunda çözer
AcquireDecodedImageRegionPaylaşımlı, referans sayılmış bir bitmap handle'ı döndüren bölge varyantı
DecodeInlineImageBir inline image'i ham ID..EI baytlarından ve normalleştirilmiş BI key kümesinden, nesne numarası cache'ini atlayarak çözer; nil hook, inline image'lerin render edilmediği anlamına gelir
DecodeColorKeyMaskBir image XObject'in color-key /Mask dizisini, image boyutunda siyah-beyaz bir soft mask'ye dönüştürür; görselin kullanılabilir color-key maskesi yoksa nil ve nil hook, bu tür image'leri maskesiz çizer
ResolveFontDictBir font dictionary'sini resource key ile arar; /Resources ve /Font düzeylerindeki indirect reference'leri izler; yoksa nil
EvalOCVisibilityBir /OC property nesnesini belge layer durumlarına karşı değerlendirir; nil hook veya True sonucu, içeriğin çizileceği anlamına gelir
CancellationTokenUzun decode işlemleri sırasında kontrol edilen cancellation token
ColourIntentRender edilen graphics state'e uygulanan renk işleme intent'i
FallbackPolicyDesteklenmeyen özelliklerin yok sayılacağını, bildirileceğini ya da katı başarısızlık sayılacağını seçer
FallbackDiagnosticLimitDüşüş sırasında toplanan tanılama mesajlarının sayısını sınırlar
OverprintPreviewOverprint preview simülasyonunu etkinleştirir
ProofICCProfileRenk hattının proofing tarafı için kullanılan ICC profil baytları
OutputICCProfileÇıktı aygıtını tanımlayan ICC profil baytları
BlackPointCompensationICC dönüşümünde black point compensation'ı etkinleştirir
SeparationPlateİzole edilecek separation plate'inin adı; boşken normal render yapılır

Kullanım notları

İlgili API'ler