[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste

Fehlende Schriftzeichen filtern

Martin Fischer
  
Beiträge gesamt: 12885

6. Dez 2010, 18:34
Bewertung:

gelesen: 2192

Beitrag als Lesezeichen
> Das ist natürlich ne Möglichkeit aber dadurch wird ja der Text zerstört.

Freilich musst Du das temporär erledigen.

Entweder über undo() wieder zurücknehmen oder das Zeichen vorher in einen dafür eingerichteten temporären Textrahmen kopieren und dort experimentieren.

Mir ist keine andere Methode zur Prüfung, ob ein Zeichen im Font vorhanden ist, bekannt. Und ich glaube, den Hinweis auf diese Methode habe ich mal von Peter Kahrel bekommen.


Siehe etwa die Funktion try_char() in Peters Skript compose_cs_3.jsx.
Code
function try_char (uni, ch, diacr) 
{
var ip = app.selection[0];
var pos = ip_position (app.selection[0]);
try
{
// insert the character
ip.contents = uni;
// create outline
ip.paragraphs[0].characters[pos].createOutlines();
// if we got here it worked, so delete the outline
ip.paragraphs[0].characters[pos].remove();
// insert the character (again)
ip.contents = uni;
exit();
}
catch(_)
{
// couldn't create outline, so delete it
ip.paragraphs[0].characters[pos].remove();
// and create overstrike of ch and diacr
overstrike (stripdot (ch), diacr)
}
}


(Dieser Beitrag wurde von Martin Fischer am 6. Dez 2010, 18:35 geändert)
Änderungsverlauf:
Beitrag geändert von Martin Fischer (Moderator) am 6. Dez 2010, 18:35