[Photoshop]コーディングの手間を省略!PSDファイルからテキストを抽出してtxtファイルにまとめてくれるスクリプト

[Photoshop]コーディングの手間を省略!PSDファイルからテキストを抽出してtxtファイルにまとめてくれるスクリプト

どうも。Xperia arcの外装に小さなヒビを発見して自分の心にも小さなヒビが入りました。hakoishiです。
扱い荒かったのかなぁー…

さて、今回はPSDファイルからテキストを抽出してtxtファイルにまとめてくれるスクリプトのご紹介です。
コーディングの時、PSDファイルからテキストをコピーしてくるのが地味に手間だったりしますね。フォント環境の無いPCだと都度警告が出たりもするし。
テキストファイルからならコピペもサクサク。時間短縮に、ストレス軽減に、まずは使ってみてください。

PS_BRAMUS.TextExport 1.3

下記ページの「Download PS_BRAMUS.TextExport (PSD2TXT)」からファイルをDLします。

解凍すると「PS_Bramus.TextExport-1.3.jsx」というファイルが出来上がりますので、スクリプトフォルダに格納します。Windows7の場合はここ。

  • C:\Program Files\Adobe\Adobe Photoshop (バージョン)\Presets\Scripts

そしてPhotoshopを再起動。
「ファイル」メニュー⇒「スクリプト」に「PS_BRAMUS.TextExport-1.3」という項目が増えているはずです。
PSDファイルを開いた状態でこのスクリプトを実行すればOK。
しばらく待つと、指定したファイル名のtxtファイルが書き出されます。

生成テキストファイル例

*************************************
* START TextExport for (ファイル名).psd
*************************************

LayerPath: /
LayerName: レイヤー3

LayerContent:
テキスト3テキスト3テキスト3テキスト
3テキスト3テキスト3テキスト3テキスト3

*************************************

LayerPath: /レイヤーフォルダ2/
LayerName: レイヤー2

LayerContent:
テキスト2テキスト2テキスト2テキスト2

*************************************

LayerPath: /レイヤーフォルダ1/サブレイヤーフォルダ1/
LayerName: レイヤー1

LayerContent:
テキスト1

*************************************
* FINISHED TextExport for (ファイル名).psd
*************************************

レイヤーフォルダ名などの階層情報、レイヤー名とともに書き出されます。
スマートオブジェクト内のテキストは書き出されませんので、そこはご注意を。

レイヤーの重なり順が下のものから順に書き出されます。

備考

よりシンプルな形式で書き出せるスクリプトもありましたので併せてご紹介。
(ただし、上のよりちょっと処理重いかも。。)

「テキストデータ抽出スクリプト (Zip形式)」リンクからDLしてください。
jsファイルですが、上記と同じようにスクリプトフォルダに格納して使用できます。

生成テキストファイル例

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<title></title>
</head>
<body>
テキスト1

テキスト2テキスト2テキスト2テキスト2

テキスト3テキスト3テキスト3テキスト
3テキスト3テキスト3テキスト3テキスト3

</body>
</html>

htmlのbody内に書き出される形式です。こちらは階層などの情報は無しで、テキストのみ。
やはりスマートオブジェクト内のテキストは書き出されません。
まるっとコピペしてしまえるので、コーディングのベースとして使いやすい方も多いのでは。

こちらは、レイヤーの重なり順が上のものから順に書き出されます。

まとめ

処理にかかる時間はPSDによりけりですが、レイヤー数が多い、レイヤーフォルダの階層が深いといった場合は時間がかかりがちです。

あと、まとめというかオマケ。

同じ作者によるスクリプトで、PSD⇒TXT、のち、更新したTXT⇒PSDへ戻して修正。ができるものがあります。
下記ページの「Download / License」からどうぞ。

こちらはデザイナーさんにオススメ。
使い方は下記のブログで詳しく紹介されていますのでご参照ください。

  • このエントリーをはてなブックマークに追加

この記事を読んだ人にオススメ