RecolorDocument
Farbe
Beschreibung
Überführt jede Seite des Dokuments in einen einzigen Farbraum
Syntax
Delphi
Function TPDFlib.RecolorDocument(TargetSpace: Integer): Integer;Parameter
| TargetSpace | 1 Grau, 2 RGB, 3 CMYK |
|---|
Rückgabewerte
| Count | Die Anzahl der im gesamten Dokument konvertierten Farben |
|---|---|
| 0 | Es musste nichts konvertiert werden oder TargetSpace lag außerhalb von 1 bis 3. Eine Seite, deren Farben sich bereits im Zielfarbraum befinden, behält ihre ursprünglichen Bytes. |
Anmerkungen
Die Konvertierung verwendet normale Gerätearithmetik und kein Farbmanagement: Ein Dokument, das nur DeviceRGB angibt, enthält kein Profil, über das konvertiert werden könnte. RGB wird anhand der Luminanzgewichte von ITU-R BT.601 in Grau umgewandelt, CMYK entsprechend ISO 32000-1 §8.6.4.4; genauso verfährt bereits ein Viewer bei der Anzeige eines CMYK-Dokuments auf einem Bildschirm.
Farben, die über einen ICCBased-, Separation-, Indexed- oder Pattern-Farbraum festgelegt wurden, bleiben unverändert. Das Lesen ihrer Komponenten ohne ihr Profil würde das Erscheinungsbild der Seite ändern, statt es zu erhalten; ein solches Dokument wird daher nur in den Teilen konvertiert, die direkt einen geräteabhängigen Farbraum benennen
Auch die von einer Seite gezeichneten Bilder werden konvertiert, wenn das Bild acht Bit pro Komponente, einen Gerätefarbraum und entweder keine Komprimierung oder einfaches Flate besitzt. Ein JPEG- oder Faxbild müsste neu codiert werden, was eine andere Operation als die Konvertierung seiner Farben ist; daher behält es seine eigenen Bytes
Ein indiziertes Bild wird stattdessen über seine Farbtabelle konvertiert, sodass seine Abtastwerte die bereits vorhandenen Indizes behalten. Dieser Pfad ist unabhängig davon, wie die Abtastwerte gepackt oder komprimiert sind; dadurch kann ein Screenshot oder Diagramm mit Palette konvertiert werden, obwohl seine Abtastwerte nicht neu geschrieben werden konnten
Verläufe werden zusammen mit den zugrunde liegenden Funktionen konvertiert, sodass Farbraum und Stopps immer übereinstimmen. Ein aus einer abgetasteten oder PostScript-Funktion erstellter Verlauf behält seine eigenen Farben, ebenso die Mesh-Shading-Typen, deren Farben in einem Stream statt in einer Funktion liegen
Softmasks und Schablonenmasken bleiben unverändert. Beide werden als Abdeckung statt als Farbe gelesen; eine Konvertierung würde die Maske auf der Seite als Bild anzeigen.
Geometrie, Text, Clipping und jeder andere Operator werden unverändert zurückgeschrieben.
Die ausgewählte Seite wird bei der Rückkehr des Aufrufs wiederhergestellt.
Beispiel
// Send a mixed-colour document to a press that expects CMYK
PDF.LoadFromFile('brochure.pdf', '');
Converted := PDF.RecolorDocument(3);
PDF.SaveToFile('brochure-cmyk.pdf');