主にInDesignによる新聞組版Tips中心です。Mac使いですが業務はWin多め。Win DTP Tipsを増やしたい

【InDesign】【JavaScript】条件テキストで文字校正(ハイライトで可視化)1/2

みんな大好き、条件テキスト えっっ違う?

(2021.9.9)ネタ元のTenさんリンクを、お引越し先へ修正しました



そもそもの使い方は多分こちらなんですが

f:id:chocomarine:20200525162352j:plain
だーーーっと入力しておいて、それぞれの月の条件テキストを付ける
f:id:chocomarine:20200525162511j:plain
ひとつだけを目玉ONにすると
f:id:chocomarine:20200525162550j:plain
f:id:chocomarine:20200525162840j:plain
5月ボタン1つで、一度に切り替わる

5月Mayという「条件」を作り、関連した文字列を選択し設定をクリック。後は目玉ひとつで切り替え。

数十、数百の統一修正箇所を都度入力し直すのは大変&見逃し・取りこぼしが起こります。またその為のチェックに時間、人的資源も必要でコストが嵩む。

そんな無駄を一気に解消できる便利機能です。

欠点らしい欠点といえば、英数字の横幅を桁数によっての切り替えが出来ない事(スタイルかレイヤーの切り替えで対処は可能)



が、カタログ仕事とかでないと、この用途で使う機会があまり巡ってきません。

随分昔で定かでありませんが、Twitterで業務上の何かを愚痴っていた時Tenさんが、

条件テキスト(ハイライト)を正規表現で一発セットするjsx

を書いて下さり、以来「テキストのチェック機能」として超有効活用しています。いや、手動で検索できr(ゴホンゴホン

でもこのページ、何故か「条件テキスト」の一言がページ上にないため、「ハイライト」でしか検索で辿り着けません。周りにも知ってる人が殆どいない。実に勿体ない。こんなに便利なのに!!

ということで、改めて紹介&補助Tips(jsx)です。

条件テキストにはこんな便利な使い方もあるんですよと、広く知って貰いたい。

highlightってとっても便利ですよねぇ〜 | Automation Skill

またまたhighlight | Automation Skill

Glyphをハイライトしてみよう | Automation Skill


応用した正規表現検索バージョンが、以下。

正規表現でハイライト(条件テキスト)を付ける

flag = confirm ("「葛」ハイライトチェック\r\r「葛」字形を一時的にR250(レッド)表示。\r実行しますか?(らーで閣下)");

if (flag)
{
    // 邪魔なハイライト群を非表示
    var myDoc = app.activeDocument;
    var myTextPrefs = myDoc.textPreferences;
    myTextPrefs.highlightSubstitutedFonts = false; //代替フォント= OFF
    myTextPrefs.highlightSubstitutedGlyphs = false; // 代替字形OFF
    myTextPrefs.highlightKinsoku = false; // 組版→禁則OFF
    myTextPrefs.highlightCustomSpacing = false; // 組版→カスタマイズされた〜OFF
    myTextPrefs.highlightHjViolations = false; // 組版→H&J違反OFF
    myTextPrefs.highlightKeeps = false; // 組版→H&J違反保持OFF

    // 検索置換条件の初期化
    app.findGrepPreferences = null; // 検索形式
    app.changeGrepPreferences = null; // 置換形式
    // if (myDoc.conditions.item ("葛チェック") != null) 
    // myDoc.conditions.item ("葛チェック").remove();

    // main ----------------------------------------------------
    myDoc.conditions.add (
    {
        name: "葛チェック", 
        indicatorColor: [250,0,0], //(RGB指定)
        indicatorMethod: ConditionIndicatorMethod.useHighlight
        });
    // useUnderline=下線 useHighlight=ハイライト
    app.findGrepPreferences.findWhat = "\u845B"; // 検索正規表現
    app.changeGrepPreferences.appliedConditions = ["葛チェック"];
    myDoc.changeGrep();

    // 使用した検索置換条件を消去
    app.findGrepPreferences = null; // 検索形式
    app.changeGrepPreferences = null; // 置換形式
    // mainここまで---------------------------------------------
    // 複数作る場合、mainをここに複製・編集

    myDoc.layoutWindows[0].screenMode = ScreenModeOptions.previewOff; //スクリーンモードの変更
    }
else
{
alert ("処理を中止しました");
}
alert ("end:\r視認チェック後、環境設定→組版から「代替フォント」のハイライトをONに戻して下さい");

大昔(9年前!)に書き散らしたままなので、今見ると落ち度があるかもしれない…

記述内「葛チェック」となっているところが、条件テキスト名になります。

条件テキスト設定(お〜まち様)

indesign.cs5.xyz

f:id:chocomarine:20200526011211j:plain
連続で検索置換をかける or スクリプト内で記述を複製する

※注! チェック用途の場合、パネルの目玉は絶対「非表示」にしないで下さい!ハイライトではなく、文字自体が見えなくなります

f:id:chocomarine:20200526011041j:plain
(例)こんなミスチェックに使います

インジケーターを「表示と印刷」にすると、お客様へのPDFや校正紙にハイライトを印字することができます。

f:id:chocomarine:20200526012342j:plain
f:id:chocomarine:20200526012615j:plain

不要になったら、インジケーターを「隠す」もしくは条件設定を削除(ゴミ箱アイコン)でOK。

このインジケーター設定は上書き保存では変更が更新されず、必ずドキュメントを「別名で保存」する必要があります。

しかし私ときたら、9年前から今とレベルが大して変わってないのですね orz

2/2へ続く→