みなさんはレイヤーを吹き飛ばしたくなったことはありますか?
ない?例えばこういう時です。(動画リンク)
じゃあ早速レイヤーを吹き飛ばしましょう。
今回はPhotoshopです。
実装された運用
Photoshop上で実行するとUIパネルが出るので(2)(白)(白)を支払って唱えます。
すべてのレイヤーを破壊し上書き保存、すべてのヒストリーを削除(再生できない要素)します。
想定した運用
GUIにPSDをドラッグ&ドロップしたらレイヤーを全削除して上書き保存するやつ。
手法選定
- GoかPythonかJavascriptでPSDの上書きできるやろ
->読み込み用のPSDパーサーはあるけど書き込み用が無い。 - バイナリから直接レイヤーデータ消去しよ
->めんどくさ - Psスクリプトにしよ
実装
UIは省略します。
すべてのレイヤーを破壊する。それらは再生できない。.jsx
var doc = app.activeDocument;
//全レイヤー結合
doc.mergeVisibleLayers();
//統合レイヤー削除
doc.layers[0].allLocked = false;
doc.layers[0].remove();
//保存
doc.save();
//履歴削除のためブリンク
var _path = doc.fullName.fullName;
doc.close();
app.open(new File(_path), OpenDocumentType.PHOTOSHOP);
HoshinoNia/wrathofgod: すべてのレイヤーを破壊する。それらは再生できない。
感想
誰かGoかPythonでPSDの上書き操作できる手段を教えてください。