Copy link to clipboard
Copied
Hallo zusammen
Für meinen Kunden haben ich vor ein paar Jahren mehrere Bücher (im InDesign) mit sehr vielen verknüpften Illustrationen aus Illustrator erstellt. Damals wollte der Kunde mit drei Pantonefarben plus Schwarz arbeiten. Heute, für die Nachdrucke, soll alles in CMYK aufbereitet werden.
Im InDesign ist es ja kein Problem ein Farbe zu ersetzen. Im Illustrator ist das mega komplitziert. Eventuell bin ich mit meinem Wissen irgendwo stecken geblieben und jemand von euch, kann mir einen einfachen Weg aufzeigen?
Hier nochmal die «Situation»: Jede der drei Pantonefarben soll neu einem bestimmten CMYK-Wert zugewiesen werden, alle eingefärbten Flächen in den Illustrationen sollen dann den neuen CMYK-Wert bekommen. Es sind insgesamt über 700 Illustrationen davon betroffen.
Ich bedanke mich zum Voraus
LiGrü
Connu
Copy link to clipboard
Copied
Eventuell geht das in der InDesign Druckfarbenverwaltung schneller, aber wenn wirklich die Illu-Dateien geändert werden sollen:
Farbfelder bearbeiten, jeweils in Prozessfarbe ändern und Werte eintragen.
Copy link to clipboard
Copied
Hi @corai here is a quick script that may help. You must configure it by editing the `conversions` object, which I hope will be understandable. You can open multiple files before running the script. Let me know if it helps.
- Mark
/**
* Change Color In All Open Documents.js
*
* Usage:
* 1. Configure script by editing the `conversions` object below.
* 2. Open your documents.
* 3. Run script.
*
* @author m1b
* @version 2025-10-27
* @discussion https://community.adobe.com/t5/illustrator-discussions/pantonefarbfelder-zu-cmyk-umwandeln/m-p/15563791
*/
(function () {
var conversions = {
/* 'Swatch name': [C, M, Y, K] */
'PANTONE 2415 C': [45, 100, 0, 0],
'PANTONE 2294 C': [62, 10, 100, 0],
'PANTONE 2090 C': [79, 81, 0, 0],
'PANTONE 4013 C': [16, 64, 92, 5],
};
var docs = app.documents;
if (0 === docs.length)
return alert('Please open one or more documents and try again.');
var docNames = [];
for (var i = 0; i < docs.length; i++)
docNames.push(docs[i].name);
var results = [];
for (var i = 0, doc, swatch; i < docNames.length; i++) {
doc = app.documents.getByName(docNames[i]);
counter = 0;
conversion:
for (var colorName in conversions) {
try {
swatch = doc.swatches.getByName(colorName);
} catch (error) {
results.push('ERROR ' + error.message + ' for "' + colorName + '" in "' + docNames[i] + '"');
continue conversion;
}
if (
!conversions.hasOwnProperty(colorName)
|| !swatch
|| !swatch.color
|| 'SpotColor' !== swatch.color.constructor.name
)
continue conversion;
// set the color
swatch.color.spot.color = makeColor(conversions[colorName]);
counter++
}
results.push(counter + ' colors converted in "' + docNames[i] + '"');
}
alert('Convert Colors:\n' + results.join('\n'));
})();
/**
* Makes a color from a array of color values;
* @author m1b
* @version 2022-10-03
* @param {Array<Number>} breakdown - the color values.
* @returns {GrayColor|RGBColor|CMYKColor}
*/
function makeColor(breakdown) {
var c;
if (breakdown.length == 1) {
c = new GrayColor();
c.gray = Math.min(breakdown[0], 100);
}
else if (breakdown.length == 3) {
c = new RGBColor();
c.red = Math.min(breakdown[0], 255);
c.green = Math.min(breakdown[1], 255);
c.blue = Math.min(breakdown[2], 255);
}
else if (breakdown.length == 4) {
c = new CMYKColor();
c.cyan = Math.min(breakdown[0], 100);
c.magenta = Math.min(breakdown[1], 100);
c.yellow = Math.min(breakdown[2], 100);
c.black = Math.min(breakdown[3], 100);
}
return c;
};
Edit: typo.
Find more inspiration, events, and resources on the new Adobe Community
Explore Now