Amazonで商品を見るセール会場へ

Illustratorスクリプト(jsx)│入稿前にRGB・未アウトライン・リンク切れ・白のオーバープリントを一括で見つける

入稿の直前に、カラーモードや文字、リンク画像をひとつずつ確かめるのは手間がかかり、見落としも出ます。

このスクリプトは、開いているファイルのよくある問題を数えて、一覧で表示します。

  • カラーモードが RGB になっていないか
  • アウトライン化していない文字が残っていないか
  • リンク切れの画像がないか
  • 埋め込み画像に RGB のものがないか
  • 白いオブジェクトにオーバープリントが付いていないか

見つけて知らせるだけで、ファイルは何も書き換えません。

スクリプトは、Adobe Illustrator Scripting Guide(Adobeの資料をもとに有志が公開している版、2026年9月29日に確認)のプロパティの説明をもとに作りました。

2026年10月3日にGrayColorの白判定と、リンク情報を読めなかった項目の表示を修正しました。白・黒とリンク確認の分岐は模擬オブジェクトで試験しています。Windows 11 Pro/Illustrator 30.8.2での白・黒2図形の検出結果も後述します。グループや複合パス、リンク状態ごとの実際の検出範囲は、引き続き実機で確認します。

目次

スクリプト

// 入稿前に、よくある問題を一覧にする(何も書き換えない)
function isWhite(c) {
  if (c.typename === "CMYKColor") return c.cyan === 0 && c.magenta === 0 && c.yellow === 0 && c.black === 0;
  if (c.typename === "RGBColor") return c.red === 255 && c.green === 255 && c.blue === 255;
  if (c.typename === "GrayColor") return c.gray === 100;
  return false;
}

function main() {
  if (app.documents.length === 0) { alert("ファイルを開いてから実行してください"); return; }
  var doc = app.activeDocument;
  var msgs = [];

  if (doc.documentColorSpace === DocumentColorSpace.RGB) msgs.push("カラーモードが RGB です");

  if (doc.textFrames.length > 0) msgs.push("アウトライン化していない文字:" + doc.textFrames.length + " 個");

  var missing = 0;
  var unknownLinks = 0;
  for (var i = 0; i < doc.placedItems.length; i++) {
    try { if (!doc.placedItems[i].file.exists) missing++; } catch (e) { unknownLinks++; }
  }
  if (missing > 0) msgs.push("リンク切れの画像:" + missing + " 個");
  if (unknownLinks > 0) msgs.push("リンク情報を確認できない項目:" + unknownLinks + " 個(手動で確認)");

  var rgbImages = 0;
  for (var j = 0; j < doc.rasterItems.length; j++) {
    if (doc.rasterItems[j].imageColorSpace === ImageColorSpace.RGB) rgbImages++;
  }
  if (rgbImages > 0) msgs.push("埋め込みの RGB 画像:" + rgbImages + " 個");

  var whiteOp = 0;
  for (var k = 0; k < doc.pathItems.length; k++) {
    var p = doc.pathItems[k];
    if (p.filled && p.fillOverprint && isWhite(p.fillColor)) whiteOp++;
    else if (p.stroked && p.strokeOverprint && isWhite(p.strokeColor)) whiteOp++;
  }
  if (whiteOp > 0) msgs.push("オーバープリントの付いた白:" + whiteOp + " 個");

  alert(msgs.length === 0 ? "このスクリプトの対象範囲では検出0件です。入稿条件は別途確認してください" : msgs.join("\n"));
}
main();

使い方

  1. 上のスクリプトを preflight.jsx という名前(BOM付きのUTF-8)で保存する
  2. 確かめたいファイルを開く
  3. 「ファイル」→「スクリプト」→「その他のスクリプト」から実行する

何も見つからなければ「このスクリプトの対象範囲では検出0件です。入稿条件は別途確認してください」、見つかれば項目ごとの数が表示されます。

調べていること

項目使っているプロパティ
カラーモードdoc.documentColorSpace
アウトライン化していない文字doc.textFrames の数
リンク切れplacedItems の file が存在するか
埋め込みの RGB 画像rasterItems の imageColorSpace
白のオーバープリントpathItems の fillOverprint・strokeOverprint と色

白かどうかは、CMYKならすべて0%、RGBなら255・255・255、GrayColorのgray値なら100で判断します。GrayColorの数値とカラーパネルのK濃度を同じものとして扱わないでください。

特色の白・グラデーションやシンボルなどの検出範囲は、このサンプルでは保証していません。グループ内を含むコレクションの参照範囲も実機未確認です。最後はオーバープリントプレビューで確かめます。

検出された項目が入稿不備かは、指定と照合する

表示された項目この検出だけでは決まらないこと次の確認
RGBの文書・画像RGBを許容するワークフローか、CMYKへの変換が必要か。入稿先の色条件とPDF/Xの選択を確認する。
アウトライン化していない文字フォントを埋め込んだPDFを受け付けるか。文字を残す/アウトライン化する条件と元AIの保管を決める。
リンク切れ・リンク情報取得不能同じ原因ではなく、取得不能を欠落確定へ読み替えない。リンクパネルで修復と保存先を確認する。
プロセスの白のオーバープリント特色の白・グラデーション・全階層の検出結果は保証しない。白の種類とオーバープリントプレビューを確認する。

検出0件は入稿合格の判定ではありません。白のプレビューと出力の考え方はAdobeのオーバープリントの説明、PDFの色・フォント・透明の設定はAdobe PDFオプションを参照してください。掲載コードの検出条件と、印刷先の受け入れ条件を分けて使います。

このスクリプトで分からないこと

  • リンクしている画像が RGB かどうか(リンク画像の色は調べていない)
  • 画像の解像度が足りているか
  • 裁ち落としまで背景が伸びているか

入稿前の確認の全体は、Illustratorで印刷入稿データを作る手順で紹介しています。

白のオーバープリントがなぜ問題になるかは、Illustratorのオーバープリントの確認と設定で紹介しています。

まとめ

  • 開いているファイルのRGB・未アウトライン・リンク切れ・RGB画像・白のオーバープリントを一覧にする
  • ファイルは書き換えない
  • グループ内などの検出範囲は未検証。プレビューでも確かめる

参考:Adobe Illustrator Scripting Guide(Document・PathItem・RasterItem、2026年9月29日に確認)。

リンク切れと確認できない項目の区別

file.existsがfalseの項目をリンク切れとして数えます。fileの参照で例外になった項目は、原因を断定せず「リンク情報を確認できない項目」に分けます。画像の欠落が確定した数と、調べられなかった数を合算しないためです。どちらもリンクパネルで確認してください。

GrayColorの白判定はAdobeのIllustrator JavaScript Scripting Referenceにあるgrayの定義に基づきます。Adobe資料をもとに維持されているGrayColorの参照ページにも同じ範囲が記載されています。特色・グラデーションなどはこの単色判定の対象外です。

白と黒の2図形による実機確認

2026年10月3日、Windows 11 Pro/Illustrator 30.8.2(64-bit)の自作CMYKドキュメントで、GrayColorの白(gray=100)と黒(gray=0)の四角形を1個ずつ用意しました。両方のfillOverprintをtrueにして掲載のチェック処理を実行したところ、結果は「オーバープリントの付いた白:1個」でした。黒はこの件数に含まれませんでした。

オーバープリントの付いた白1個を検出したIllustratorの実画面
白・黒2図形のうち白1個を検出した実画面。スクリプト実行中にキャンバスの描画が更新されていないため、図形の外観比較に使う画像ではありません。

別の記録用ハーネスでも、白・黒の型はGrayColor、値は100・0であり、実行後のパス数2と両方のオーバープリント属性trueを確認しました。この処理は今回の2図形の属性を変更していません。リンク切れ、読み取り不能なリンク、階層・複合パス・特色・グラデーション・シンボル、文書全体のファイルハッシュ、Macは実機未確認です。結果が1個でも、そのほかの入稿条件を満たすとは判断しません。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次