2020年9月2日
EPS の中を解析するときに必要になったので作ってみました。
こちらになります。
ローカルPC上で Javascript 動作しますので、実行速度は使用PCの性能によります。
かつ、データもインターネット上に流さないので安全なハズです。
使い方
デコードしたい ASCII85 文字列を
テキストボックス内に入力して、
デコードを押します。
デコード処理が完了するとボタンの右側にダウンロードリンクが作成されますので、保存して完了です。
また、データによっては ASCII85 文字列の各行先頭に % (ポストスクリプト上でのコメント指定記号)がある場合があります。
その場合は
行頭の % を無視するにチェックを入れてから
デコードを押せば、正常にデコードされると思います。
さらに、EPS の保存バージョン9以降より、EPS ファイルの後半(%AI9_PrivateDataBegin 〜 %AI9_PrivateDataEnd 内)に Illustrator でのみ使用する データがあります。これも ASCII85 文字列ですが、デコードすると zlib により圧縮されたバイナリデータが得られます。
そこで特にこのデータ専用に、
デコード後に圧縮解除する(zlib)という設定を用意しました。
これにチェックを入れてから
デコードを押すと、ほぼテキストエディタで解析できるデータが得られると思います。
注意点
テキストボックスにデータを
ペーストする場合は、大きなデータ(256KByte以上くらい?)をペーストするとブラウザがフリーズすることがあります。
大きなデータをデコードする場合は、ASCII85 文字列だけをいったん別ファイルに保存して、
ファイルから読み込みを使用してみてください。
今のところ、Google Chrome, Firefox にて動作確認してます。
謝辞
圧縮解除ルーチンに関しては、
高度な JavaScript 技集ページ中の
zlib.js と
zlib-inflate.js を使用させていただきました。
また ASCII85 のデコードルーチンに関しては、dojo toolkit 中の
ASCII85 デコーダを 99% 流用しています。
最後になりましたが、この場をかりて御礼申し上げます。