Hallo Mike05,
das von Stefan skizzierte Skript als funktionierender Code. Mit Kommentaren versehen, damit klarer wird, was abläuft.
///SeitenzahlEinfuegen_401d.js
// die Auswahl speichern ...
var curSel = app.selection;
// ... und prüfen
if (curSel.length == 0) {
alert ("Es ist nichts ausgewählt.", "Achtung");
exit();
}
// der Variablen 'mainStory' den Textfluss zuweisen
if (curSel[0].constructor.name == "TextFrame") {
mainStory = curSel[0].parentStory;
}
else if (curSel[0].constructor.name == "InsertionPoint") {
mainStory = curSel[0].parent;
}
else {
alert ("Einen Rahmen des Textflusses auswählen.", "Stop");
exit();
}
// die Textrahmen, durch welche der Text fliesst
var allFrames = mainStory.textContainers;
// die Anzahl der Textrahmen speichern
var nFrames = allFrames.length;
// eine Schleife durch die Textrahmen
for (var f=0; f // die Seite speichern, auf welcher sich der aktuelle Rahmen befindet
var pageName = allFrames[f].parent.name;
// der zweitletzte Einfügepunkt der letzen Zeile des Rahmens
var insPoint = allFrames[f].texts[0].lines.item(-1).insertionPoints.item(-2);
// einen Textrahmen einfügen
var newFrame = insPoint.textFrames.add();
// die Grösse des Rahmens
newFrame.geometricBounds = [0, 0, 4, 8];
// die Seitenzahl einfügen
newFrame.parentStory.contents = pageName;
// den verankerten Rahmen aus dem Textrahmen herausholen
with (newFrame.anchoredObjectSettings) {
anchoredPosition = AnchorPosition.ANCHORED;
anchorPoint = AnchorPoint.BOTTOM_RIGHT_ANCHOR;
horizontalReferencePoint = AnchoredRelativeTo.TEXT_FRAME;
anchorXoffset = "3 mm";
}
}
Auswählen, kopieren und in ein Notepad-Fenster einsetzen. Unter einem beliebigen Namen, aber mit dem Suffix ".js" speichern.
Ausführen: Einen beliebigen Textrahmen des Hauptflusses auswählen und das Script starten (mit Doppelklick auf den Namen in der Palette "Skripten").
Hoffentlich ist das schon die Lösung Deines Problems.
Gruss, Hans