THotPDF.DecodeLoadedImageRegionAtResolution-metoden
Dekoder et kildekoordinat-rektangel samtidig som dekoderen kan velge et lavere oppløsningsnivå som fortsatt tilfredsstiller den forespurte utdatastørrelsen
Deklarasjon
function DecodeLoadedImageRegionAtResolution(
AImageStream: THPDFStreamObject;
RegionLeft, RegionTop, RegionRight, RegionBottom,
TargetPixelWidth, TargetPixelHeight: Integer): TBitmap;
Enhet
HPDFDoc
Parametre
| Navn | Formål |
|---|---|
AImageStream | Innlastet bilde-XObject-strøm som skal dekodes |
RegionLeft | Inkluderende venstre kildekoordinat |
RegionTop | Inkluderende øvre kildekoordinat |
RegionRight | Ekskluderende høyre kildekoordinat |
RegionBottom | Ekskluderende nedre kildekoordinat |
TargetPixelWidth | Minimum nyttig dekodet bredde før endelig gjengivelsesskala |
TargetPixelHeight | Minimum nyttig dekodet høyde før endelig gjengivelsesskala |
Returverdi
Returnerer en nyttilordnet bitmap for det klemte ikke-tomme regionet, eller nil når bildet eller den forespurte geometrien ikke kan dekodes
Valg av oppløsning
- JPEG 2000 velger den største toer-potens-reduksjonen der både dekodet bredde og høyde forblir minst den forespurte pikselstørrelsen
- Valget under-oppløser aldri noen dimensjon og unngår derfor en unødvendig oppskalering før tegning
- Nativt regionvalg og oppløsningsvalg kombineres før wavelet-rekonstruksjon og pikselutvidelse
- Krasjisolerte JPEG 2000-arbeidere mottar samme reduksjonsforespørsel og bruker et tilsvarende mindre utdatabudsjett
- Når nativ fallback håndterer et region som krysser flere kode-strøm-fliser, dekodes uavhengige fliser samtidig innenfor kansellerings-, arbeiderantalls-, utdata- og toppminne-grenser
- Parallelle resultater komponeres i stabil rad-major rekkefølge, og utilstrekkelig arbeidsbudsjett velger transparent den sekvensielle regionsbanen
- Et JPEG-bilde i DeviceRGB eller DeviceGray går gjennom en DCT-dekoder med redusert størrelse når området eller den forespurte størrelsen avviker fra hele bildet: det dekoder i en redusert DCT-skala som fortsatt dekker forespørselen og returnerer området resamplet til nøyaktig den forespurte størrelsen
- Andre støttede bildeformater, og JPEG-bilder i andre fargerom, bevarer eksakt regionavkoding og overlater eventuell endelig skalering til opptakeren
- Opptakeren eier en ikke-null returnert bitmap og må frigjøre den
Eksempel
Preview := PDF.DecodeLoadedImageRegionAtResolution(
ImageStream, 0, 0, SourceWidth, SourceHeight, 320, 200);
try
Canvas.StretchDraw(TargetRect, Preview);
finally
Preview.Free;
end;