InDesign の自動化

INDESIGN SDKS AND TOOLS
https://www.adobe.com/devnet/indesign/sdk.html

ADOBE INDESIGN CS6 スクリプティングガイド
https://www.adobe.com/content/dam/acom/en/devnet/indesign/sdk/cs6/scripting/InDesign_ScriptingGuide_JS_JP.pdf

InDesign スクリプトなどを公開されている方
http://nakatoji.lolipop.jp/index.php/extendscript

Is it possible to execute JSX scripts from outside ExtendScript?
https://stackoverflow.com/questions/3846626/is-it-possible-to-execute-jsx-scripts-from-outside-extendscript
# osascript ? を使用すると、command line のみの実行できるみたい。

Place と Export の自動化

InDesign スクリプトサンプルの中に、PlaceMultipagePDF.jsx というのがあり、Place を自動化している。ExportAllStories.jsx では書き出しを行なっている。ExportFormat という列挙型があり、ExportFormat.pdfType にすれば PDF で出力されそう。

Kindle で「InDesign自動化サンプルプログラム逆引きリファレンス」という書籍があり、非常に参考になる。

jsx 実行の自動化

“/Applications/Adobe ExtendScript Toolkit CC/ExtendScript Toolkit.app/Contents/MacOS/ExtendScript Toolkit” /Users/xxx/Desktop/Source1.jsx

上記スクリプトを打てば、とりあえず ExtendScript が開いて jsx が読み込まれる。ただ実行ボタンは手動で押す必要がある。

あと関係ないですが、Adobe Script では jsx という拡張子を使用するのですが、ググると DeNA jsx というのが出てきて非常にややこしい。

Pandoc から出力した icml を InDesign でスタイル整形

Markdown から pandoc で icml にして、ドキュメントに配置すると自動的に Paragraph Styles が作られる。Header 1 や Paragraph が定義されているため、ダブルクリックしてオプションを開いて編集すれば、その場で見た目を変えられる。

既に Paragraph Styles を編集済みの InDesign indd ファイルなどがあれば、Load Paragraph Styles から indd ファイルを読み込んで適用できる。

InDesign での XML 読み込み

Tags タブで必要なタグを定義して、XML 化したい箇所にタグを設定しておく。

View -> Structure -> Show Structure を選択して、Structure パネルを出して、Root 以下に定義したタグがぶら下がっている事を確認して、Export XML する。

あとは、出力された XML を編集して Import XML すれば読み込まれる。

Markdown から InDesign へ

Markdown を pandoc を使って icml に変換する。生成された icml を直接テキストエディタなどで開いてみると、該当のブロックに何の Paragraph Style が適用されるか見ることが出来る。

<ParagraphStyleRange AppliedParagraphStyle="ParagraphStyle/Header1">

ParagraphStyle/Header1 となっているところが重要で、この名前で適用される。そのため「Header1」や「Header2」や「Paragraph」などと名前で Paragraph Style を事前に登録しておく。あとは icml を InDesign から Place して読み込んで配置する。

それで、スタイルが適用される。

Photoshop と16bit tiff 画像の取り扱い

16 bit tiff 画像を扱う場面に遭遇したのですが、普段使用しているツールが対応しておらず、編集に苦労したので個人的にメモ。

Photoshop は 16 bit 値を直接指定できない

32 bit モードであれば、専用のカラーピッカーで値を指定できるが、16 bit モード時は従来の 8 bit と同じカラーピッカーが起動するため 0-255 の階調までしか扱えない。白 (255, 255, 255) を指定して塗れば、16 bit の最大値扱いとなり編集できないことは無いが、16 bit の階調が使えないのであまり意味がない。

Photoshop の情報タブの値は 32768 まで

なぜか、Photoshop の情報タブで 16 bit 画像の最大値の色を取得すると、32768 が表示される。なぜ、65536 では無いのか疑問だったけど、ググったらディジタル・フロンティアさんが、答えとなるリンクを紹介していた。

徒然なるままに #2 [AfterEffects: 16bitモードでexrの範囲外の値を取ってくる方法]
https://dftalk.jp/?p=10207

Photoshop CS の情報パレットを 16bit 表示にする方法
http://kb2.adobe.com/jp/cps/224/224128.html

ただ、ミッドポイントが何かはわからない。

Python tifffile で 16bit int 操作

他に対応するツールを探すのが大変だったのと、16 bit でペイントしたかった訳ではなく、16 bit tiff に必要な情報さえ詰め込めれば良かったので、簡単に導入可能な Python の tifffile モジュールを使って直接ピクセルを計算した。

Anaconda の Python 3.6 で、pip install tifffile で導入。

tifffile であれば 16 bit tiff の read, wriet も問題なく扱えた。また、Photoshop で 35536 と表示されていた箇所も、きちんと 65536 の値が返ってきた。

Houdini 参考資料

PDGについて
http://houdini.indyzone.jp/blog/pdg%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6/

TOPネットワークについて
http://houdini.indyzone.jp/blog/top%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6/

都市構築用タスクワークフローの作成
https://www.sidefx.com/ja/tutorials/create-a-task-workflow-to-build-cities/

PDGのPython関連ノードの解析してみる
https://qiita.com/takavfx/items/1c724490591b8f94ff56

Houdini ツール系ネタの参考

Houdini Tutorials
https://www.sidefx.com/tutorials/

Game Tool
https://www.sidefx.com/learn/game-tools/

Houdini Game Dev Toolの更新情報
https://support.borndigital.co.jp/hc/ja/articles/360000559302-Houdini-Game-Dev-Tool%E3%81%AE%E6%9B%B4%E6%96%B0%E6%83%85%E5%A0%B1-2019-09-27-

【Houdini】のためのスタンドアローンなツールを作ろう。
https://dftalk.jp/?p=20869
Houdini 15 のため若干古いが参考になります。

Houdini Engine API入門
https://qiita.com/jyouryuusui/items/3d86ab8e69652d5f951c
今の所、日本語で一番詳しい Houdini Engine の説明だと思う。

HOMの紹介
https://www.sidefx.com/ja/docs/houdini/hom/intro.html
ぱっと、Houdini Python にアクセスしたい場合に便利