さようならESTK

みなさまご無沙汰しております。実はわたくし、社内ノマドワーカー状態でしてそれというのもメインマシンであるいMacが瀕死状態となってしまった為なのですが、新しいまっくさんがいらっしゃるまでの期間は空きマシンを間借りしての生活となっておりますw

そんなこんなで、瀕死のHDDから色々とサルベージしながら別のところで手を動かしているのですが、ちょっとした問題がありまして……Catalinaさんが32bitアプリケーションなんか知らないって言うのが原因なのですが、殆どのツールは諦めますがESTKだけは捨てたくねぇ~って思ってもどうしようもございません。この時の為にVSCode用に型定義ファイル整備したりデバッガに手をいれていた訳です。

でもね、VSCodeでデバッグするのってちょっと煩わしいんですよw

出来ればもっと軽快なワークフローがあればなって思います。で、過去の物を引っ張り出してくるわけなんです。

続きを読む……

面倒なときに四角形に戻してしまうスクリプト(Ai)

えーと、相方さんが勢い良すぎて埋もれてしまいそうなので危機感を感じていますが、9月からこちら連日残業という感じでほとんど休めていないかんじのTenです。
まだまだ此処も工事が続いていて何やってんだろう……と思われる方も多いかと存じますが、生暖かく見守っていただけたらと思う次第です。
さて、先日CEPコマンドリファレンスをリリースしましたが、あちらの電書は制作に3年以上費やしている代物です。特にVulcanInterfaceの解説は殆ど書かれていないものですので色々とぶっ飛んだ処理を作る際には必須だと思いますのでうまくご利用いただけたらと思います。

続きを読む……

convertSampleColorメソッドについて

ほとんど参考になる資料がないということで書いておきます。
細かいことを説明すると内部的なカラーマッピングテーブルとかも説明しなくてはいけなくなるのでユースケースから見ていきます。
まずはRGB->CMYKへの変換です。この場合以下のように引数を与えます。

alert(app.convertSampleColor(ImageColorSpace.RGB, [255,0,0], 
       ImageColorSpace.CMYK, ColorConvertPurpose.defaultpurpose));

引数について1つ目が変換元のカラースペース、2つ目がカラー値で上のケースではRGBの数値を配列として与えます。3つ目が変換先のカラースペースです。4つ目が変換用途でこのオプションの影響については後述します。
実行すると指定のRGB値に応じたCMYK値が返されますが、この値はドキュメントに設定されたカラープロファイルの影響を受けます。
つづいてCMYKからRGBへの変換を見てみましょう。

alert(app.convertSampleColor(ImageColorSpace.CMYK,
     [0,0,0,100],ImageColorSpace.RGB,ColorConvertPurpose.exportpurpose))

先程とほぼ同じ構成です。ドキュメントのカラープロファイルが変換に影響するのは先程のRGB->CMYK変換と一緒です。ここではK=100をRGBに変換していますが、この場合ColorConvertPurposeの設定が大きく影響します。Illustrator初期設定ー>ブラックのアピアランススクリーンpreviewpurposeプリント/書き出しexportpurposeに対応して挙動が変わります。これらをリッチブラックに設定してあるとこの2つのパラメータではBlack Preservationが有効になり、内部のカラーマップを参照してRGB->[0,0,0]と最も暗い色に変換されます。defaultpurpose及びdummypurposeではBlack Preservationは効きませんからカラープロファイルからダイレクトに変換されます。また、環境設定で全てのブラックを正確に表示を設定してある場合でもBlack Preservationは働きませんのでdefaultpurposeと同じ結果になります。
これでいいかな? おもちくん???


Illustratorの「Diacritics Position」について

昨日目の前をdiacVPosっていうのがとおりすぎていったんですが、こいつって発音記号の縦位置関連のプロパティーだったよなぁ…と思っているうちに見失いました。
後で思い出そうと頑張ってみましたがはっきりとしたことはわからなかったのですが、通勤電車の中でちょっと思い出しました。こいつってあらびっくやへぶらいな方々の為に用意された機能なのです。で、先程大急ぎで調べました。

characterAttributeschilddiacVPosdiacXOffsetdiacYOffsetの3つのプロパティが存在します。では試してみましょう。


グレイで表示されているのがDiacVPosType.DEFAULT_POSITIONです。ピンクがDiacVPosType.LOOSE_POSITION、ブルーがDiacVPosType.TIGHT_POSITIONです。enumeratorにはあとひとつOPENTYPEがあるのですが、現在はOpenTypeフォントを利用しますのでおおよそのケースではDEFAULTと同じになります。

更に数値でダイレクトにdiacritical markを動かしてみます。

app.selection.characterAttributes.diacXOffset = 500;

結果は…

黄色いほうが500移動したものです。

同様に縦方向は

app.selection.characterAttributes.diacYOffset = 500;

として、結果は以下のようになります。

※スクリプト実行時はテキストツールで全体を選択した状態でtextRangeに対して処理を行います。


パスオブジェクトを水平にしよう

みなさまにおかれましてはご清祥のこととお慶び申し上げます。

ということで、すでに本年も10%程経過してしましました。なにそれ、こわい! で、結構多忙で何もかも進まない状態のどん詰まりなのですが、ここんとこ結構冷え込んでオフトゥンから脱出するのが一苦労な状況です。みなさまにおかれましてはぱげでそれどころではないものと存じます。ということで、こっそりスクリプトを置いておきます。

続きを読む……


InDesignで圧縮ファイルを操作しよう(^-^)/

みなさまお久しぶりでございます。皆様におかれましてはご健勝のことと存じますが、無事年の瀬を乗り切れそうな方もそうでない方もそれなりに過ごしていただければと思う次第です。
わたしどもに関しては自動化フォーラムを消されたり(信じられない!)Communityが散々な出来(なんなんだろうねホントウニ!!!)だったりで、さんざん暴れまわって(だいたい裏で…)いるような次第でございますが、裏でちょろちょろっと(本当にチョットダケヨ)動いていたら暗躍とか言われて心外なのです。
まあ、こみゅにてぃに関しましては(問題はアレだけじゃないけどw)多くの皆様にご意見(罵声)・ご支持(本当か?)を頂き(実際はどうなんだろう?)良い方向に向かっている(多分ダメ)のかどうなのかはわかりません(本当ドウスンダコレ?)が、言う必要のあること(コレオオスギ)は言わせていただく(だいたいは裏で)と言ったスタンス(メンドウですぅ)でこれからも挑もう(多分)とは思うのです(ガンバルルルル)。
と長々と並べ立てているのですが、本題です。ばたばたしている間にAdvent Calendarの季節がやって来てしまったわけでして、この記事は「https://adventar.org/calendars/3958」の1番めのTipsにあたるものという事になります。一番最初ですからゆる〜く行きますねw

続きを読む……