...
und für alle die nicht mehr wissen wie, wo und welche Änderungen gemacht wurden, stelle ich die letzte Version nochmal hier ins Forum. Eine kleine Erklärung wurde in das Script reingesetzt.
Viel Spass damit
// Link Export and Preflight Images Final 1.0.jsx
/*
v1.0
Dieses Script exportiert den Namen, Skalierung,
Grösse, Rotation, Auflösung, Farbraum, Dateityp,
Seite welche das Bild enthält sowie den Dateipfad
der in einem Dokument enthaltenen Bilder in eine
(mit Tabs getrennte) Text Datei. (Dokumentname.txt).
Als Besonderheit wurden noch einige Kontrollmarkierungen
eingebaut welche
- unterschiedliche Skalierungen (xxx [!])
- Auflösung unter 250ppi ("LQ! [xxx])
- Bilder ausserhalb der Seite (x [Outside page!])
anzeigen.
__________________________________________________________
Ein Dankeschön ist an Martin Fischer zu richten, welcher
das basis Script zur Verfügung gestellt und mir tatkräftig
bei den Änderungen geholfen hat.
Nighthawk
www.hilfdirselbst.ch
*/
var myDoc = app.documents[0];
if (myDoc.saved == false)
{
alert("Error!\rPlease save the document!");
exit();
}
var myDocName = myDoc.name.split(".indd")[0];
var myTXT_File = myDocName + '.txt';
var myPath = myDoc.filePath + "/";
var myCreator = "R*ch";
var myType = "TEXT";
var theFiles = myDoc.links;
var myData = "Name\t\t% Vertical\t% Horizontal\t\tWidth\tHeight\t\tRotation\t\tOrig. Res.\tUsed. Res.\t\tCol. Space\t\tFile type\t\tPage Nr.\t\tPath\r";
var f = new File( myPath + myTXT_File );
f.open( 'w', myType, myCreator );
f.writeln( myData );
for (myCounter = 0; myCounter var myBounds = theFiles[myCounter].parent.geometricBounds;
var myWidth = Math.round(myBounds[3]-myBounds[1]);
var myHeight = Math.round(myBounds[2]-myBounds[0]);
var myScaleVert = Math.round(theFiles[myCounter].parent.absoluteVerticalScale);
var myScaleHori = Math.round(theFiles[myCounter].parent.absoluteHorizontalScale);
try
{
var mySpace = theFiles[myCounter].parent.space;
}
catch (e)
{
var mySpace = "--";
}
try
{
var myLinkType = theFiles[myCounter].linkType;
}
catch (e)
{
var myLinkType = "--";
}
var myImagePath = theFiles[myCounter].filePath;
// WARNING if vertical scale is different to horizontal scale
if (myScaleVert != myScaleHori)
{
myScaleVert += " [!]";
myScaleHori += " [!]";
}
try
{
myPPI = (theFiles[myCounter].parent.actualPpi);
if (theFiles[myCounter].parent.actualPpi[0] < 250) myPPI[0] = ("LQ! [" + myPPI[0] );
if (theFiles[myCounter].parent.actualPpi[1] < 250) myPPI[1] += "]";
}
catch (e)
{
myPPI = 0;
}
try
{
myPPI2 = (theFiles[myCounter].parent.effectivePpi);
if ((theFiles[myCounter].parent.effectivePpi[0] < 250) || (theFiles[myCounter].parent.effectivePpi[1] < 250))
{
myPPI2[0] = ("LQ! [" + myPPI2[0] );
myPPI2[1] += "]";
}
}
catch (e)
{
myPPI2 = 1;
}
try
{
myRA = Math.round(theFiles[myCounter].parent.rotationAngle);
}
catch (e)
{
myRA = 2;
}
var myPage = getPage(theFiles[myCounter].parent.parent.parent);
if (myPage.constructor.name == "Page")
var myPageName = myPage.name;
else var myPageName = myPage.pages[0].name + " [Outside page!]"; // Textrahmen auf Montagefläche
myData = theFiles[myCounter].name + "\t" + "\t" + myScaleVert + "\t" + myScaleHori + "\t" + "\t" + myWidth + " mm" + "\t" + myHeight + " mm" + "\t" + "\t" + myRA + "°" + "\t" + "\t" + myPPI + "\t" + myPPI2 + "\t" + "\t" + mySpace + "\t" + "\t" + myLinkType + "\t" + "\t" + myPageName + "\t" + "\t" + myImagePath + "\r";
f.writeln(myData);
}
f.close();
function getPage(myObject)
{
i +=1;
if ((myObject.constructor.name == "Page") || (myObject.constructor.name == "Spread"))
return myObject
if ( myObject.constructor.name == "Character")
{
if ((app.version +"").substr(0,1) == "4") return getPage(myObject.parentTextFrames[0])
else if ((app.version +"").substr(0,1) == "3") return getPage(myObject.parentTextFrame)
}
return getPage(myObject.parent)
}