RecolorDocument

Färg

Beskrivning

Flyttar varje sida i dokumentet till en och samma färgrymd

Syntax

Delphi

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

Parametrar

TargetSpace1 grå, 2 RGB, 3 CMYK

Returvärden

CountHur många färger som konverterades i hela dokumentet
0Inget behövde konverteras, eller TargetSpace låg utanför 1 till 3 En sida vars färger redan ligger i målfärgrymden behåller sina ursprungliga byte

Anmärkningar

Konverteringen är den vanliga enhetsaritmetiken, inte en färghanterad sådan: ett dokument som bara anger DeviceRGB bär ingen profil att konvertera via. RGB blir grått enligt luminansvikterna i ITU-R BT.601, och CMYK konverteras som beskrivs i ISO 32000-1 §8.6.4.4, vilket är vad ett visningsprogram redan gör när det visar ett CMYK-dokument på skärm

Färger satta via en ICCBased-, Separation-, Indexed- eller Pattern-färgrymd lämnas som de är. Att läsa deras komponenter utan deras profil skulle förändra hur sidan ser ut i stället för att bevara den, så ett sådant dokument konverteras bara i de delar som namnger en enhetsfärgrymd direkt

Bilderna en sida ritar konverteras också, när bilden har åtta bitar per komponent, en enhetsfärgrymd och antingen ingen komprimering eller ren Flate. En JPEG- eller faxbild skulle behöva kodas om, vilket är en annan åtgärd än att konvertera dess färger, så den behåller sina egna byte

En indexerad bild konverteras i stället via sin färgtabell, så dess sampel behåller de index de redan hade. Den vägen bryr sig inte om hur sampelen är packade eller komprimerade, vilket är därför en palettbaserad skärmdump eller ett diagram konverteras även när dess sampel inte skulle kunna skrivas om

Gradienter konverteras tillsammans med funktionerna bakom dem, så färgrymd och stoppunkter håller alltid ihop. En gradient byggd från en samplad eller PostScript-funktion behåller sina egna färger, liksom nätskuggningstyperna, som bär sina färger i en ström i stället för i en funktion

Mjuka masker och schablonmasker lämnas orörda. Båda läses som täckning och inte som färg, och att konvertera en av dem skulle lämna sidan med masken synlig som bild

Geometri, text, klippning och alla andra operatorer skrivs tillbaka oförändrade

Den valda sidan återställs när anropet returnerar

Exempel

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

Se även

RecolorPage, SetFillColor, SetFillColorCMYK