RecolorDocument

Kleur

Beschrijving

Zet elke pagina van het document om naar één kleurruimte

Syntaxis

Delphi

Function TPDFlib.RecolorDocument(TargetSpace: Integer): Integer;

Parameters

TargetSpace1 grey, 2 RGB, 3 CMYK.

Retourwaarden

CountHoeveel kleuren in het hele document zijn geconverteerd
0Er hoefde niets te worden geconverteerd of TargetSpace viel buiten het bereik 1 tot en met 3. Een pagina waarvan de kleuren al in de doelruimte staan, behoudt de oorspronkelijke bytes

Opmerkingen

De conversie is de gewone device-rekunde, geen kleurbeheerde: een document dat alleen DeviceRGB noemt draagt geen profiel om doorheen te converteren. RGB wordt grijs via de luminantiegewichten van ITU-R BT.601, en CMYK converteert zoals beschreven in ISO 32000-1 §8.6.4.4 — precies wat een viewer al doet wanneer hij een CMYK-document op een scherm toont

Kleuren die via een ICCBased-, Separation-, Indexed- of Pattern-ruimte zijn gezet blijven onaangetast. Hun componenten lezen zonder hun profiel zou veranderen hoe de pagina eruitziet in plaats van behouden, dus zo'n document wordt alleen geconverteerd in de delen die rechtstreeks een device space noemen

Ook de afbeeldingen die een pagina tekent worden geconverteerd, wanneer de afbeelding acht bits per component heeft, een device-kleurruimte en ofwel geen compressie of gewone Flate. Een JPEG- of faxafbeelding zou opnieuw moeten worden gecodeerd, wat een andere bewerking is dan het converteren van zijn kleuren, dus die houdt zijn eigen bytes

Een geïndexeerde afbeelding wordt in plaats daarvan via zijn kleurentabel geconverteerd, zodat zijn samples de indexen houden die ze al hadden. Dat pad kijkt niet naar hoe de samples zijn ingepakt of gecomprimeerd, en zo converteert een palet-screenshot of grafiek gewoon, ook al konden zijn samples niet worden herschreven

Gradiënten worden geconverteerd met de functies erachter, zodat de kleurruimte en de stops altijd overeenkomen. Een gradiënt opgebouwd uit een sampled- of PostScript-functie houdt zijn eigen kleuren, net als de mesh shading-types, die hun kleuren in een stream dragen in plaats van in een functie

Soft masks en stencil masks blijven ongemoeid. Beide worden gelezen als coverage in plaats van kleur, en het converteren van één ervan zou de pagina het masker als afbeelding laten tonen

Geometrie, tekst, clipping en alle andere operatoren worden ongewijzigd teruggeschreven

De geselecteerde pagina wordt hersteld wanneer de aanroep terugkeert

Voorbeeld

// Send a mixed-colour document to a press that expects CMYK
PDF.LoadFromFile('brochure.pdf', '');
Converted := PDF.RecolorDocument(3);
PDF.SaveToFile('brochure-cmyk.pdf');

Zie ook

RecolorPage, SetFillColor, SetFillColorCMYK