Übersatz in Tabellenzellen wird mit einem roten Punkt angezeigt.
Den Übersatz kann man nicht in andere Zellen und nicht in andere Rahmen fließen lassen.
Folgendes Skript führt zu Übersatz (auch in Tabellen) hin (zoomt die entsprechende Stelle heran).
Es wurde m.W. von Dave Saunders für CS2 entwickelt.
Ich habe es an CS3 angepaßt.
// Find_OversetText_CS3.jsx
//
// DESCRIPTION: Finds overset text in active document
// A JavaScript for InDesign CS3
//
var endMessage = "No overset text found in document.";
// Deselect whatever might be selected
if (app.documents.length > 0) {
app.select(null);
var myDoc = app.documents[0];
var myStories = myDoc.stories;
var scount = myStories.length;
for (myCounter=0; scount>myCounter; myCounter++) {
if (myStories[myCounter].textContainers[myStories[myCounter].textContainers.length-1].overflows) {
var myFrame = myStories[myCounter].textContainers[myStories[myCounter].textContainers.length-1];
var myPage = myFrame.parent;
// what if parent is not a page (e.g., inline frame)
var endMessage = "No other overset text found in document.";
try {
while (myPage.constructor.name != "Page") {
if (myPage.parentTextFrame == undefined) {
var myPage = myPage.parent;
} else {
myPage = myPage.parentTextFrame;
}
}
app.activeWindow.activeSpread = myPage.parent;
selectIt(myStories[myCounter].textContainers[myStories[myCounter].textContainers.length-1]);
var theMessage = "Overset text frame found. Ignore and look for others?";
} catch (e) {
theMessage = "Deeply overset frame found; can't be selected. Ignore and look for others?" //+ myPage.pages[0].name;
selectIt(myStories[myCounter].textContainers[myStories[myCounter].textContainers.length-1]);
exit();
}
if (confirm(theMessage)) {
continue;
} else {
exit();
}
}
}
for (myCounter=0; scount>myCounter; myCounter++) {
var myTables = myStories[myCounter].tables;
var tcount = myTables.length;
if (tcount != 0) {
for (j=0; tcount>j; j++) {
var myCells = myTables[j].cells;
var ccount = myCells.length;
for (k=0; ccount>k; k++) {
if (myCells[k].overflows) {
// Found one; find page it's on
var endMessage = "No other overset text found in document."
try {
var myCellNos = [k,k-1,k+1];
for (x = 0; myCellNos.length > x; x++) {
try {
var myPage = myCells[myCellNos[x]].texts[0].parentTextFrames[0].parent;
break;
} catch (e) {
if (x = myCellNos.length) {throw "Blast!"}
}
}
// what if parent is not a page (e.g., inline frame)
while (myPage.constructor.name != "Page") {
if (myPage.parentTextFrames[0] == undefined) {
var myPage = myPage.parent;
} else {
var myPage = myPage.parentTextFrames[0].parent;
}
}
app.activeWindow.activeSpread = myPage.parent;
selectIt(myCells[k]);
var theMessage = "Overset cell found. Ignore and look for others?"
} catch (e) {
var theMessage = "Completely overset cell found; can't find page. Ignore and look for others?\r Seite: " + myTables[j].parent.parent.name;
}
if (confirm(theMessage)) {
continue;
} else {
exit();
}
}
}
}
}
}
alert(endMessage);
} else {
alert("This script operates on the active document; please open one and try again.")
}
function selectIt(theObj)
{
// Selects object, turns to page and zooms in on it
app.select(theObj,SelectionOptions.replaceWith);
app.activeWindow.zoomPercentage = 300; // Zoom auf 300%
//app.activeWindow.zoom(ZoomOptions.fitPage); // Zoom auf Seite
}
Hier die Version für InDesign CS2:
Find_OversetText.jsx