らいちのヒミツ基地

公然のひみつ基地です

MENU

Photoshopで大量の画像にcsvからテキスト流し込み

大量の同サイズの画像にExcelファイルに合わせてテキストとウォーターマークを流し込む作業…面倒ですね。Photoshopの「変数」機能でサクッと自動化しましょう。その方法を解説します。

f:id:AzuLitchi:20190624180538j:plain

大量の画像にExcelのテキストを流し込む作業依頼が来た

クライアントのアンコさんから連絡が来ました。

f:id:AzuLitchi:20190624180013j:plain

60個の画像全部、右下に右揃えでテキストの注釈を入れて左上にウォーターマーク入れて連番で書き出す、という依頼です。

f:id:AzuLitchi:20190624180016j:plain

f:id:AzuLitchi:20190624180019j:plain

またこれか。

流し込みとは

この場合の流し込みとは、ある書式(雛形)に読み込んで画像やテキスト(文字)などを配置することです。
業界用語?

ウォーターマークとは

ウォーターマークとは本来紙の透かしのことを指しますが、最近では著作権表示などのために画像や動画に小さな図案や文字を写し込むことを指すことが多いです。

f:id:AzuLitchi:20190624172135j:plain

手作業でやる場合

手作業でやるなら下記の手順になります。

  1. Photoshopで「ファイル→スクリプト→ファイルをレイヤーとして読み込み」
  2. テキストレイヤーとウォーターマークも60個レイヤー複製
  3. テキストレイヤーとウォーターマークと画像をグループ化
  4. テキストレイヤーにExcelファイルからコピペを繰り返し
  5. グループ毎に画像を出力するスクリプトで一括書き出し

スクリプトはこういうのを、ちょっといじってPNGで出力してます。

雪待夜: Photoshopでグループ毎にJPEG出力する

ある程度自動化しているとは言え、コピペが面倒。

Photoshopで大量の画像にcsvから自動でテキストを流し込む方法

Photoshopの「変数」機能を使います。

こちらの画像を

f:id:AzuLitchi:20190624172654j:plain

f:id:AzuLitchi:20190624172258j:plain

指定通り、左上にウォーターマークをいれ、右下にキャプションを入れるよう一括で自動変換してみます。

f:id:AzuLitchi:20190624172644j:plain

f:id:AzuLitchi:20190624171050p:plain

雛形を準備

まず、Photoshopで雛形となるレイヤーファイルを作ります。
この場合は640×480のファイルを作成、指定通りの位置に注釈サンプルとウォーターマークを配置します。

f:id:AzuLitchi:20190624170840p:plain

レイヤー構成はこんな感じ

csvを準備

Excelファイルを開いて、列の見出しに変数名っぽいのを入れておきます。

この時、読み込むファイル名の列も作っておく必要があります。
MacならFinderで読み込むファイルを全て選択してコピー、Excelにペースト、という手順です。

ここではファイル名を「img_files」、注釈を「caption」と設定しておきました。

f:id:AzuLitchi:20190624170759p:plain

「別名で保存」でutf-8のcsvに書き出します。

f:id:AzuLitchi:20190624170813p:plain

書き出したcsvは画像が入っているフォルダに配置しておく必要があります。


f:id:AzuLitchi:20190624170826p:plain

変数を定義

メニューから「イメージ→変数→定義」を開きます。
「流し込み画像に置換」レイヤーのところは「画像の置き換え」にチェックを入れて「img_files」をセットします。

f:id:AzuLitchi:20190624171250p:plain

今回画像ファイルは全て画格を同一にしてあるので「変更なし」で設定しましたが、置き換え方法は適宜変更すること。
置き換え方法を変えると下部の「説明」のところにどう置換されるか表示されます。

f:id:AzuLitchi:20190624171402j:plain

「注釈サンプル」レイヤーのところは「テキストの置き換え」にチェックを入れて「caption」をセットします。

f:id:AzuLitchi:20190624171441p:plain

変数のデータセット

左上プルダウンメニューから「データセット」を開きます。

右側の「読み込み…」のところをクリック

f:id:AzuLitchi:20190624171533j:plain

csvファイルを読み込みます。
エンコードはutf-8、「最初の列をデータセット名として使用」にチェックを入れます。

f:id:AzuLitchi:20190624171553p:plain

前項で変数を正しく定義できていれば正常に読み込めます。

「プレビュー」にチェックを入れて◀ ▶をクリックすると、どのように置換されるか確認できます。

f:id:AzuLitchi:20190624171619p:plain

問題なさそうなら「OK」を。

書き出し

メニューから「ファイル→書き出し→データセットからファイルを書き出し」を開きます。

  • 書き出すフォルダを選択
  • 「データセット」を「すべてのデータセット」に設定
  • ファイルの名前を設定。この場合は「データセット番号(01、02…)」

f:id:AzuLitchi:20190624171655j:plain

OKを押せば指定したフォルダに流し込み完了したpsdファイルが生成されます。

psdをPNGやJPEGに変換

お好みの形式に書き出すアクションを一度作っておけば「ファイル→自動処理→バッチ」で一括変換できます。

f:id:AzuLitchi:20190624171706p:plain

アクションを作る際、書き出すフォルダはユーザディレクトリに「images」などのフォルダを作っておいて、常に同じ場所に書き出されるようにしておいた方が楽です。

f:id:AzuLitchi:20190624171050p:plain

以上、60分かかる予定の作業を10分以下に短縮できました。

まとめ

大量の画像にExcelファイルからテキスト流し込みする際は、Photoshopの「変数」機能を使えば楽ちん。
単純作業は自動化で効率良く。


今回、例として使用した画像はこちらの記事からの引用です。

www.secret-base.org





それではまた・・・さよならいち!・∀・)ノ