[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste

Skript für die Textauswahl

Kai Rübsamen
Beiträge gesamt: 4684

30. Mai 2016, 17:00
Bewertung:

gelesen: 1781

Beitrag als Lesezeichen
Hallo u. Herzlich Willkommen in der Skriptwerkstatt.

Du musst so denken, wie im UI (und ein bisschen weiter …):

Wenn du die Suche festlegst, musst du sie auch ausführen. Was aber, wenn der User auf 'Abbrechen' geklickt hat? Dann muss auch dein Skript abbrechen.

Die Textstelle nutzt dir ja erstmal nichts. Du musst also für den Text den dazugehörigen Textrahmen finden und dann diesen anpassen.

In manchen Fällen kann durch 'fit()' der Zeilenfall verrutschen. Dann müsste man das Anpassen anders schreiben.

Code
// die Einstellungen zurücksetzen 
app.findGrepPreferences = app.changeGrepPreferences = null;
// die Eingabe vorbereiten …
var eingabe = prompt("Bitte Suchbegriff eingeben:", "");
// … und falls nicht auf 'Abbrechen' geklickt wurde …
if (eingabe == null) {
exit();
}
// … in das Suchfeld übernehmen
app.findGrepPreferences.findWhat = eingabe;
// die Suche ausführen
var allFounds = app.documents[0].findGrep();
// die Einstellungen zurücksetzen
app.findGrepPreferences = app.changeGrepPreferences = null;

// eine Schleife durch alle Fundstellen
for (var i = 0; i < allFounds.length; i++) {
var curFound = allFounds[i];
// den passenden Textrahmen ermitteln
var tf = curFound.parentTextFrames[0];
// und den Rahmen anpassen
tf.fit(FitOptions.frameToContent);
}


(Dieser Beitrag wurde von Kai Rübsamen am 30. Mai 2016, 17:04 geändert)
Änderungsverlauf:
Beitrag geändert von Kai Rübsamen (Veteran) am 30. Mai 2016, 17:03
Beitrag geändert von Kai Rübsamen (Veteran) am 30. Mai 2016, 17:04