var myDoc = app.documents[0];
//========================================================================================================
//Zeichen style for the page numbers.
//========================================================================================================
//Paragraph styles for the page footer text.
try{myDoc.paragraphStyles.item("00_INFO_Ebene").name;}
catch (myError){myDoc.paragraphStyles.add({name:"00_INFO_Ebene"});}
myDoc.paragraphStyles.item("00_INFO_Ebene").fillColor = myDoc.colors.item("Registration");
//========================================================================================================
var myFrameWidth = 110; // Breite des Textrahmens
var myFrameOffset = 7; // Abstand zur Seite
var myPageWidth = app.documents[0].documentPreferences.pageWidth; // Seitenbreite
var myBounds = [184, myPageWidth + myFrameOffset, 174, myPageWidth + myFrameOffset + myFrameWidth]; // Koordinaten des Textrahmens
var myLabel = "INFO_Satz";
var myFont = "Helvetica LT";
//02_Musterseite============================================================================================
// Neue Ebene anlegen
//
try { var myNewLayer_02_Musterseite = myDoc.layers.add({name:"02_Musterseite"});
myNewLayer_02_Musterseite.move(LocationOptions.atBeginning, undefined); }
catch(e) { var myNewLayer_02_Musterseite = myDoc.layers.item("02_Musterseite") }
// Ebene SPERREN
myNewLayer_02_Musterseite.locked = false;
myNewLayer_02_Musterseite.visible = true;
myNewLayer_02_Musterseite.layerColor = 1766613612; //lightBlue
myNewLayer_02_Musterseite.showGuides = false;
//========================================================================================================
// Textrahmen prüfen und ggf. löschen (Koordinaten sichern)
var myFSFrames = myDoc.spreads[0].textFrames;
for (oneFrame = myFSFrames.length -1; oneFrame >=0 ; oneFrame--)
{
if (myFSFrames[oneFrame].label == myLabel)
{
myBounds = myFSFrames[oneFrame].geometricBounds;
myFSFrames[oneFrame].remove()
}
}
//========================================================================================================
// catch the info
var theDocName = myDoc.name.split(".indd")[0]; ;
var theCharacters = myDoc.stories.everyItem().characters.length;
var theFN = myDoc.search("^F");
if (theFN.length > 0) var theFNChars = myDoc.stories.everyItem().footnotes.everyItem().texts[0].characters.length else theFNChars = 0;
if (myDoc.stories.everyItem().tables.length > 0) var theTableChars = myDoc.stories.everyItem().tables.everyItem().cells.everyItem().texts[0].characters.length else theTableChars = 0;
var theLinks = myDoc.links.length;
var theFonts = myDoc.fonts.everyItem().name.join("\r\t");
// Datumformatierung
var Datum = new (Date);
var Tag = Datum.getDate();
if (Tag<10)
{
Tag = "0" + Tag;
}
var Wochentag = Datum.getDay();
var Monat = Datum.getMonth();
var Jahr = Datum.getFullYear();
var Tagname = new Array("So","Mo","Di","Mi","Do","Fr","Sa");
var Monatname = new Array("01","02","03","04","05","06","07","08","09","10","11","12");
var Stunde = Datum.getHours();
var Minute = Datum.getMinutes();
if (Minute<10)
{
Minute = "0" + Minute;
}
if (Stunde<10)
{
Stunde = "0" + Stunde;
}
// legt das Absatzformat "Info" an
myStyle = myDoc.paragraphStyles.item("00_INFO_Satz")
// prüft, ob das Absatzformat bereits vorhanden
try
{
myStyle.name;
}
catch (e) // Nein, das Absatzformat ist nicht vorhanden, wird neu angelegt
{
myStyle = myDoc.paragraphStyles.add({name:"00_INFO_Satz"})
}
// das Absatzformat bekommt verschiedene Eigenschaften zugewiesen
// unabhängig davon, ob es beim Start des Skripts schon angelegt war oder nicht
if (app.fonts.item(myFont).status != FontStatus.installed)
{
alert("Schrift \"" + myFont + "\" nicht vorhanden.\rAbsatzformat \"Info\" konnte nicht angelegt werden.");
exit();
}
myTabList = [{position:'3.5mm', aligment:TabStopAlignment.leftAlign}, {position:'40mm', aligment:TabStopAlignment.leftAlign}];
with (myStyle)
{
appliedFont = app.fonts.item(myFont),
justification = Justification.leftAlign,
firstLineIndent = 0,
leftIndent = 0,
pointSize = 7,
tabList = myTabList
}
//============================================================================================
// Legt einen Textrahmen an.
// >> Quelle <<
//============================================================================================
myFrame = myDoc.pages[0].textFrames.add
(
{
geometricBounds:myBounds,
contents:
("Original-Text"),
label:myLabel,
itemLayer:myNewLayer_02_Musterseite
}
);
//============================================================================================
// Zuweisung des Absatzformats
myFrame.texts[0].appliedParagraphStyle = myStyle
//============================================================================================
var myFrameWidth_00 = 110; // Breite des Textrahmens
var myFrameOffset_00 = 15; // Abstand zur Seite
var myPageWidth_00 = app.documents[0].documentPreferences.pageWidth; // Seitenbreite
var myBounds_00_INFO_Ebene = [24, myPageWidth_00 + myFrameOffset_00, 150, myPageWidth_00 + myFrameOffset_00 + myFrameWidth_00]; // Koordinaten des Textrahmens
var myLabel_00_INFO_Ebene = "00_INFO_Satz";
var myFont = "Helvetica LT";
// Neue Ebene anlegen
//
try { var myNewLayer_00_INFO_Ebene = myDoc.layers.add({name:"00_INFO_Ebene"});
myNewLayer_00_INFO_Ebene.move(LocationOptions.atBeginning, undefined); }
catch(e) { var myNewLayer_00_INFO_Ebene = myDoc.layers.item("00_INFO_Ebene") }
// Ebene SPERREN
myNewLayer_00_INFO_Ebene.locked = false;
myNewLayer_00_INFO_Ebene.visible = true;
myNewLayer_00_INFO_Ebene.layerColor = 1766613612; //lightBlue
myNewLayer_00_INFO_Ebene.showGuides = false;
// Textrahmen prüfen und ggf. löschen (Koordinaten sichern)
var myFSFrames = myDoc.spreads[0].textFrames;
for (oneFrame = myFSFrames.length -1; oneFrame >=0 ; oneFrame--)
{
if (myFSFrames[oneFrame].label == myLabel_00_INFO_Ebene)
{
myBounds_00_INFO_Ebene = myFSFrames[oneFrame].geometricBounds;
myFSFrames[oneFrame].remove()
}
}
// catch the info
var theDocName = myDoc.name.split(".indd")[0]; ;
var theCharacters = myDoc.stories.everyItem().characters.length;
var theFN = myDoc.search("^F");
if (theFN.length > 0) var theFNChars = myDoc.stories.everyItem().footnotes.everyItem().texts[0].characters.length else theFNChars = 0;
if (myDoc.stories.everyItem().tables.length > 0) var theTableChars = myDoc.stories.everyItem().tables.everyItem().cells.everyItem().texts[0].characters.length else theTableChars = 0;
var theLinks = myDoc.links.length;
var theFonts = myDoc.fonts.everyItem().name.join("\r\t");
// legt das Absatzformat "Info" an
myStyle_00_INFO_Ebene = myDoc.paragraphStyles.item("00_INFO_Ebene")
// prüft, ob das Absatzformat bereits vorhanden
try
{
myStyle_00_INFO_Ebene.name;
}
catch (e) // Nein, das Absatzformat ist nicht vorhanden, wird neu angelegt
{
myStyle_00_INFO_Ebene = myDoc.paragraphStyles.add({name:"00_INFO_Ebene"})
}
// das Absatzformat bekommt verschiedene Eigenschaften zugewiesen
// unabhängig davon, ob es beim Start des Skripts schon angelegt war oder nicht
if (app.fonts.item(myFont).status != FontStatus.installed)
{
alert("Schrift \"" + myFont + "\" nicht vorhanden.\rAbsatzformat \"Info\" konnte nicht angelegt werden.");
exit();
}
myTabList_00_INFO_Ebene = [{position:'3.5mm', aligment:TabStopAlignment.leftAlign}, {position:'40mm', aligment:TabStopAlignment.leftAlign}];
with (myStyle_00_INFO_Ebene)
{
appliedFont = app.fonts.item(myFont),
justification = Justification.leftAlign,
firstLineIndent = 0,
leftIndent = 0,
pointSize = 7,
tabList_00_INFO_Ebene = myTabList_00_INFO_Ebene
}
//============================================================================================
// Legt einen Textrahmen an.
// >> Ziel <<
//============================================================================================
myFrame_00_INFO_Ebene = myDoc.pages[0].textFrames.add
(
{
geometricBounds:myBounds_00_INFO_Ebene,
contents:
("[VH]_" + " >> Text aus erstem Textrahmen <<" ),
label:myLabel_00_INFO_Ebene,
itemLayer:myNewLayer_00_INFO_Ebene
}
);
//============================================================================================
// Zuweisung des Absatzformats
myFrame_00_INFO_Ebene.texts[0].appliedParagraphStyle = myStyle_00_INFO_Ebene