スキャナートリマーのアイコン

スキャナートリマー 使い方 コマンドライン実行

使い方 コマンドライン実行

コマンドライン引数によって、スキャナートリマーの挙動や設定を変更できます (バージョン 1.2.5 ~の新機能)。例えば、/hide オプションを指定すると、画面が表示されなくなり、コマンドラインアプリケーションとしての実行が可能になります。

コマンドラインから直接実行する

ScannerTrimmer.exe は、純粋なコマンドラインアプリケーションでは無いので、コマンドラインから直接実行すると、終了を待たずに、次のコマンドを受け付ける状態になってしまいます。特に、/hide オプションに使用時に、上書き確認メッセージへの応答が困難になるので、/hide 指定時には、Start 命令/wait オプションを使用して起動するか、バッチファイル (.bat) から実行する必要があります。

start /wait ScannerTrimmer.exe /hide /empty:empty.bmp sample.bmp
Start /wait オプションの例

バッチファイルから実行する

コマンドライン引数には長さの制限があるので、処理するファイルのあるフォルダーへカレントディレクトリーを移動してから、相対パスでファイルを指定するのがおすすめです。下の例は、作者の環境では、そのまま動きますが、環境に合わせて、_EXEpushd での移動先、コマンドライン引数 を調整してください。

@echo off
set _EXE=X:\Original\cpp\ScannerTrimmer\ScannerTrimmer\Debug\ScannerTrimmer.exe
pushd "X:\Original\cpp\ScannerTrimmer\test\small"
 
if not "%ERRORLEVEL%" == "0" (
  exit /B
)

%_EXE% /hide /yes /empty:empty.bmp ayanami.bmp 2>err.txt

if not "%ERRORLEVEL%" == "0" (
  echo エラーが発生しました。err.txt を参照してください
)

popd
pause
バッチファイルの例 (sample.bat)

pushd は、cd /d とほぼ同様にカレントフォルダーを移動するコマンドですが、popd を呼ぶと、移動前のフォルダーに簡単に復帰できる点が異なります。ちなみに、cd /d/d オプションは、cd でドライブの移動を可能にするオプションです。

2>err.txt により、エラー出力が、err.txt に保存されます。/yes オプションにより、確認なしで、ファイルが上書きされ、標準出力と標準入力は使用されなくなります。

VB スクリプト (*.vbs) から実行する

vbs から実行する例です。作者の環境では、そのまま動きます。環境に合わせて、exePathfolderemptyFilefiles を調整してください。/reset オプションを指定していないので、/empty オプションで明示的に指定している「原稿無しでスキャンした画像」以外の設定は、最後に使用したものが引き継がれます。

Option Explicit

Dim exePath
exePath = "X:\Original\cpp\ScannerTrimmer\ScannerTrimmer\Debug\ScannerTrimmer.exe"
Dim folder
folder = "X:\Original\cpp\ScannerTrimmer\test\small"

Dim emptyFile
emptyFile = "empty.bmp"

Dim files
Set files = CreateObject("System.Collections.ArrayList")
files.add("ayanami.bmp")

Dim wsh
Set wsh = Wscript.CreateObject("Wscript.Shell")
Dim fso
Set fso = WScript.CreateObject("Scripting.FileSystemObject")

If fso.FolderExists(folder) Then

  wsh.CurrentDirectory = folder

  Dim cmdLine
  cmdLine = "2>err.txt"
  AppendArg cmdLine, exePath
  AppendArg cmdLine, "/hide"
  AppendArg cmdLine, "/yes"
  AppendArg cmdLine, "/empty:" & emptyFile
  Dim file
  For Each file in files
    AppendArg cmdLine, file
  Next

  Dim ret
  ret = wsh.Run("%comspec% /c " & chr(34) & cmdLine & chr(34), 1, True)

  If ret <> 0 Then
    WScript.Echo "エラーが発生しました。err.txt を参照してください: " & ret
  End If
  
Else
  
  WScript.Echo "フォルダーが見つかりません: " & folder
  
End If

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Sub AppendArg(cmdLine, arg)
  If cmdLine = "" Then
    cmdLine = Chr(34) & arg & Chr(34)
  Else
    cmdLine = cmdLine & " " & Chr(34) & arg & Chr(34)
  End If
End Sub


vbs ファイルの例 (sample.vbs)

Chr(34) はダブルクオート " です。

コマンドラインオプション一覧

設定を変更するオプション

/reset

全ての設定※1 を、既定値に戻します。/reset は、最初の引数として指定する必要があります※2。前回終了時の設定を引き継ぎたくない場合に使用できます。

※1 実行に影響しない履歴 (過去に入力した原稿無しでスキャンした画像など) は除きます
※2 他のオプションやファイルリストより後に指定するとエラーになります

例1) ScannerTrimmer.exe /reset
例2) ScannerTrimmer.exe "/reset"

/empty:

「原稿無しでスキャンした画像」のパスを : の後に続けて指定します。

例1) ScannerTrimmer.exe /empty:"empty.bmp"
例2) ScannerTrimmer.exe "/empty:empty.bmp"

/cut:

「切り取る端」を : に続けて指定します。auto 以外の値では、文字の順序は変わっても大丈夫です。例えば、tlbr、ltrb は同じ意味になります。

auto
自動で認識
ltrb
上下左右
rb
右下
lt
左上
rt
右上
lb
左下
lr
左右
tb
上下
l
r
t
b
ltb
左上下
rtb
右上下
ltb+
左上下、右上下を交互に
rtb+
右上下、左上下を交互に
例1) ScannerTrimmer.exe /cut:auto
例2) ScannerTrimmer.exe /cut:ltrb

/rotate:

「自動回転に使用する原稿の端」を : に続けて指定します。

none
回転しない
auto
自動で認識
l
左端
r
右端
t
上端
b
下端
lr
左右を交互に(1枚目が左端)
rl
右左を交互に(1枚目が右端)
tb
上下を交互に(1枚目が上端)
bt
下上を交互に(1枚目が下端)
例1) ScannerTrimmer.exe /rotate:auto
例2) ScannerTrimmer.exe /rotate:lr

/deep_cut:

「原稿を残すことよりも、余白を残さないことを優先する」かを : に続けて指定します。

on
優先する (チェック状態)
off
優先しない (チェック無しの状態)
例1) ScannerTrimmer.exe /deep_cut:on
例2) ScannerTrimmer.exe /deep_cut:off

/size:

「出力サイズ」を : に続けて指定します。

off
出力サイズを使用しません (チェック無しの状態)
x,y
x、y に横幅、縦幅を指定します (チェック状態)
例2) ScannerTrimmer.exe /size:off
例1) ScannerTrimmer.exe /size:640,480

/trim:

「追加のトリミング」サイズを : に続けて指定します。

off
追加のトリミングを使用しません (チェック無しの状態)
x,y
x、y に左右の幅、上下の幅を指定します (チェック状態)
例2) ScannerTrimmer.exe /trim:off
例1) ScannerTrimmer.exe /trim:4,4

/out:

保存場所の子フォルダー名を : に続けて指定します。

例) ScannerTrimmer.exe /out:trim

/format:

「保存形式」を : に続けて指定します。値は小文字でも大文字でも大丈夫です。

jpeg,x
jpeg 形式、画質 x で保存します。x は 0 ~ 100
jpg,x
jpeg 形式、画質 x で保存します。x は 0 ~ 100
jpeg
jpeg 形式で保存します
jpg
jpeg 形式で保存します
bmp
BMP 形式で保存します
png
PNG 形式で保存します
tif
TIFF 形式で保存します
tiff
TIFF 形式で保存します
例1) ScannerTrimmer.exe /format:jpeg,90
例2) ScannerTrimmer.exe /format:PNG

/thread:

「スレッド数」を : に続けて指定します。

例1) ScannerTrimmer.exe /thread:1
例2) ScannerTrimmer.exe /thread:4

挙動を変更するオプション

ファイルパス

オプション引数としてファイルパスを指定すると、自動的に、指定されたファイルに対する処理が開始されます。実行後にアプリケーションを自動終了するには、/end オプションか /hide オプションを併用します。

例1) ScannerTrimmer.exe a.bmp b.bmp
例2) ScannerTrimmer.exe /end a.bmp b.bmp

/end

/ 無しの引数で、対象のファイルを指定すると、処理が自動的に開始され、処理が終了した後、アプリケーションも自動終了します。対象のファイルが無い場合は、何もせずに終了するので、あまり意味はありません。

例) ScannerTrimmer.exe /end a.bmp b.bmp

/hide

スキャナートリマーの画面を表示しません。/ 無しの引数で、対象のファイルを指定すると、処理が自動的に開始され、処理が終了した後、アプリケーションも自動終了します。対象のファイルが無い場合は、何もせずに終了するので、あまり意味はありません。エラーは、「標準エラー出力」に出力されます。一方、上書きの確認メッセージは「標準出力」に出力され、「標準入力」から、OK または、キャンセルを入力するまで実行が停止します。確認無しで上書きする場合は、/yes オプションを併用します。

例1) ScannerTrimmer.exe /hide a.bmp b.bmp
例2) ScannerTrimmer.exe /hide /yes a.bmp b.bmp

/yes

確認せずに、ファイルの上書きしたい時に指定します。ファイルパス をコマンドラインに指定して自動実行させているときだけでなく、画面にドロップして実行する時にも、上書きの確認がされなくなるので注意してください。

例) ScannerTrimmer.exe /hide /yes a.bmp b.bmp

無料ダウンロード

スキャナートリマーは有料のソフトウェアですが、試用は無料です。十分に試用して、性能に満足いただけた場合にのみ、ご購入ください。

スキャナートリマー ダウンロード