![見出し画像](https://assets.st-note.com/production/uploads/images/17682341/rectangle_large_type_2_9f9f49a9130dcbc01681c5133fd1d324.jpeg?width=1200)
F700のプリンターで適切に印刷できるファイルを簡単に生成するバッチファイル
F700については前回記事を参照のこと。
感熱紙プリンターつきデジカメF700は、アスペクト比4:3の画像しか撮影・再生などができない仕様にも関わらず、印刷される画像のアスペクト比は16:10となっています。
そのため、印刷された写真はアスペクト比が狂った、横に伸びた状態になってしまいます。
PCなどで画像処理して、「16:10の写真を、4:3になるように縦に引き伸ばして、F700に転送した上で印刷する」ということを行えば、正しい比率での印刷は可能です。
しかしF700は基本的に「F700で撮影した写真以外は受け付けない」という方針らしく、他のカメラの写真や画像ファイルなどはそのままではエラーになる・認識しない場合がほとんどです。
縦横比の正しい印刷結果をしたい場合、以下のような煩雑な手順が必要です。
・印刷したい写真をJPEGファイルで用意する
・16:10にトリミングする
・4:3になるようにストレッチする
・2048×1536 (300万画素)にリサイズする(画像サイズが大きすぎる・小さすぎる場合もエラーが出ます)
・YYYYMMDD_hhmmdd.JPG の形式でファイル名をつける(これ以外のファイル名は認識しません)
・カードリーダーを用いて、カメラ用MicroSDカードのJPGフォルダーにファイルを転送する(F700をUSBで直結しても、MicroSDカードは書き込み禁止になっています)
・F700にMircroSDカードを挿入、起動して再生モードにして印刷
以上の手順のうち、トリミング~ストレッチ~リサイズ~ファイル名設定までを自動で行えるWindows用バッチファイルを作りました。
バッチファイルの内容
ImageMagickが必要なので、インストールしておいてください。
以下の内容を、例えば f700res.bat といった名前のバッチファイルとして保存します。
@echo off
copy %1 tmp.jpg
rem ---- 縦長画像なら回転して横長にする
for /f %%i in ('magick identify -format %%w tmp.jpg') do set width=%%i
for /f %%i in ('magick identify -format %%h tmp.jpg') do set height=%%i
if %width% gtr %height% goto jumprotate
magick convert %1 -rotate +270 tmp.jpg
set th=%height%
set height=%width%
set width=%th%
:jumprotate
rem ---- 16:10よりも上下が長いなら上下をトリミング、左右が長いなら左右をトリミング
set /a tw=%width%/16
set /a th=%height%/10
if %tw% == %th% goto doresize
if %tw% gtr %th% goto cutwidth
:cutheight
set /a newheight=%width%*10/16
magick convert tmp.jpg -gravity center -crop %width%x%newheight%+0+0 tmp.jpg
goto doresize
:cutwidth
set /a newwidth=%height%*16/10
magick convert tmp.jpg -gravity center -crop %newwidth%x%height%+0+0 tmp.jpg
:doresize
rem ---- 日付取得してファイル名設定
set d=%date%
set tt=%time%
set t=%time: =0%
set outfile=%d:~0,4%%d:~5,2%%d:~8,2%_%t:~0,2%%t:~3,2%%t:~6,2%.JPG
rem ---- 無意味に高画質でも仕方ないので3MPにリサイズ
magick convert tmp.jpg -scale 2048x1536! %outfile%
del tmp.jpg
使い方
変換したい画像を、バッチファイルにドラッグアンドドロップするだけ。(コマンドプロンプトから、変換したいファイルを引数として与えて呼び出すこともできます)
元画像の縦横比やサイズは問いません。
縦画像なら横に回転され、適切にトリミング・ストレッチ・リサイズされた画像が、YYYYMMDD_hhmmdd.JPGのファイル名で生成されます。
変換処理を行った日時でファイル名がつきます。
この後は、MicroSDカードにこのファイルをコピーして、F700にMicroSDカードを移し、再生モードから印刷するだけです。