画像から透過部分を周囲から切り抜く、KGPixelBoundsClipをCooca Framework化して利用していますが、macOS 15上でこれが動作しないことを確認しました。
このFrameworkをAppleScriptから呼び出せることで、Adobe PhotoshopなどのGUIアプリの併用が必要ないため、応用範囲がものすごく広くなりました。
一般向けに公開していない個人用ツールで、本フレームワークを利用しまくっていました。
しかし、macOS 15+MacBook Air M2(Retina Display)の環境では以前のように動作しません(Universal Binaryビルドずみ)。
本プログラムの動作原理はおそろしく簡単です。
周囲から1ピクセルずつ色を拾って、透明色が続く矩形エリアを検出します。CとかObjective-Cだとパフォーマンスを確保しやすい処理内容ですが(脳筋プログラミング)、インタプリタ型のAppleScriptだとこういう脳筋な処理内容だと著しく不利になります。
目下、
(1)かわりの部品をオープンソースのプロジェクトからみつくろう
(2)その後、OS内で類似の機能が追加されていないか調査する
(3)もう、あとくされないようにAppleScriptで書き換える
といった対処を検討中です。
(1)については、Image+Trim.swiftといったSwiftで書かれたプログラムが見つかっています。AppleScriptから呼び出すためには、Bridging Headerを書く必要があるので、ひたすらダルいです。
(2)については、たぶん実装されていないんでないかと(未調査)
(3)については、1ピクセルずつチェックするのでなければ作れそうです。画像の外周部を画像のサイズから計算して細分化したブロックに分割、このブロックごとに透明かどうかをチェックし、ある程度まとめて処理することで速度を稼げそうな気がします。
あとは、最初にサムネイル画像を作ってしまって、その小さくした画像で外周部から色をピックアップしていくという手段もあります。いくつかの方法を試してどれが一番速いかを調べておく必要がありそうです。