THPDFRenderDocAccess Record

Binder rendereren til dokumenttjenester for å løse referanser, lese strømmer, dekode bilder, finne fonter og vurdere lag-synlighet

Deklarasjon

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;

Enhet

HPDFPageRenderer

Felt

FeltFormål
ContextKalleroppgitt kontekstpeker som sendes som første argument til hver callback; dokumentet binder seg selv her
SharedCacheRenderer-cache som flere sider kan dele når ShareRenderCaches er slått på
ShareRenderCachesTrue når dokumentet lar samtidige renderere dele dekode-cacher
ResolveObjectGenerisk oppløser av indirekte referanser for enhver objekttype; lagt til fordi de typede oppløserne returnerer nil for ikke-matchende typer
ResolveDictionaryLøser en indirekte referanse til et ordbokobjekt, nil for andre typer
ResolveStreamLøser en indirekte referanse til et strømobjekt
ReadDecodedStreamBytesLeser en strøm fullt dekodet inn i en byte-matrise
AcquireDecodedImageStreamDekoder et bilde-XObject til et delt, referansetalt bitmap-håndtak
DecodeImageStreamDekoder et bilde-XObject til en bitmap eid av kalleren
BeginProgressiveImageDecodeStarter en avbrytbar progressiv dekoder for en stor bildestrøm
DecodeImageRegionDekoder et delområde av et bilde i ønsket pikselstørrelse
AcquireDecodedImageRegionOmrådevariant som returnerer et delt, referansetalt bitmap-håndtak
DecodeInlineImageDekoder et inline-bilde fra rå ID..EI-byte og det normaliserte BI-nøkkelsettet, utenom objektnummer-cachen; nil-hook betyr at inline-bilder ikke rendres
DecodeColorKeyMaskGjør en bild-XObjects color-key-/Mask-array om til en myk maske i hvitt og svart i bildets størrelse; nil når bildet ikke har en brukbar color-key-maske, og en nil-hook tegner slike bilder umaskert
ResolveFontDictSlår opp en fontordbok etter ressursnøkkel og følger indirekte referanser på /Resources- og /Font-nivåene; nil når fraværende
EvalOCVisibilityVurderer et /OC-egenskapsobjekt mot dokumentets lagtilstander; nil-hook eller et True-resultat betyr at innholdet tegnes
CancellationTokenKanselleringstoken som sjekkes under lange dekodeoperasjoner
ColourIntentFargehåndteringsintensjon anvendt på den rendrede grafikktilstanden
FallbackPolicyVelger om ustøttede funksjoner ignoreres, rapporteres eller behandles som strenge feil
FallbackDiagnosticLimitBegrenser antallet diagnostiske meldinger som samles inn under tilbakefall
OverprintPreviewSlår på simulering av overprint-forhåndsvisning
ProofICCProfileICC-profilbyte brukt på proofing-siden av fargepipelinen
OutputICCProfileICC-profilbyte som beskriver utdataenheten
BlackPointCompensationSlår på black point-kompensasjon i ICC-transformasjonen
SeparationPlateNavnet på separasjonsplaten som skal isoleres; tom gir normal rendering

Bruksnotater

Relaterte API-er