[GastForen Programme Print/Bildbearbeitung Adobe InDesign Alpha-Liste Abstand vor neuem 1. Buchstaben einfügen

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

Alpha-Liste Abstand vor neuem 1. Buchstaben einfügen

Christian50
Beiträge gesamt: 5

6. Aug 2019, 13:43
Beitrag # 1 von 3
Bewertung:
(1326 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo in die Runde!
Ich suche ein Script oder einer Möglichkeit in einer alphabetisch sortierten Liste (Inhaltsverzeichnis) vor jeder Zeile mit neuem Anfangsbuchstaben einen zusätzlichen Abstand einzufügen:

Axxxx
Axxxx
- Abstand
Bxxxx

usw.

Ich würde mich über einen Tipp freuen.

Viele Grüße und Dank im Voraus
Christian
X

Alpha-Liste Abstand vor neuem 1. Buchstaben einfügen

Hans Haesler
Beiträge gesamt: 5816

6. Aug 2019, 19:56
Beitrag # 2 von 3
Beitrag ID: #571343
Bewertung:
(1282 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Christian,

herzlich willkommen im InDesign-Forum auf HilfDirSelbst! :-)

Wenn ich es richtig verstehe, sollen die Absätze eines Textrahmens der Reihe nach geprüft werden.
Sobald der erste Buchstabe anders ist, als jene der vorhergehenden Absätze: Dem aktuellen Absatz einen "Abstand vor" zuweisen.

Mit folgendem Script sollte dies funktionieren. Vor dem Starten des Scripts den Textrahmen auswählen. Es genügt, die Einfügemarke blinken zu lassen.

Code
//Abstand_vor.js 

var spaceVal = 2;

// die Auswahl ...
var curSel = app.selection ;
// ... und deren Typ
if (curSel.length != 0) {
var curType = curSel[0].constructor.name;
}
else {
alert ("Es ist nichts ausgewählt.", "Stop");
exit();
}
// den Textrahmen der Auswahl bestimmen
if (curType == "TextFrame") {
var sourceFrame = curSel[0];
}
else if (curType == "InsertionPoint") {
var sourceFrame = curSel[0].parent.textContainers[0];
}
else if (curSel[0].hasOwnProperty("baseline")) {
var sourceFrame = curSel[0].parent.textContainers[0];
}
else {
alert ("Bitte einen Textrahmen auswählen.", "Stop");
exit();
}

// die Absätze des Textes ...
var allParas = sourceFrame.parentStory.paragraphs;
// ... und deren Anzahl
var nParas = allParas.length;

// die Variable 'oldChar' initialisieren
var oldChar = "Z";

// eine Schleife durch die Absätze
for (var p=0; p<nParas; p++) {
var firstChar = allParas[p].characters[0].contents;
if (p>0) {
if (firstChar != oldChar) {
allParas[p].spaceBefore = spaceVal;
oldChar = firstChar;
}
}
}

// das Ende der Aktion verkünden
var dlog = new Window("palette");
dlog.size = [320,100];
dlog.add("statictext", [80, 100, 320, 116], "Fertig.");
dlog.show();
// eine kleine Pause
$.sleep(999);
// das Fenster schliessen
dlog.close();

Ach ja: Der Wert des Abstandes kann zu Beginn des Scripts in der Zeile ...

Code
var spaceVal = 2; 

... in Millimetern definiert werden.

Gruss, Hans


als Antwort auf: [#571335]

Alpha-Liste Abstand vor neuem 1. Buchstaben einfügen

Christian50
Beiträge gesamt: 5

7. Aug 2019, 16:37
Beitrag # 3 von 3
Beitrag ID: #571368
Bewertung:
(1180 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,
das klappt bestens. Genau so wie ich es mir vorgestellt habe.
Vielen Dank!
Christian


als Antwort auf: [#571343]

Aktuell

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
02.02.2023

Prozesse optimieren und effizient gestalten

Zürich
Donnerstag, 02. Feb. 2023, 08.00 - 10.00 Uhr

Digitalisierung, Webauftritt

Digitalisierung mitgestalten - Worauf kommt es an? Wie wichtig ist die Webseite? Webseite mit Word Press? Interne Prozesse optimieren

Ja

Organisator: B. Isik - SNF Academy

Kontaktinformation: Birol Isik, E-Mailinfo AT bkcc DOT ch

https://digitalisierung-heute.ch/digitalisierung-informationstag-schweiz/

Veranstaltungen
01.03.2023 - 09.03.2023

Online
Mittwoch, 01. März 2023, 00.00 Uhr - Donnerstag, 09. März 2023, 00.00 Uhr

Online Webinar

Wie gehen wir mit diesen Veränderungen um? Was ist notwendig, damit wir die Digitalisierung im Unternehmen klappt? Veränderungsprozesse verstehen und entsprechend handeln Mitarbeiter als Botschafter Webseite mit WordPress erstellen SEA /SEO (Ads aufschalten)

Ja

Organisator: B. Isik - SNF Academy

Kontaktinformation: B. Isik, E-Mailinfo AT snfa DOT ch

https://www.fernstudiumfitness.ch/digitalisierung-schweiz/