JavaScript
indesign

Indesign CS3ファイルフォント・リンク・オーバーテキスト不備をチェック

font-link-overflow.jsx
var doc=app.activeDocument;
if(doc){
if(!(checkFonts(doc)&&checkLinks(doc)&&checkOverflow(doc))) exit();
}
/////////////////////////////////////
function checkFonts(doc) {
    var fontObj = doc.fonts;
    var L = fontObj.length;
    while (L--) {
        if (fontObj[L].status !== FontStatus.INSTALLED) {
            alert("環境にないフォントがあります");
            return false;
        }
    }
    return true;
}
////////////////////////////////////
function checkLinks(doc) {
    var linkObj = doc.links;
    var L = linkObj.length;
    while (L--) {
        var myStatus = linkObj[L].status;
        if (myStatus === LinkStatus.LINK_MISSING || myStatus === LinkStatus.LINK_OUT_OF_DATE) {
            alert("無効・未更新 なリンクがあります");
            return false;
        }
    }
    return true;
}
////////////////////////////////////
function checkOverflow(doc) {
    var pageObj = doc.pages;
    var pL = pageObj.length;
    while (pL--) {
        var tL = pageObj[pL].textFrames.length;
        while (tL--) {
            if (pageObj[pL].textFrames[tL].overflows) {
                alert(pageObj[pL].textFrames[tL].parent.name + "  ページに文字溢れがあります");
                return false;
            }
        }
    }
    return true;
}