InDesign Hacking with JavaScript
Adobe 社の DTP ソフトウェア「InDesign」 (Amazon) は、JavaScript (および macOS 版では AppleScript、Windows 版では VBScript) を使って内部オブジェクトにアクセスできるようになっており、手動では面倒な作業を自動化することができます。
バージョン CS2 以降では XML 処理の機能も向上しており、ますますの自動化を期待できます。
このページでは、kmuto が作成したスクリプトを公開しています。ファイルをアプリケーションの指定のフォルダに置くことで、Windows/macOS の両方で動作します。
- CS2: アプリケーションのPresets\Scriptsフォルダに配置します。
- CS3 Windows版: ユーザのApplication Data\Adobe\InDesign\Version 5.0-J\Scripts\Scripts Panelフォルダにhwj-Scriptsというフォルダを作成し、配置します。
- CS3 macOS版: ユーザのLibrary/Preferences/Adobe InDesign/Version 5.0-J/Scripts/Scripts Panelフォルダにhwj-Scriptsというフォルダを作成し、配置します。
- CS4 macOS版: ユーザのLibrary/Preferences/Adobe InDesign/Version 6.0-J/ja_JP/Scripts/Scripts Panelフォルダにhwj-Scriptsというフォルダを作成し、配置します。
- CS5.5 macOS版: ユーザのLibrary/Preferences/Adobe InDesign/Version 7.5-J/ja_JP/Scripts/Scripts Panelフォルダにhwj-Scriptsというフォルダを作成し、配置します。
- CS6 macOS版: ユーザのLibrary/Preferences/Adobe InDesign/Version 8.0-J/ja_JP/Scripts/Scripts Panelフォルダにhwj-Scriptsというフォルダを作成し、配置します。
- CC 2017 macOS版: ユーザのLibrary/Preferences/Adobe InDesign/Version 12.0-J/ja_JP/Scripts/Scripts Panelフォルダにhwj-Scriptsというフォルダを作成し、配置します。
- CC 2018 macOS版: ユーザのLibrary/Preferences/Adobe InDesign/Version 13.0-J/ja_JP/Scripts/Scripts Panelフォルダにhwj-Scriptsというフォルダを作成し、配置します。
- CC 2019 macOS版: ユーザのLibrary/Preferences/Adobe InDesign/Version 14.0-J/ja_JP/Scripts/Scripts Panelフォルダにhwj-Scriptsというフォルダを作成し、配置します。
- CC 2020 macOS版: ユーザのLibrary/Preferences/Adobe InDesign/Version 15.0-J/ja_JP/Scripts/Scripts Panelフォルダにhwj-Scriptsというフォルダを作成し、配置します。
- CC 2021 macOS版: ユーザのLibrary/Preferences/Adobe InDesign/Version 16.0-J/ja_JP/Scripts/Scripts Panelフォルダにhwj-Scriptsというフォルダを作成し、配置します。
zipファイルでのダウンロード
さらに、Adobe 社が提供する glue code.jsx (たとえば macOS では、「/Application/Adobe InDesign バージョン/Scripts/XML Rules/glue code.jsx」) を hwj-Scripts フォルダの libs フォルダにコピーします。
各スクリプトの API ガイドは、こちらにあります。
XML ドキュメントからの組版主眼ですが、スクリプト自体は段落スタイルなどを使ったものもあり、通常のテキスト組版でも応用は可能です。
- lib で始まる名前のファイルは、関数のみを収録しており、利用するには別途スクリプトコードが必要です。
- dialog で始まる名前のファイルは、ダイアログベースのスクリプトです。
- silent で始まる名前のファイルは、ダイアログを何も表示せずに実行するスクリプトです。
- book で始まる名前のファイルは、特定書籍向けのスクリプトです。
スクリプトは、アプリケーションの Presets/Scripts フォルダに配置してください (自動化ウィンドウ内にスクリプトファイル名が表示されます)。
- 概要
- XML要素の画像にオブジェクトスタイルを適用する。ostyle属性が付いているときにはその値のオブジェクトスタイル名を使う
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- applyImageObjectstyle
- 概要
- ローマ数字とアラビア数字を変換する
(APIガイド)
- ライセンス
- その他のライセンス (ファイル先頭を参照してください)
- 関数
- arabic2roman, roman2arabic
- 概要
- 指定領域の背景に画像を入れる
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- backGroundImage
- 概要
- 指定領域の背景に画像を入れる
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- backGroundImage3
- 概要
- 行送り記号を挿入する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- lineBreakOfStory, lineBreak, getLastX
- 概要
- 必須マスターページ以外のページ要素をすべて消去し、右ページから始まる2ページの白ページと連結フレームを配置する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- silentClearDocument
- 概要
- 指定のXML要素を子要素を含めてインラインテキストフレーム化する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- makeCodeBlock1, makeCodeBlock2, processXMLforCodeBlock
- 概要
- InDesign共通ライブラリ
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- getCSVersion, getCSPath, callScripts, getFilePath, toMmMode, revertMmMode, startBenchMark, endBenchMark, insertItemMark, insertPrefix, setCharacterStyle, getCharacterStyleByName, getAllCharacterStyles, getAllCharacterStylesFromGroup, getCharacterStyleByNameFromGroup, getParagraphStyleByName, getParagraphStyleByNameFromGroup, getObjectStyleByName, getObjectStyleByNameFromGroup, getTableStyleByName, getTableStyleByNameFromGroup, getCellStyleByName, getCellStyleByNameFromGroup, getCharacterStyles, getParagraphStyles, getObjectStyles, getTableStyles, getCellStyles, findContentFromPageByStyles, findContentFromObjectByStyles, findStringFromObjectWithGroup, findStringFromObject, findMasterSpread, removeGroupObjectByLabel, locateObject, getEndStoryPoint, getEndStoryPoint2, getEndStoryPoint3, getEndStoryPoint4, getMetaInfo, pttomm, showInteraction, overridePageItems, getPageItem, getDocAttr, getHwjStateFileObj, readHwjStateFile, writeHwjStateFile
- 概要
- 見出しdtpインストラクションの箇所にブックマークを入れる。目次中ノンブルなどの指定要素にハイパーリンクを付ける
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- clearBookmarks, processXMLforBookmarks, processXMLforHyperlinks, processHyperlinks, addHyperlink, loadDaiwariPageFile
- 概要
- 行頭が指定の空行スタイルで始まっている場合、前ページのテキストフレームを下に広げる
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- extendTextFrame
- 概要
- 脚注記号を任意のものに変更する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- replaceFootnoteMark, revertFootnoteMark
- 概要
- 版面の縦横座標を返す
(APIガイド)
- ライセンス
- その他のライセンス (ファイル先頭を参照してください)
- 関数
- getBoundsOfPage
- 概要
- テキストフレームとページ、ページオフセットとノンブルのマッピング配列を返す
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- getFrameIdFromPage, getPagenumFromSection
- 概要
- テキストフレームからあふれているときに、マスターページを適用したページを追加する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- treatOverflow
- 概要
- テキストフレームからあふれているときに、マスターページを適用したページを追加する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- treatOverflow
- 概要
- テキストフレームからあふれているときに、マスターページを適用したページを追加する(非再帰)
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- treatOverflow, treatOverflow_real
- 概要
- 指定の段落の前に画像を挿入する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- insertImageIcon1, insertImageIcon2
- 概要
- オブジェクトの下座標を特定段落スタイルの最後の行のベースラインを基準に伸縮させる
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- modifyBoxBottom
- 概要
- 表の操作。XML情報のcolspan、rowspanに基づいて接続したり、左右のケイを取ったりする
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- modifyTable
- 概要
- ページにマルチカラム対応のテキストフレームを配置する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- placeTextFrames
- 概要
- XMLインストラクションを使い、節飾りのようなグループを貼り付ける
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforDecoratedPanel, processDecoratedPanel, placeDecoratedPanel
- 概要
- XMLインストラクションを使い、左右の柱を生成して適用する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- makeMasterPage, processXMLforHashira
- 概要
- XMLインストラクションを使い、左右の柱を生成して適用する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- makeMasterPage2, processXMLforHashira2
- 概要
- XMLインストラクションを使い、左右の柱を生成して適用する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- makeMasterPage2, processXMLforHashira3
- 概要
- XML要素を探してその内容をオブジェクトテンプレートにコピーし、配置する。テキストフレームを下にずらす
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforHeaderImage
- 概要
- 指定のXML要素の位置に、オブジェクトをコピーペーストし、必要に応じてプレースホルダ文字を置き換える
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLForPlaceGroup, processForPlaceGroup, placeGroup
- 概要
- 指定のXML要素の位置に、オブジェクトをコピーペーストし、必要に応じてプレースホルダ文字を置き換える
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLForPlaceGroup, processForPlaceGroup, placeGroup
- 概要
- 指定のXML要素の位置に、テキストフレームをコピーペーストし、指定のXMLコンテンツをペーストする
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLForFindTargetElements, processForFindTargetElements, processXMLForPlaceTextFrame, processForPlaceTextFrame, placeTextFrame
- 概要
- XML要素の範囲の背景に画像を配置する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforBackgroundImage, processXMLforBackgroundImage2
- 概要
- XML要素の範囲の背景に画像を配置する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforBackgroundImage2
- 概要
- XML要素の範囲の背景に画像を配置する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforBackgroundImage3, createBGProgressBar, processBackgroundImage, processCountTargetImage
- 概要
- 指定のXML要素の内容を吹き出しとしてテキストフレーム化し、線を引く
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforBalloon, redrawProcessXMLforBalloon
- 概要
- XPathにマッチする要素がページをまたいでいる場合、右下/左上にアイコンを置く
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforNextToIcon, ProcessNextToIconSubset, placeNextToIcon, placeNextToText
- 概要
- XMLの指定要素のテキストを表にする。表にするとXMLの情報は失われる
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforConvertToTable
- 概要
- width属性、height属性の値(mm)に従って指定要素内にあるオブジェクトの幅を変える
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforExtendObj, processExtendObj, extendObj
- 概要
- 指定のタグ以外を削除する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- checkRMTag, processXMLforRemoveTags
- 概要
- XMLのリスト構造をベースに番号を付け直す
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforRenumbering, processXMLforRenumbering2
- 概要
- XMLインストラクションを使い、特殊文字(改行や改ページなど)を挿入する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforSpecialCharacters
- 概要
- XMLインストラクションを使い、特殊文字(改行や改ページなど)を挿入する(CS4-)
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforRemoveInstructions, processXMLforSpecialCharacters2
- 概要
- XMLインストラクションを使い、特殊文字(改行や改ページなど)を挿入する(CS4-)。instructionの後には⋈を入れておき、これを探索する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforSpecialCharacters3, insertSpecialCharacter
- 概要
- XMLインストラクションを使い、目次テキストを出力する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- getTOC, processXMLforTOC
- 概要
- XPathにマッチする要素を切り出してテキストフレーム化する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- MakeBlock, ProcessSubset, ProcessPlaceBlock
- 概要
- 特定記号に囲まれた数字を丸数字、黒丸数字などに置き換える
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- roundNumbers, getCID
- 概要
- 指定のXML要素を子要素を含めてコメントをテキストフレーム化し、線を引く
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforComment, redrawProcessXMLforComment, redrawProcessXMLforCommentLine
- 概要
- 左右ページのツメ見出しを指定のマスタページに設定する。各見出しは適当なオブジェクトとしてラベルを定義しておく。Y座標はそのまま使われる
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- putSideMarker
- 概要
- 指定のXML要素を子要素を含めて側注テキストフレーム化する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforSidenote2, processSideNote, moveFootnoteToSide, redrawProcessXMLforSidenote2, processRedrawSideNote, placeSideNote, handleOverwrapSidenotes
- 概要
- 指定のXML要素を子要素を含めて側注テキストフレーム化する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforSidenote, redrawProcessXMLforSidenote, handleOverwrapSidenotes
- 概要
- (なし)
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- checkFootnotes, getTwo
- 概要
- 章扉を作成する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- doTobiraHandle, processTobiraObject, processXMLforSection, makeTobira
- 概要
- テキスト変数を使って章扉を作成する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- makeTobira2, makeTobira2style
- 概要
- 行送り記号を挿入する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- lineBreakOfStory, lineBreak, getLastX, toMmMode, revertMmMode
- 概要
- 必須マスターページ以外のページ要素をすべて消去し、右ページから始まる2ページの白ページと連結フレームを配置する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- GroupRubyタグの箇所を正しくグループルビにする
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforGroupRuby, processGroupRuby
- 概要
- dialogMakeCodeBlock-stage1.jsxなどで作成したデータベースを基に、テキストフレームをインラインテキストフレームに移動する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- <footnote>タグの内容を脚注とする。内容は1行であることを前提とし、文字スタイルは保持されるがそれ以外のXML情報およびスタイルは失われる。脚注の詳細オプションは、InDesign側の書式→脚注オプションで行う。注と監訳者注のように複数の注釈を行うことはできない
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforFootnote
- 概要
- <footnote>タグの内容を脚注とする。内容は1行であることを前提とし、文字スタイルは保持されるがそれ以外のXML情報およびスタイルは失われる。脚注の詳細オプションは、InDesign側の書式→脚注オプションで行う。注と監訳者注のように複数の注釈を行うことはできない。<footnoteの前には「₶」を入れて探索できるようにする
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforFootnote2, makeFootnote
- 概要
- XML要素のImageタグの画像を再貼り込みする
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforPlaceImage, placeImage
- 概要
- footnoteタグを削除する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforRemoveFootnote, ProcessRemoveFootnote
- 概要
- XMLインストラクションを使い、特殊文字(改行や改ページなど)を挿入する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- XMLインストラクションを使い、特殊文字(改行や改ページなど)を挿入する(glue code版)
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforSpecialCharacters, processSpecialCharacters, insertSpecialCharacters
- 概要
- XMLインストラクションを使い、特殊文字(改行や改ページなど)を挿入する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- XMLインストラクションを使い、特殊文字(改行や改ページなど)を挿入する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- \区切りのスタイルをスタイルグループのスタイルに置換する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- swap_ps, swap_cs, swap_os, swap_ts, swap_es
- 概要
- DTP勉強会トライアル テキストを縦中央に
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- DTP勉強会トライアル テキストフレームを並べる
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- DTP勉強会トライアル ルビを振る
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- setRuby
- 概要
- DTP勉強会トライアル 桁区切りを入れる
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- plusTen
- 概要
- 配置された数式画像のサイズおよびベースラインを調整するv2
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- loadConfig, tweakImagePDF2, backUnit, revertUnit
- 概要
- 目次のテキストフレームを選択し、ブックの情報を基にノンブルからのハイパーリンクを付ける
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- foreachAddHyperlink, addHyperlink, loadLinkDataFromBook, cleanUpHyperlink
- 概要
- 開いているドキュメントのタグを残したまま、単ページで複数ページのPDFを保存する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- exportSinglePDF
- 概要
- 段落の先頭に指定の文字スタイルの文字列を挿入する。リスト項目のナカグロなどに利用する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 全ページに指定のマスターページを適用する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- △語▲よみ☆を探してルビにする
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- setRuby
- 概要
- (なし)
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- キャプションの段落スタイルの文字列に連番を付ける
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- getCharacterStyleByName
- 概要
- InDesignファイルのリストを開き、変数の展開結果が登場順序と合致しているかどうかを調べる
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- normalize, getHashira
- 概要
- XMLドキュメントを探索し、Imageの中に貼り付けが行われていないものを報告する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLForImageCheck, processForImageCheck
- 概要
- 選択しているオブジェクトにlabelが付いているかどうかを調査し、付いているときには緑の枠線で、付いていないときには赤い枠線で囲む。囲み情報に、Z-ラベル情報というレイヤーを作成している
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 現在開いているファイルのリンク図版について、フレームに対するサイズや位置の差異をレポートする
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- saveLog, iRound, checkLinkGeometry
- 概要
- マスターページの見開きで左右要素のずれを検出する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- simpleRound, roundUnit, getJustification, getCaptionLocation, setCaption, surroundItem, setMap, drawMasterItemsNote, checkDifference
- 概要
- 選択した段落スタイルで図・表・リストなどが連番になっているかをチェックする
(APIガイド)
- ライセンス
- その他のライセンス (ファイル先頭を参照してください)
- 関数
- eltAndNmbl
- 概要
- カーソル位置のXML要素を選択する(この後にInDesignのXMLメニューから「アイテムへ」を選べば、該当範囲が選択された状態になる)
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 選択している2〜3つのオブジェクトを使って囲み罫線をひく
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 検索設定をスクリプト文字列化し、コピーバッファに格納する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- makeCopyBuffer, esc, findParagraphStyle, findCharacterStyle, findObjectStyle, makeProperties, exportFind0, exportFind1, exportFind2, exportFind3, getEnumerator
- 概要
- ファイルパス一覧を指定し、各ファイルを開いてノンブルごとにテキストファイルを書き出す
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- exportText
- 概要
- スタイル名およびフォントの一覧をファイルに出力する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- exportParagraphStyleList, exportCharacterStyleList, exportObjectStyleList, exportTableStyleList, exportCellStyleList, exportStyleList
- 概要
- <index> XML要素を探し、そのページノンブルと索引項目からなるリストをファイルに出力する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processDocumentForIndex, processDocumentIndices, processXMLforIndex
- 概要
- <label> XML要素を探し、getLabelsで抽出したノンブルで置き換える(バッチ版)
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processDocumentForPageRef, saveLog, processPageRef, replacePageRef, loadLabelList
- 概要
- <label> XML要素を探し、そのidとノンブルのリストをファイルに出力する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processDocumentForLabel, processDocumentLabel, processTakeLabel
- 概要
- メインのテキストフレームがあふれているときに、指定のマスターページを適用したページを追加する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 指定の段落スタイルの文字列を左の柱とする。マスターページの柱の箇所には「柱左」というテンプレート文字列を含むテキストフレームを用意しておく
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 指定の段落スタイルの文字列を右の柱とする。マスターページの柱の箇所にはセクションマーカーを含むテキストフレームを用意しておく
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 指定の段落スタイルの段落の前にアイコンを挿入する。挿入位置にインラインテキストフレームを作成する。実際の配置を行うには、続いてdialogInsertImageIcon-stage2.jsxを実行する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 指定の段落スタイルの段落の前にアイコンを挿入する。dialogInsertImageIcon-stage1.jsxで作成したインラインテキストフレームに指定の画像ファイルを貼り付ける
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- (なし)
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 開いているドキュメントからPDFを生成する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 開いているドキュメントのタグを残したまま、単ページと見開きの2つのPDFを保存する(プリセットは固定)
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- ファイルリストを開き、ブックを作成する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- exportBook
- 概要
- 指定のXML要素をインラインフレーム化するために、テンポラリマスターページにデータベースの作成と切り出したテキストフレームを配置する。切り出し位置には挿入用のインラインテキストフレームを作成する。実際の配置を行うには、続いてsilentMakeCodeBlock-stage2.jsxを実行する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- <index> XML要素を探し、そのページノンブルと索引項目からなるリストをファイルに出力する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processXMLforIndex
- 概要
- InDesignファイルと出力ファイル名をタブで区切ったファイルリスト(「1-ch01/ch01.indd ch01.pdf」など)を開き、PSまたはPDFを作成する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- showInteraction, exportPDF, exportPS
- 概要
- 選択したリストをもとに、パッケージを生成する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processDocumentPackage
- 概要
- 現在開いている空のInDesignファイルに、指定フォルダの図版を貼り込んでいく。キャプションのテキストフレームに利用するオブジェクトスタイルfig-captionを作っておくこと
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- ファイルリストを開き、流し込みのための目次テキストを連番つきで出力する。あとで1列目に従ってソートする必要がある
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- exportTocXMLY, processDocumentForTocY, processXMLforTOCY
- 概要
- ファイルリストを開き、流し込みのための目次テキストを出力する。ページを通すこともできる
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- exportTocXML, processDocumentForToc, processXMLforTOC
- 概要
- 特定文字種の前後文字アキをベタにする
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 表の罫線を処理し、セルにスタイルを割り当てる
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- replaceRulerOfTable
- 概要
- main-contentというラベルを持つテキストフレーム(silentClearDocumentなどで生成する)に指定のXMLファイルを流し込む
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- (なし)
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- (なし)
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 選択した画像のリンクのファイルをリネームし、再リンクする
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 特定段落・文字スタイルの番号をリフレッシュする。リセット段落スタイルに出会ったら番号をリセットする
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- getPage, renumSidenote, _renumSidenoteCommon
- 概要
- ◆→math:図版ファイル名←◆を該当図版ファイルで置換する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- replaceMath
- 概要
- 書き換え用にスタイル名の一覧をファイルに出力する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- loadMap, setStyleToDocument, foreachIndb, getParagraphStyleList, getCharacterStyleList, getObjectStyleList, getTableStyleList, getCellStyleList, skipName, getStyleFromDocument, exportStyleList, setParagraphStyleList, setCharacterStyleList, setObjectStyleList, setTableStyleList, setCellStyleList
- 概要
- 特定記号に囲まれた数字を丸数字、黒丸数字などに置き換える
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- フォルダ内のInDesignファイルを再帰的に検索し、IDX、テキスト、PDF、PS、RTF、XMLに変換する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- openInputFolder, filename, openAndSave, saveRTF, saveText, savePDF, saveINX, savePS, saveXML, parseContentOfRange, xsub, storyToTag
- 概要
- 選択したテキストフレームをテキスト化してファイルに出力する(タグは参照しない)
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- storyToText
- 概要
- 選択したテキストフレームをサブフレームを含めてテキスト化してファイルに出力する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- parseContentOfRange, storyToTag
- 概要
- APFSで順序が狂ってしまうスクリプトウィンドウの代替品
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- itemDoubleClickHandler, makeTree
- 概要
- 選択しているオブジェクトに指定のlabel値を付ける
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 選択しているオブジェクトのlabelの値をnameにも適用する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- <pageref> XML要素を探し、getLabelsで抽出したノンブルで置き換える
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- processPageRef, replacePageRef, loadLabelList
- 概要
- 選択位置の後ろにある()内のテキストをルビとして、選択位置に配置する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- setRuby, getRubyInParent
- 概要
- 選択したテキストフレームの文中にあるア〜ケの単一カナ文字に文字スタイルを適用すると共に、スミベタの白抜きの異体字にする
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- prepost
- 概要
- いわゆるテキストばらし。テキストフレームの各段落を個別フレーム化する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 開始ページを指定する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 表内のlabel-*という文字列を、*のラベルを持つテキストフレームで置き換える
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 配置された数式画像のサイズおよびベースラインを調整する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- removeZenkaku, loadConfig, tweakImagePDF, backUnit, revertUnit
- 概要
- 開いているドキュメントのタグを一旦解除し、PDF保存してからアンドゥする
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- 開いているドキュメントのタグを一旦解除し、単ページと見開きの2つのPDFを保存してからアンドゥする
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
Photoshop CS3 以降向けのスクリプトもいくつか作成しています。
- 概要
- フォルダを選択し、中のビットマップ画像をリサイズおよびCMYK化したPSDとして出力する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- convertToCMYKPSD
- 概要
- フォルダを選択し、中のビットマップ画像をdpi変更、crop、グレースケール化、を行い、PDFとして出力する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- convertToPDF2
- 概要
- フォルダを選択し、中のビットマップ画像をリサイズおよびグレースケール化したEPSとして出力する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- convertToGrayEPS
- 概要
- フォルダを選択し、中のビットマップ画像をリサイズおよびGrayScale化したPSDとして出力する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- convertToGrayPSD
- 概要
- フォルダを選択し、中のビットマップ画像をリサイズおよびPDFとして出力する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- convertToPDF
- 概要
- フォルダを選択し、中のPSD画像をPNGとして出力する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- convertToPNG
Illustrator CS3 以降向けのスクリプトもいくつか作成しています。
実行はメニューの「ファイル」→「スクリプト」→「その他のスクリプト」で選択するか、macOSの場合は Finder で「アプリケーション」→「Adobe Illustrator CS*」→「プリセット」→「ja_JP」(CS4以降の場合)→「スクリプト」の中に配置して Illustrator を再起動することで利用できます。サブフォルダを作成して、ものかのさんの SPAi を利用するのが便利でしょう。日本語でメニューに表示したいときには、エイリアスで日本語ファイル名を作るとよいでしょう。
- 概要
- フォルダを選択し、中のEPS画像をCMYK→グレースケール化して保存し直す
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- saveAsGrayEPS
- 概要
-
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- round, boxResizer
- 概要
-
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- borderBox
- 概要
- テンプレートファイルを開いている状態で、保存先フォルダとマップファイルを選択し、テンプレートの文字列を置換して保存する。マップファイルは最初の行に「FILE タブ 1つめのプレイスホルダ 2つめのプレイスホルダ ...」と記述し、以降の行で「出力ファイル名 1つめプレイスホルダへの値 2つめプレイスホルダへの値 ...」と書いていく
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- replaceDocument
- 概要
- dialogFigureStringSupportの設定UI
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- saveData
- 概要
- オブジェクトを選択していたら規定サイズに縮小し、ロックレイヤーにする。テキストを選択していたら指定フォント・Q数にして、行単位にバラす。アミ指定があるときはアミを下に置く
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- resizePNG, splitTexts, splitFrame, setAmi
- 概要
- フォルダを選択し、中のPSD画像をAIファイルにリンクで貼り付けて保存する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- saveAsLinkedAI
- 概要
- テキストを行単位でバラすとともに、◆→math:〜←◆となっている箇所を画像ファイルで差し替える
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- splitFrame, replaceMath
- 概要
-
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- checkCMYK
- 概要
-
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- saveAsAI, changeFont, getChildAll, ungroup
- 概要
- フォルダを選択し、EPS/AIファイルを古いバージョンに保存し直す(使用バージョンでオープン可能であることが前提)
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- downGrade
- 概要
- アプリケーションフォント一覧をファイルに出力する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- dump
- 概要
- フォルダを選択し、EPS/AIファイルをSVG形式で保存し直す
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- getCSVersion, saveAsAI
- 概要
-
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- saveAsEPS
- 概要
- フォルダを選択し、EPS/AIファイルをPDF形式で保存し直す
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- saveAsPDF
- 概要
- フォルダを選択し、EPS/AIファイルを最低300dpiにしてから、アートボードをオブジェクトサイズにフィットさせ、PDF形式で保存し直す
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- saveAsPDF
- 概要
- フォルダを選択し、EPS/AIファイルをPNG形式で保存し直す
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- saveAsPNG
- 概要
- フォルダを選択し、EPS/AIファイルをSVG形式で保存し直す
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- getCSVersion, saveAsSVG
- 概要
- フォルダの画像のフォント一覧レポートを生成する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- saveAndRead
- 概要
-
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- replaceFont
- 概要
-
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- 概要
- Illustratorスクリプト用共通ライブラリ
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- getHwjStateFileObj, readHwjStateFile, writeHwjStateFile, mmtopt, qtopt
- 概要
-
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- saveAsEPS
- 概要
- フォルダを選択し、PDFファイルを指定のPDFプリセットで保存し直す
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- saveAsPDF
- 概要
- エラーレポートファイルまたはフォルダを指定して画像ファイルを並べた1枚のファイルを作成する。望むならPDFとして保存できる
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- mmtopt, createPage, loadFromReport, loadFromDir, findImages
- 概要
- フォルダを選択し、古い形式/CIDフォントのEPS/AIファイルをEPS形式で保存し直す
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- replaceFont
- 概要
- フォルダを選択し、AIまたはEPSのファイルを指定幅リサイズおよびDPIセットする。ファイルは上書きされる
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- resizeAI, unLockItems, lockItems, unLockLayers, lockLayers, resizeDoc, setResolution
- 概要
- 現在開いているファイルを保存し、アウトラインファイルバージョンも作成して保存する
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
- save_with_outline_main, createOutlineFile
- 概要
-
(APIガイド)
- ライセンス
- 使用許諾 に準じる
- 関数
このページに掲載している各スクリプトは、特に注記がない限りは次のソフトウェア使用許諾同意書に記載した条項にて利用・配布できます。[テキスト形式 (UTF8), テキスト形式 (シフトJIS)]
ソフトウェア使用許諾同意書
本ソフトウェアの利用・変更・再配布にあたっては、下記の使用許諾同意書に
同意する必要があります。
- 本使用許諾同意書における「ソフトウェア」とは、機械可読の資料 (ライブラリ、スクリプト、ソースファイル、データファイル)、実行形式、および文書を意味します。
- 本ソフトウェアの使用許諾同意書に同意する限りにおいて、使用者は本ソフトウェアを自由に利用、変更することができます。
- 本ソフトウェアに変更を加えない限りにおいて、使用者は本ソフトウェアを自由にコピー、再配布することができます。
- 本ソフトウェアは無保証です。作者およびそれに関連する組織、配布者は、本ソフトウェアの使用に起因する一切の直接損害、間接損害、偶発的損害、特別損害、懲戒的損害、派生的損害について何らの責任・保証も負いません。
- 本ソフトウェアを変更した上で再配布するときには、下記の事項すべてに従わなければなりません。
- 使用許諾同意書の内容に変更を加えてはなりません。技術上の理由で文字エンコーディングの変換を行うことは許可しますが、その使用者が特殊な技術的措置なしに可読な形でなければなりません。
- 技術上の理由でバイナリ化・難読化を行う場合も、変更箇所を含めたソフトウェアを、その使用者が可読可能な形式の形で同一のメディアで提供しなければなりません。本使用許諾同意書の2条および3条により、使用者が可読形式の該当ソフトウェアを変更、コピー、再配布することを妨げてはなりません。
- ソフトウェア構成物の所定の作者名の欄に、変更者のクレジット(個人名、企業名、所属、連絡先など)を「追加」しなければなりません。
- 本ソフトウェアを変更した上で再配布するときには、変更理由およびその内容を明記することが推奨されます。
- 使用者がソフトウェアに適用可能な特許に対して特許侵害にかかわる何らかの行動を開始した時点で、この使用許諾同意書は自動的に終了し、以降使用者はこの使用許諾書によって与えられた一切の権利を放棄するものとします。
著作権所有者 Copyright (C) 2008-2017 Kenshi Muto. All rights reserved.
使用許諾同意書バージョン1.0
著作権所有者による書面での事前の許可がない限り、この使用許諾同意書に変更を加えてはなりません。
Copyright 2008-2021 Kenshi Muto