Korrektur: Sonderfarben dynamisch zuordnen mit „Beliebigen JavaScript-gesteuerten Korrekturen“

Auch wenn sich viele Aufgaben in pdfToolbox ganz ohne JavaScript lösen lassen, ist der Einsatz von JavaScript in manchen Fällen unvermeidlich. Ein typisches Beispiel ist die Zuordnung von Sonderfarben (also das ändern des Namens und/oder der Farbdefinition einer Sonderfarbe) für eine variable Anzahl von Sonderfarben.

Da die Umsetzung in JavaScript anspruchsvoll sein kann, stellt dieser Artikel drei verschiedene Ansätze vor, die sich ohne umfangreiche JavaScript-Kenntnisse an Ihre Anforderungen anpassen lassen.

"Beliebige JavaScript-gesteuerte Korrekturen"?

pdfToolbox bietet die Möglichkeit, Prüfungen und Korrekturen mithilfe von JavaScript zu erstellen. Erstellen Sie dazu eine neue Korrektur und wählen Sie als Korrekturtyp "Beliebige JavaScript-gesteuerte Korrekturen" aus. Anstelle der üblichen Bedienelemente der Benutzeroberfläche wird lediglich ein Bereich angezeigt, in dem Sie JavaScript-Code eingeben können.

Mit diesem Korrekturtyp können Sie JavaScript schreiben, das als Ergebnis ein bestimmtes JavaScript-Objekt erzeugt. Dieses Objekt wird von pdfToolbox interpretiert und in die entsprechenden Korrekturen umgesetzt.

Testdatei

Die Testdatei können Sie hier herunterladen:

Diese Datei enthält zwei Sonderfarben:

  • Green, die als Akzentfarbe verwendet wird,
  • CutContour, die für die Schneidekontur verwendet wird (in der Datei in magenta dargestellt).

Verwendung von JavaScript und einem Array

Die einfachste Möglichkeit, "Beliebige JavaScript-gesteuerte Korrekturen" einzurichten, besteht darin, die gesamte Konfiguration direkt in JavaScript vorzunehmen  vorausgesetzt, Sie sind mit JavaScript vertraut. In diesem Fall beginnt der JavaScript-Code mit einer kleinen Liste:

// A JavaScript array that contains the remappings we want to do
const mappings = [
	{
		sourceName: "Green",
		destinationName: "Magenta",
		destinationColor: [ 0, 100, 0, 0 ]
	},
	{
		sourceName: "CutContour",
		destinationName: "Dieline",
		destinationColor: [ 100, 0, 0, 0 ]
	}
];
Click to copy

Dieses JavaScript-Array enthält die Sonderfarben, nach denen gesucht werden soll, sowie die Zuordnung zu den neuen Werten (sowohl den neuen Namen als auch die neuen alternativen Farbwerte).

Laden Sie die folgende Korrektur herunter und testen Sie es mit der Beispieldatei:

Verwendung einer JSON-Datei

Doch warum die Liste der Sonderfarben direkt in der Korrektur pflegen? Stattdessen können Sie die Zuordnungen in einer externen Datei speichern und der Korrektur lediglich den Pfad zu dieser Datei als Variable übergeben.

Das macht die Pflege deutlich einfacher.

Legen Sie dazu eine JSON-Datei an. Die "Beliebige JavaScript-gesteuerte Korrektur" liest deren Inhalt ein und verwendet die darin definierten Zuordnungen.

Laden Sie dafür die JSON-Datei sowie die angepasste Korrektur herunter:

Verwendung einer CSV-Datei

Wenn Sie mit JavaScript nicht so vertraut sind, ist auch eine separate JSON-Datei möglicherweise nicht die ideale Lösung. Eine CSV-Datei lässt sich in vielen Fällen einfacher erstellen und pflegen.

Auch das ist mit pdfToolbox problemlos möglich.

Da pdfToolbox über eine vollständige JavaScript-Engine verfügt, kann eine CSV-Datei eingelesen und daraus die Zuordnung der Sonderfarben erstellt werden – ganz ähnlich wie bei der JSON-Datei.

Die verwendete CSV-Datei sowie das zugehörige Beispiel können Sie hier herunterladen: