続・デジカメの写真を気軽に印刷して保存するために

前回の続き。できる限り安く写真をプリントしたい人向けで。大学のプリンターとかでもいいかも。

maxon-gardenon.hatenablog.com

 

このスクリプトは、A3サイズ(おおよそ)で、たて3、よこ4で合計12枚の写真を並べる画像の作成する。イメージマジックとバッシュが使えればよいです。僕はcygwinでやってます。単純にmontageをすると、横に4枚並べていく仕様なので、それだと100円のA4ファイルに折って入れて保存していると、時系列で写真を追うとページを行ったり来たりして、使用感が汚くて個人的にムカついてたんですが、今度のは縦に並べてくれるので、アルバムっぽくきれいに見れます。

見た目はこんな感じ。全然わからないかもしれない。今度はファイル名は表示されない感じ。なんでだ?別にいいか。

f:id:kokkaikiseidoumei:20160320204345j:plain

f:id:kokkaikiseidoumei:20160320204344j:plain

 

#!/bin/bash

#to make a contact sheet

echo "このスクリプトは該当フォルダ内で行ってください。"
echo "理解できたならエンターを押せ!"
read n


#拡張子の統一
for i in `find ./ -type f | grep .JPG`
do
mv $i ${i%.JPG}.jpg
done

##対象ファイルの表示
ls -1 *.jpg
echo "############作成中##################"

#thank you imagemagick
montage *.jpg -verbose -label '%f' -font Helvetica -pointsize 10 -background '#000000' -fill 'gray' -define jpeg:size=500x500 -geometry 500x500+3+3 -auto
-orient -tile 1x3 tmpo-%02d.jpg

echo "############作成中1x3###############"
ls -1 tmpo*.jpg

montage tmpo*.jpg -verbose -background '#000000' -fill 'gray' -geometry +0+0 -auto-orient -tile 2x1 tmpoo-%02d.jpg

echo "############作成中2x1###############"
ls -1 tmpoo*.jpg

montage tmpoo*.jpg -verbose -background '#000000' -fill 'gray' -geometry +0+0 -auto-orient -tile 2x1 contact-dark.jpg


echo "###以下のファイルが作成されました###"
ls contact-dark*.jpg

# clean
rm tmp*.jpg

##説明
#3x1の写真表示を2つよこにくっつけて、さらに横にくっつける、ということで擬似的に縦の並びで4x3にしてる。
#受け渡しで全部処理するには、うちのパソコンじゃ重い。

#Reference
## base bash http://blog.patdavid.net/2013/04/using-imagemagick-to-create-contact.html
## montage into columns http://www.imagemagick.org/Usage/montage/
##連番を上手にする方法 %02d https://www.imagemagick.org/discourse-server/viewtopic.php?t=11648


exit

A4版だとこっち。別に上のを一過程飛ばしてるだけなんだけど。これをコンビニでカラー印刷すれば、写真プリント代は約50円ですね。安い!ファミマだと光沢紙印刷もあるので、より写真に近い状態で、安い。またセブンイレブンだと小冊子印刷ができるので、これも安い。

f:id:kokkaikiseidoumei:20160320204803j:plain

#!/bin/bash

#to make a contact sheet

echo "このスクリプトは該当フォルダ内で行ってください。"
echo "理解できたならエンターを押せ!"
read n


#拡張子の統一
for i in `find ./ -type f | grep .JPG`
do
mv $i ${i%.JPG}.jpg
done

##対象ファイルの表示
ls -1 *.jpg
echo "############作成中##################"

#thank you imagemagick
montage *.jpg -verbose -label '%f' -font Helvetica -pointsize 10 -background '#000000' -fill 'gray' -define jpeg:size=500x500 -geometry 500x500+3+3 -auto
-orient -tile 1x3 tmpo-%02d.jpg

echo "############作成中1x3###############"
ls -1 tmpo*.jpg

montage tmpo*.jpg -verbose -background '#000000' -fill 'gray' -geometry +0+0 -auto-orient -tile 2x1 contact-dark.jpg

 

echo "###以下のファイルが作成されました###"
ls contact-dark*.jpg

# clean
rm tmp*.jpg

##説明
#3x1の写真表示を2つよこにくっつける、ということで擬似的に縦の並びで2x3にしてる。
#受け渡しで全部処理するには、うちのパソコンじゃ重い。

#Reference
## base bash http://blog.patdavid.net/2013/04/using-imagemagick-to-create-contact.html
## montage into columns http://www.imagemagick.org/Usage/montage/
##連番を上手にする方法 %02d https://www.imagemagick.org/discourse-server/viewtopic.php?t=11648


exit