THPDFRenderDocAccess Record

Binder rendereren til dokumenttjenester for at opløse referencer, læse streams, afkode billeder, finde fonts og vurdere lag-synlighed

Deklaration

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;

Enhed

HPDFPageRenderer

Felter

FeltFormål
ContextKontekstpeger angivet af kalderen, som sendes som første argument til ethvert callback; dokumentet binder sig selv her
SharedCacheRenderer-cache, som flere sider kan dele, når ShareRenderCaches er slået til
ShareRenderCachesTrue, når dokumentet lader samtidige renderere dele afkodningscacher
ResolveObjectGenerisk indirect-reference-resolver for enhver objekttype; tilføjet, fordi de typede resolvere returnerer nil for ikke-matchende typer
ResolveDictionaryOpløser en indirect reference til et dictionary-objekt, nil for andre typer
ResolveStreamOpløser en indirect reference til et stream-objekt
ReadDecodedStreamBytesLæser en stream fuldt afkodet ind i et byte-array
AcquireDecodedImageStreamAfkoder et image XObject til et delt bitmap-handle med referencetælling
DecodeImageStreamAfkoder et image XObject til en bitmap, som kalderen ejer
BeginProgressiveImageDecodeStarter en annullerbar progressiv decoder for en stor billedstream
DecodeImageRegionAfkoder en underregion af et billede i en ønsket pixelstørrelse
AcquireDecodedImageRegionRegionvariant, der returnerer et delt bitmap-handle med referencetælling
DecodeInlineImageAfkoder et inline-billede ud fra rå ID..EI-bytes og det normaliserede BI-nøglesæt under omgåelse af objektnummer-cachen; nil-hook betyder, at inline-billeder ikke renderes
DecodeColorKeyMaskOmskaber et billed-XObjects color-key-/Mask-array til en hvid-og-sort soft mask i billedets størrelse; nil, når billedet ikke har en brugbar color-key-maske, og en nil-hook tegner sådanne billeder umaskeret
ResolveFontDictSlår en fontordbog op via ressourcenøglen og følger indirect references på /Resources- og /Font-niveauerne; nil, når den mangler
EvalOCVisibilityVurderer et /OC-egenskabsobjekt op mod dokumentets lagtilstande; nil-hook eller True-resultat betyder, at indholdet tegnes
CancellationTokenCancellation token, der kontrolleres under lange afkodningsoperationer
ColourIntentFarvehåndteringsintent, der anvendes på den renderede graphics state
FallbackPolicyVælger, om ikke-understøttede features ignoreres, rapporteres eller behandles som strenge fejl
FallbackDiagnosticLimitSætter loft over antallet af diagnostiske beskeder, der samles under fallback
OverprintPreviewAktiverer simulering af overprint preview
ProofICCProfileICC-profilbytes, der bruges til proofing-siden af farvepipelinen
OutputICCProfileICC-profilbytes, der beskriver outputenheden
BlackPointCompensationAktiverer black point compensation i ICC-transformationen
SeparationPlateNavnet på den separationsplade, der skal isoleres; tom betyder normal rendering

Brugsnoter

Relaterede API'er