Hallo Marco,
nachdem das Script bei Dir jetzt läuft, möchte ich es hier auch der Öffentlichkeit zur Verfügung stellen.
Das Skript "KernPairsOptical.js" weist definierten Zeichenpaaren das Attribut "optisches Kerning" zu. Die Zeichenpaare sind in einer externen Datei "KernPairsOptical.txt" definiert. Skript und Zeichenpaarliste müssen im selben Verzeichnis (Scripts) liegen.
Hier das Skript:
// KernPairsOptical.js
//
var myDoc = app.activeDocument;
var myWords = [""];
var myCounter=0;
var TextFileName="KernPairsOptical.txt"
myScriptFileName = app.activeScript;
myScriptFile = File(myScriptFileName);
myFolder = myScriptFile.parent;
myFindChangeFileName = myFolder + "/" + TextFileName;
myFindChangeFile = File(myFindChangeFileName);
myResult = myFindChangeFile.open("r", undefined, undefined);
if(myResult == false){
myFindChangeFile = File.openDialog("Choose the file containing your kerning pairs")
myResult = myFindChangeFile.open("r", undefined, undefined);
}
do{
myLine = myFindChangeFile.readln();
myFindChangeArray = myLine.split("#*#");
if (myFindChangeArray[0].length > 1){
myWords[myCounter] = myFindChangeArray[0];
myCounter+=1;
}
} while(myFindChangeFile.eof == false);
myFindChangeFile.close();
app.findPreferences = null;
app.changePreferences = null;
for (k=0; k < myWords.length; k++){
myChanging(myDoc,myWords[k]);
}
function myChanging(oneRange,oneWord) {
if (oneWord.length>0 && oneWord !=" ") {
myResults = myDoc.search(oneWord,false,true,undefined, undefined, {kerningMethod:"optical"});
}
}
Und hier eine Beispielsliste "
KernPairsOptical.txt" für optisch zu unterschneidende Zeichenpaare:
^9^9
^9^=
^=^9
^9.
.^9
^9,
,^9
^9/
/^9
Entsprechend der Liste oben werden folgende Kombinationen optisch unterschnitten:
1. [Ziffer][Ziffer]
2. [Ziffer][Halbgeviertstrich]
3. [Halbgeviertstrich][Ziffer]
4. [Ziffer][Punkt]
5. [Punkt][Ziffer]
6. [Ziffer][Komma]
7. [Komma][Ziffer]
8. [Ziffer][Schrägstrich]
9. [Schrägstrich][Ziffer]
Das Skript läßt sich (später) z.B. auch zur Behandlung von Zeichenfolgen mit "geschützten Umbrüchen" (kein Umbruch) ausbauen (z.B. "S. [Ziffer]", "v. [Ziffer]") - alternativ zum geschützten Trennzeichen, das immer eine feste Breite hat. Auch hier stünden dann die nicht zu umbrechenden Zeichenfolgen in einer externen Textdatei.