# SmartJPEG for Linux v2.62.00 仕様書

Updated 2024/04/12
本ドキュメントでは、SmartJPEG for Linux(以下 SmartJPEG)の詳しい使い方について解説しています。
本ドキュメントは SmartJPEG for Linux Version 2.62.00 の仕様に基づいて記述しています。

- 使用許諾契約書は、「SmartJPEG for Linux」（以下、「本ソフトウェア」という）のご使用条件等を定めたものです。本契約の全部または一部に同意できない場合は、直ちに本ソフトウェアの使用を中止し、お客様の端末から本ソフトウェアをアンインストールしてください。
- 本ドキュメントに記載の内容はご契約のお客様のみに開示される秘密情報です。情報のお取り扱いにご注意ください。

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

#### 基本機能

オプション | 説明
--- | ---
-in | 入力ファイル名を指定します(必須)
-out | 出力ファイル名を指定します(必須)(*1)
-reducemode | ファイルサイズを縮小化するモード(優先するもの)を指定します
-outformat | 出力画像形式を指定します(*1)
-makeup | 画像メイクアップの指定(*2)
-makeupmode | 画像メイクアップモードの指定(*2)
-rotatel | 左回転
-rotater | 右回転
-resizealg | 拡大縮小アルゴリズムの指定
-longside | 拡大縮小の長辺指定
-width | 拡大縮小の幅指定
-height | 拡大縮小の高さ指定
-zoom | 拡大縮小の倍率指定
-resizenozoom | 元画像を拡大しない
-forcegrayscale | 強制グレースケール化の指定

#### 応用機能

オプション | 説明
--- | ---
-outext | 出力ファイル拡張子の調整を行うかどうかを指定します
-purpose | 用途を指定します
-autoresize | 自動リサイズを使います
-recovery | 元画像よりファイルサイズが大きくなったときに復元します
-jpegfilesizelimit | JPEGファイルサイズ調整を行います
-jpegfilesizelimithq | JPEGファイルサイズ調整時に、上限内でなるべく高画質になるように調整します
-jpegoptimize | JPEG最適化を指定します
-jpeglimit | JPEGクオリティ値の上限を指定します
-jpeglowerlimit | JPEGクオリティ値の下限を指定します
-jpegqualitysafety | 特定のタイプの画像でJPEG圧縮を抑制します
-jpegsampling | JPEGサンプリング形式の指定
-jpegexifrotate | JPEG Exif回転を行うかどうかの指定
-imageiccp | JPEG/AVIF/WebP ICCプロファイル処理の指定
-jpegiccp | JPEG/AVIF ICCプロファイル処理の指定(旧オプション)
-pngmode | PNGファイル出力時の最適化方法を指定します
-pnglossy | PNGファイル出力時に非可逆圧縮を行うかどうかを指定します
-pngreducemode | PNGファイル出力時の非可逆圧縮の縮小モードを指定します
-webplossy | WebPファイル出力時に、ロッシー圧縮を行うかどうかを指定します
-aviflossy | AVIFファイル出力時に、ロッシー圧縮を行うかどうかを指定します
-avifsampling | AVIFサンプリング形式の指定
-avifthread | AVIF出力処理スレッド数指定
-bgcolor | 背景色を指定します

#### アニメーション機能

オプション | 説明
--- | ---
-gifanime | アニメーションGIF変換を行うかどうかを指定します(*3)
-gifaloop | アニメーションGIFのループ回数を指定します(*3)
-webpanime | アニメーションWebP変換を行うかどうかを指定します(*3)
-webpaloop | アニメーションWebPのループ回数を指定します(*3)
-webpaundither | アニメーションWebP出力時にディザ消しフィルタを使用するかどうかを指定します(*3)
-avifanime | アニメーションAVIF変換を行うかどうかを指定します(*3)
-loadserial | 連番ファイルを読み込みアニメーションGIF/WebP/AVIFに変換します(*3)
-serialfps | 連番ファイルのアニメーションGIF/WebP/AVIF化時のフレームレートを指定します(*3)

#### クリップ機能・フレーム配置機能

オプション | 説明
--- | ---
-clip | 入力画像の指定範囲を切り出して出力します(クリップ機能・指定範囲)
-clipcenter | 入力画像の中央を切り出して出力します(クリップ機能・中央基準)
-clipround | 入力画像を円形に切り出して出力します(クリップ機能・円形)
-frame | 入力画像を指定位置に配置して出力します(フレーム配置機能)
-resizefit | 画像を指定の方法でリサイズします
-paddingcolor | 出力画像に余白が発生する場合の余白色を指定します

#### スタンプ機能

オプション | 説明
--- | ---
-stamp | スタンプ機能(画像合成)を使用します
-stamppos | スタンプ画像の配置位置を指定します
-stampx | スタンプ画像の水平オフセット値(ピクセル単位)を指定します
-stampy | スタンプ画像の垂直オフセット値(ピクセル単位)を指定します
-stampw | スタンプ画像の水平オフセット値(％単位)を指定します
-stamph | スタンプ画像の垂直オフセット値(％単位)を指定します
-stamptile | スタンプ画像をタイリング合成します
-stampspace | タイリング間隔を指定します
-stampborder | タイリングがはみ出した場合の処理を指定します
-stampopaque | スタンプ画像合成時の不透明度を指定します
-stampresize | スタンプ画像をリサイズしてから合成します
-stampnolarge | スタンプ画像の拡大を抑止します

#### JPEG多重処理スキップ機能

オプション | 説明
--- | ---
-optmarkwrite | JPEG最適化済みマークを出力するかどうかを指定します
-optmarkskipin | JPEG最適化済みマークがある画像の処理をスキップするかどうかを指定します
-optmarkskipout | JPEG最適化済みマークがある画像に対する上書きをスキップするかどうかを指定します

#### その他の機能

オプション | 説明
--- | ---
-dispinfo | 入力画像の情報を表示します
-dispoutinfo | 出力画像の情報を表示します

*1 PNG/GIF形式の出力には、「PNG・GIF出力ライセンス」契約が必要です。
*2 メイクアップ機能の利用には、「メイクアップライセンス」契約が必要です。
*3 アニメーションGIF/WebP/AVIF変換を行うには、「アニメーションライセンス」が必要です。

## 注意

- 同じオプションを複数指定することはできません。複数指定するとエラーになります。

## 終了コード

SmartJPEGは終了コードとして、処理に成功した場合は0を、失敗した場合は0以外の値を返すようになっています。

# 基本機能

# 入力ファイル名の指定(必須)

オプション：-in <filename>

<filename> に入力する画像ファイル名を指定します。

- 入力可能な画像形式はJPEG/PNG/GIF/WebP/AVIFです。

- ファイル名の拡張子がない場合や、実際のファイル形式と一致していない(拡張子が間違っている)場合でも、正しい画像ファイルであれば読み込み可能です。
- 「PNG・GIF出力ライセンス」がない状態でも、PNG/GIFファイルの読み込みは可能です。
- アニメーションGIF/WebP/AVIFファイルの変換には「アニメーションライセンス」が必要です。

- 読み込み可能な画像は、最大長辺サイズは20,000ピクセル、画像の総ピクセル数(面積)が144,000,000ピクセル以下のものになります。
  例えば12,000×12,000ピクセルや20,000×7,200ピクセルの画像はこの条件に合致するので読み込めますが、15,000×10,000ピクセルの画像は総ピクセル数が150,000,000となり上限を超過するので読み込めません。
- ファイル名は相対パス、絶対パスのどちらでも指定できます。ファイルパスの最大長は511文字です。ファイル名にマルチバイト文字は使用できません。
- 入力と出力に同じファイルを指定し、元画像を上書きすることはできません。もし指定した場合、動作は不定となります。

# 出力ファイル名の指定(必須)

オプション：-out <filename>

<filename> に出力する画像ファイル名を指定します。

- 出力可能な画像形式はJPEG/PNG/GIF/WebP/AVIFです。
- デフォルトでは、ファイル名の拡張子(".jpg", ".png", ".gif", ".webp", ".avif")で指定された画像形式に変換します。
- -outformatオプションの指定によっては、-outオプションで指定したファイル名の拡張子とは違う拡張子で出力される場合があります。
- PNG/GIF形式の出力には「PNG・GIF出力ライセンス」が必要です。ライセンスがない状態でPNG/GIF出力を指定するとエラーとなり、画像変換は行われません。
- アニメーションGIF/WebP/AVIF変換には「アニメーションライセンス」が必要です。 ライセンスがない状態でアニメーションGIF変換(-gifanime on)、アニメーションWebP変換(-webpanime on)、アニメーションAVIF変換(-avifanime on)、連番ファイルのアニメーションGIF/WebP/AVIF化(-loadserial <n>)を実行するとエラーとなり、画像変換は行われません。
- 出力最大縦横サイズは5,000×5,000ピクセルです。ただし、入力画像ファイルのサイズがこれを超える場合は、そのサイズまで有効です。
- ファイル名は相対パス、絶対パスのどちらでも指定可能です。ファイルパスの最大長は511文字です。ファイル名にマルチバイト文字は使用できません。
- 入力と出力に同じファイルを指定し、元画像を上書きすることはできません。もし指定した場合、動作は不定となります。
- AVIF形式での出力時は元画像へのリカバー処理は行われません(内部的に -recovery off が適用されます)。

## 使用例

元画像(image1.jpg)
変換後の画像(result1.jpg)

## 画像ファイルの変換例

元ファイル | ファイルサイズ | 変換後のファイル | 変換後のファイルサイズ | 元ファイルに対する割合
--- | --- | --- | --- | ---
image1.jpg | 161 KB | result1.jpg | 83 KB | 51%
image2.jpg | 96 KB | result2.jpg | 45 KB | 47%
image3.jpg | 80 KB | result3.jpg | 28 KB | 35%

いずれもデフォルトの設定で変換した場合の例です。プログラムの改良により、実際のサイズが異なる場合があります。
ファイルサイズが縮小する割合は画像によって異なります。あらかじめご了承ください。

# ファイルサイズ縮小化モードの指定

オプション：-reducemode <mode>

ファイルを縮小する際に、サイズや品質の優先度を指定します。

パラメータ | 説明
--- | ---
1～8 | 1がもっとも画像品質を重視するオプションです。 数値が上がるに連れファイルサイズをより重視する形になり、8はもっともファイルサイズ縮小を重視するオプションになります。 省略時のデフォルトは5です。

## 縮小化モードの適用例

縮小化モード | ファイル名 | 変換後のファイルサイズ | 元ファイルに対する割合
--- | --- | --- | ---
変換前 | image2.jpg | 96 KB |
1 | result2-mode1.jpg | 88 KB | 91%
2 | result2-mode2.jpg | 67 KB | 69%
3 | result2-mode3.jpg | 59 KB | 61%
4 | result2-mode4.jpg | 57 KB | 59%
5 | result2-mode5.jpg | 45 KB | 47%
6 | result2-mode6.jpg | 37 KB | 38%
7 | result2-mode7.jpg | 24 KB | 25%
8 | result2-mode8.jpg | 19 KB | 20%

上記は縮小化モード以外をデフォルトの設定で変換した場合の例です。プログラムの改良により、実際のサイズが異なる場合があります。
ファイルサイズが縮小する割合は画像によって異なります。あらかじめご了承ください。

# 出力画像形式の指定

オプション：-outformat <format>

出力画像形式を指定します。

パラメータ | 説明
--- | ---
auto | 入力画像の内容に応じて、JPEGまたはPNGのうち最適な画像形式を自動的に選択して出力します。 WebP形式、AVIF形式には対応していません。 auto以外を指定した場合に比べ、処理時間が数倍長くなりますので、ご注意ください。 「PNG・GIF出力ライセンス」がない場合は常にJPEGで出力されます。 このパラメータを指定した場合、-outext オプションを別途指定しない限り、-outext onが指定されたものとして処理を行います。このため、-outオプションで指定した出力ファイル名の拡張子は、出力画像形式に合わせて付け替えられることがあります。
ext | -outオプションで指定された出力ファイル名の拡張子に従って、出力画像形式を決定します。拡張子が ".jpg" または ".jpeg" ならJPEG、".png" ならPNG、".gif"ならGIF、".webp"ならWebP、".avif"ならAVIFになります。 PNG/GIF形式の出力には「PNG・GIF出力ライセンス」が必要です。ライセンスがない状態でPNG/GIF出力を指定してもエラーとなり画像変換は行われませんのでご注意ください。 -outオプションで指定された出力ファイル名に拡張子が指定されていない場合は、入力ファイルと同じ画像形式で出力します。 このパラメータを指定した場合、-outext オプションを別途指定しない限り、-outext offが指定されたものとして処理を行います(-outオプションで指定されたファイル名のまま出力されます)。 (省略時のデフォルト)
same | -inオプションで指定された入力ファイルと同じ画像形式で出力します。例えば入力ファイルの形式がPNGなら、出力ファイルもPNG形式となります。 PNG/GIF形式の出力には「PNG・GIF出力ライセンス」が必要です。ライセンスがない状態でPNG/GIF出力を指定してもエラーとなり画像変換は行われませんのでご注意ください。 このパラメータを指定した場合、-outext オプションを別途指定しない限り、-outext offが指定されたものとして処理を行います(-outオプションで指定されたファイル名のまま出力されます)。
jpg | 必ずJPEG形式で出力します。 このパラメータを指定した場合、-outext オプションを別途指定しない限り、-outext offが指定されたものとして処理を行います(-outオプションで指定されたファイル名のまま出力されます)。
png | 必ずPNG形式で出力します。 このパラメータを指定した場合、-outext オプションを別途指定しない限り、-outext offが指定されたものとして処理を行います(-outオプションで指定されたファイル名のまま出力されます)。 このパラメータを指定する場合、「PNG・GIF出力ライセンス」が必要です。ライセンスがない場合はエラーになります。
gif | 必ずGIF形式で出力します。 このパラメータを指定した場合、-outext オプションを別途指定しない限り、-outext offが指定されたものとして処理を行います(-outオプションで指定されたファイル名のまま出力されます)。 このパラメータを指定する場合、「PNG・GIF出力ライセンス」が必要です。ライセンスがない場合はエラーになります。
webp | 必ずWebP形式で出力します。 このパラメータを指定した場合、-outext オプションを別途指定しない限り、-outext offが指定されたものとして処理を行います(-outオプションで指定されたファイル名のまま出力されます)。
avif | 必ずAVIF形式で出力します。 このパラメータを指定した場合、-outext オプションを別途指定しない限り、-outext offが指定されたものとして処理を行います(-outオプションで指定されたファイル名のまま出力されます)。 AVIF形式での出力時は元画像へのリカバー処理は行われません(内部的に -recovery off が適用されます)。

パラメータとして auto を指定した際に、JPEG/PNGいずれの形式でも出力可能な場合は -reducemode オプションの値を参照して形式を決定します。-reducemode の値が大きい場合は省ファイルサイズを優先しJPEGで、-reducemode の値が小さい場合は画質を優先しPNGで出力される比率が上がります。
また、PNG形式で出力する場合、画像の内容に応じてダイレクトカラーになる場合と、インデックスカラーで出力する場合があります。

# 画像メイクアップ

オプション：-makeup <off | on>

画像メイクアップを使用するかどうかを指定します。

- 画像メイクアップを有効にすると、見栄えが良くなるように画像の明るさや色味などを自動的に調整します。
- メイクアップ機能を利用するには「メイクアップライセンス」が必要です。ライセンスがない状態で本オプションを指定するとエラーとなり、画像変換は行われません。
- なるべく元画像の色合いを保つように調整を行いますが、画像によっては意図しない結果になる場合がありますのでご注意ください。

パラメータ | 説明
--- | ---
off | 画像メイクアップを使用しません。(省略時のデフォルト)
on | 画像メイクアップ補正を使用します。

## 使用例

元画像(makeup_before.jpg)
変換後の画像(makeup_normal.jpg)

# 画像メイクアップモード指定

オプション：-makeupmode <mode>

画像メイクアップのモードを指定します。

- 画像メイクアップ機能を有効にした際に、どの程度の強さ・どういう画像に合わせた調整を行うかを指定できます。
- メイクアップ機能を利用するには「メイクアップライセンス」が必要です。ライセンスがない状態で本オプションを指定するとエラーとなり、画像変換は行われません。

パラメータ | 説明
--- | ---
normal | 標準レベルの調整を行います。(省略時のデフォルト)
a | 人物・食品・宝飾品などに合わせた調整を行います。
b | 衣類・小物などに合わせた調整を行います。
c | 夜間や暗い室内の画像が明るくなるように調整を行います。
strong | 全体がより鮮明になるように調整を行います。

## 使用例

元画像
(makeup_before.jpg)
-makeupmode normal で変換した
画像(makeup_normal.jpg)
-makeupmode strong で変換した
画像(makeup_strong.jpg)

# 左回転

オプション：-rotatel <n>

画像を左回転します。

パラメータ | 説明
--- | ---
0 | 90 | 180 | 270 | 左回転する角度

本オプションは右回転(-rotater)と同時に指定することはできません。

# 右回転

オプション：-rotater <n>

画像を右回転します。

パラメータ | 説明
--- | ---
0 | 90 | 180 | 270 | 右回転する角度

本オプションは左回転(-rotatel)と同時に指定することはできません。

# 拡大縮小アルゴリズム指定

オプション：-resizealg <quality|balance|speed>

画像を拡大縮小する際のアルゴリズムを指定します。
画像サイズを変更しない場合、本オプションの指定は動作に影響しません。

パラメータ | 説明
--- | ---
quality | 画質を重視する、Lanczos3 アルゴリズムを使用します。
balance | 画質重視と速度重視の中間となる、Bicubic アルゴリズムを使用します。
speed | 速度を重視する、Bilinear アルゴリズムを使用します。(省略時のデフォルト)

本オプションは以下のオプションに影響します。

- 自動リサイズ(-autoresize)
- 拡大縮小の長辺指定(-longside)
- 拡大縮小の幅指定(-width)
- 拡大縮小の高さ指定(-height)
- 拡大縮小の倍率指定(-zoom)
- 指定方法でリサイズ(-resizefit)

# 拡大縮小の長辺指定

オプション：-longside <n>

拡大縮小するときの長辺サイズ(幅か高さの長い方の長さ)を指定します。
元画像の幅の方が長い(横長画像)の場合は、幅が指定されたサイズになり、高さは自動算出されます。
元画像の高さの方が長い(縦長画像)の場合は、高さが指定されたサイズになり、幅は自動算出されます。

パラメータ | 説明
--- | ---
1～ | 画像の幅また高さの長い方のサイズ

アスペクト比(画像の縦横比)は常に固定です。
最大縦横サイズは入力画像または5,000の大きい方になります。
上限値は読み込む画像に依存するため、5,000より大きな値を設定してもエラーにはなりません。
但し、画像を拡大した結果、最大総ピクセル数(面積)が144,000,000を越えたときは変換エラーとなり画像は出力されません。
本オプションは以下のオプションと同時に指定することはできません。

- 拡大縮小の幅指定(-width)
- 拡大縮小の高さ指定(-height)
- 拡大縮小の倍率指定(-zoom)

# 拡大縮小の幅指定

オプション：-width <n>

拡大縮小の幅を指定します。
高さは自動算出されます。

パラメータ | 説明
--- | ---
1～ | 画像の幅

アスペクト比(画像の縦横比)は常に固定です。
最大縦横サイズは入力画像または5,000の大きい方になります。
上限値は、読み込む画像に依存するため、5,000より大きな値を設定してもエラーにはなりません。
なお、拡大した結果が最大縦横サイズを越えるときは最大縦横サイズに収まるよう調整されますが、最大総ピクセル数(面積)が144,000,000を越えたときは変換エラーとなり画像は出力されません。
本オプションは以下のオプションと同時指定できません。

- 拡大縮小の長辺指定(-longside)
- 拡大縮小の高さ指定(-height) ※一部のオプション指定時を除く
- 拡大縮小の倍率指定(-zoom)

# 拡大縮小の高さ指定

オプション：-height <n>

拡大縮小の高さを指定します。
幅は自動算出されます。

パラメータ | 説明
--- | ---
1～ | 画像の高さ

アスペクト比(画像の縦横比)は常に固定です。
最大縦横サイズは入力画像または5,000の大きい方になります。
上限値は、読み込む画像に依存するため、5,000より大きな値を設定してもエラーにはなりません。
なお、拡大した結果が最大縦横サイズを越えるときは最大縦横サイズに収まるよう調整されますが、最大総ピクセル数(面積)が144,000,000を越えたときは変換エラーとなり画像は出力されません。
本オプションは以下のオプションと同時指定できません。

- 拡大縮小の長辺指定(-longside)
- 拡大縮小の幅指定(-width) ※一部のオプション指定時を除く
- 拡大縮小の倍率指定(-zoom)

# 拡大縮小の倍率指定

オプション：-zoom <n>

画像を指定した倍率(%)に拡大縮小します。

パラメータ | 説明
--- | ---
1～999 | 画像の倍率(%)

アスペクト比(画像の縦横比)は常に固定です。
最大縦横サイズは入力画像または5,000の大きい方になります。
なお、拡大した結果が最大縦横サイズを越えるときは最大縦横サイズに収まるよう調整されますが、最大総ピクセル数(面積)が144,000,000を越えたときは変換エラーとなり画像は出力されません。
本オプションは以下のオプションと同時指定できません。

- 拡大縮小の長辺指定(-longside)
- 拡大縮小の幅指定(-width) ※一部のオプション指定時を除く
- 拡大縮小の高さ率(-height) ※一部のオプション指定時を除く

# 元画像を拡大しない

オプション：-resizenozoom <off | on>

-longside, -width, -height, -zoomオプションによる拡大縮小処理に際して、元画像が指定のサイズより小さい場合に、画像を拡大せずにそのままのサイズで出力するかどうかを指定します。

パラメータ | 説明
--- | ---
off | 元画像を指定のサイズに合わせ、拡大して出力します。 例えば元画像が240x320ピクセルで、-longside 640が指定された場合、画像は拡大されて480x640ピクセルで出力されます。
on | 元画像が指定のサイズより小さい場合、拡大せずそのままのサイズで出力します。(省略時のデフォルト) 例えば元画像が240x320ピクセルで、-longside 640が指定された場合、画像は拡大されず240x320ピクセルで出力されます。

なお、-autoresize onによるリサイズでは、本オプションの指定に関わらず、画像が指定サイズより小さい場合は拡大を行いません。

# 強制グレースケール化の指定

オプション：-forcegrayscale <off | on>

画像を強制的にグレースケール化して出力するかどうかを指定します。

パラメータ | 説明
--- | ---
off | 画像の強制グレースケール化出力を行いません。(省略時のデフォルト) 元画像の内容、及び -reducemode 等の指定に応じてグレースケール化するかどうかを自動判定します。
on | 画像を強制的にグレースケール化して出力します。カラー画像も必ずグレースケール化します。 JPEGファイルとして出力する場合はグレースケールJPEG形式、PNG/GIFファイルとして出力する場合はグレースケールのパレットを持つインデックスカラー画像として出力します。WebPファイルとして出力する場合も同様にグレースケールの色値を持つ画像として出力します。

# 応用機能

# 出力ファイル拡張子の調整

オプション：-outext <off | on>

-outオプションで指定された出力ファイル名の拡張子と画像形式が整合していない場合、画像形式に合わせて拡張子を変更・付加するかどうかを指定します。

パラメータ | 説明
--- | ---
off | 出力ファイル名の拡張子を変更しません。画像形式と一致していない場合も含め、指定された拡張子のまま出力します。 (省略時のデフォルト)
on | 出力ファイルの拡張子が画像形式と整合していない場合、拡張子の変更または付加を行います。 拡張子と画像形式が異なっている場合は拡張子を変更し、拡張子が指定されていない場合は適切な拡張子を追加します。

拡張子の調整に際して、出力ファイル名の "." を含む拡張子が6文字以上の場合はこれをファイル名の一部と見なして変更せず、新たに画像形式に応じた拡張子を付加します。たとえばJPEG出力時に出力ファイル名が "out.1234" (ピリオド含め5文字)の場合は "out.jpg" に変更、"out.12345" (ピリオド含め6文字)の場合は "out.12345.jpg" と付加します。

# 用途指定

オプション：-purpose <smartphone | pc>

最適化の用途(対象)を指定し、それぞれの用途に適した変換を行えるようにします。

パラメータ | 説明
--- | ---
smartphone | スマートフォン用に画像を最適化します。(省略時のデフォルト)
pc | PCやタブレット用に画像を最適化します。

本オプションは内部で以下の処理に影響します。また、内部処理で JPEG 品質や再圧縮の判定処理が変更されます。

- 自動リサイズ(-autoresize)

# 自動リサイズの指定

オプション：-autoresize <off | on>

自動リサイズを行います。

パラメータ | 説明
--- | ---
off | 自動リサイズを使用しません。(省略時のデフォルト)
on | 自動リサイズを使用します。

自動リサイズ実行時、出力画像の長辺(幅または高さの長い方)は用途オプション(-purpose)と縮小化モード(-reducemode)の組み合わせにより以下のいずれかになります。
スマートフォン用の場合(-purpose smartphone が指定されている場合)

縮小化モード | 出力画像の長辺
--- | ---
1 (画質重視) | 1440
2 | 1280
3 | 960
4 | 800
5 | 640
6～7 (ファイルサイズ重視) | 480

PC、タブレット用の場合(-purpose pc が指定されている場合)

縮小化モード | 出力画像の長辺
--- | ---
1 (画質重視) | 1920
2 | 1600
3 | 1280
4 | 960
5 | 800
6～7 (ファイルサイズ重視) | 640

アスペクト比(画像の縦横比)は常に固定です。
自動リサイズを使用する場合(onの場合)、出力画像の幅と高さは、用途と縮小化モードに対応する長辺を超えられません。 たとえば、幅1920×高さ1080ピクセルの画像を自動リサイズを使用してスマートフォン用に変換する場合、縮小化モードが5の場合は、幅640×高さ360ピクセルのサイズに縮小化された画像が出力されます。
以下のオプションで有効な値を指定すると、本オプションは常に -autoresize off として処理されます。

- 画像メイクアップ(-makeup)
- 拡大縮小の長辺指定(-longside)
- 拡大縮小の幅指定(-width)
- 拡大縮小の高さ指定(-height)
- 拡大縮小の倍率指定(-zoom)

以下のオプションと -autoresize on を同時に指定することはできません。

- フレーム配置機能(-frame)
- 指定方法でリサイズ(-resizefit)

# 元画像よりファイルサイズが大きくなったときに復元

オプション：-recovery <off | on>

元画像よりファイルサイズが大きくなったときに復元(元画像ファイルをコピー)するかどうかを指定します。

パラメータ | 説明
--- | ---
off | 元画像よりファイルサイズが大きくなったときに復元しません。
on | 元画像よりファイルサイズが大きくなったときに復元します。(省略時のデフォルト)

ファイルサイズの縮小を目的とする場合でも、入力画像がすでに高い圧縮率で縮小化されていると、出力するファイルのサイズが大きくなってしまうことがあります。
画像メイクアップのような画質の補正や拡大縮小、回転などの効果を使うのでなければ、縮小化によって画質が向上することはありません。 この場合は、元のファイルをそのまま使う方が望ましいため、変換元の画像ファイルをそのまま出力することができます。
なお、本オプションは以下のオプションに有効値を指定すると、常に -recovery off として処理されます。

- 画像メイクアップ(-makeup)
- 左回転(-rotatel)
- 右回転(-rotater)
- 拡大縮小の長辺指定(-longside)
- 拡大縮小の幅指定(-width)
- 拡大縮小の高さ指定(-height)
- 拡大縮小の倍率指定(-zoom)
- JPEGファイルサイズ調整使用時(-jpegfilesizelimit)
- クリップ機能・指定範囲(-clip)
- クリップ機能・中央基準(-clipcenter)
- クリップ機能・円形(-clipround)
- フレーム配置機能(-frame)
- 指定方法でリサイズ(-resizefit)
- 出力画像形式としてAVIFを指定した場合(-out, -outformat)

# JPEGファイルサイズ調整

オプション：-jpegfilesizelimit <n>

JPEG出力に際して、指定されたファイルサイズを上限として、これに収まるように圧縮調整を行います。

パラメータ | 説明
--- | ---
1～ | 上限ファイルサイズをKB単位(1024バイト単位)で指定します 例えば10を指定すると10KB(10240バイト)を上限として、ファイルサイズがこれに収まるようにJPEG圧縮調整を行います。

JPEG出力に際して、指定された上限サイズに収まるように調整を行い、ファイルが指定サイズに収まった場合、これを出力して終了します。
指定したファイルサイズが小さすぎる場合や入力画像が大きすぎる場合など、ファイルが上限サイズに収まらなかった場合はエラーとなりますが、フェールセーフとして画質を10%に調整したJPEGファイルを出力します。
縮小化モード(-reducemode)やJPEG最適化指定、あるいは拡大縮小など、他のオプションを同時に指定した場合、それらのオプションを適用した上でファイルサイズ調整を行います(拡大縮小を指定した場合は画像を拡大縮小した上で調整を行います)。もし指定サイズに収まらない場合、-reducemode の値を変えることで収まるようになる可能性がありますのでお試しください。
本オプション利用時はあらかじめ以下の点にご注意ください。

- 本オプションを指定することで、必ず指定ファイルサイズ以下に収まるとは限らないことをご理解ください。ほとんどの場合にこの機能が有効ですが、極端に大きなピクセルサイズの画像を入力したり、極端に小さいファイルサイズを指定すると、指定ファイルサイズに収まらない可能性があります。
- 本オプションはJPEG出力時のみ有効です。PNG/GIF/WebP/AVIF出力時には使用できません(指定した場合、無視されます)。
- 内部的に通常より多く圧縮を試行するため、ファイルサイズ調整が必要な場合、処理速度が通常の数分の一に低下することがあります。

# JPEGファイルサイズ調整時に指定サイズ内でなるべく高画質になるように調整する

オプション：-jpegfilesizelimithq <off | on>

JPEGファイルサイズ調整(-jpegfilesizelimitオプション)使用時に、指定されたファイルサイズ内でなるべく高画質になるように調整を行うかどうかを指定します。

パラメータ | 説明
--- | ---
off | 指定された上限ファイルサイズに収まるよう、通常の圧縮調整を行います。 (省略時のデフォルト)
on | 指定された上限ファイルサイズ内で、なるべく高画質になるように圧縮調整を行います。 このパラメータを指定すると、指定上限ファイルサイズにより近い値のファイルが出力されます。

# JPEG最適化の指定

オプション：-jpegoptimize <mode>

JPEG出力時に最適化を行うかどうかを指定します。

パラメータ | 説明
--- | ---
off | JPEG最適化を使用しません。
on | JPEG最適化を使用します。ファイルサイズはより小さくなりますが、処理速度が低下します。
auto | on と off の両方の結果の内、ファイルサイズの小さい方を採用し、ファイルに出力します。(省略時のデフォルト) ただし -reducemode の指定が 4 以上の場合は on の結果を採用します。 -reducemode が 1 で出力JPEGサンプリング形式が 4:4:4 の場合は off の結果と同じになります。

# JPEGクオリティ値の上限指定

オプション：-jpeglimit <n>

JPEGクオリティ値の上限を指定します。

パラメータ | 説明
--- | ---
50～100 | クオリティ値(%)

JPEGファイル出力が必要以上に高画質になることを防ぎたい場合に、画質設定(クオリティ値)が一定値より上にならないように上限を指定します。
このオプションを指定しない場合は上限値の制限は行いません。つまり、上限値として100を指定した場合と同じです。

# JPEGクオリティ値の下限指定

オプション：-jpeglowerlimit <n>

JPEGクオリティ値の下限を指定します。

パラメータ | 説明
--- | ---
0 または 40～80 | クオリティ値(%)を指定します。 0を指定したときは下限無しになり、40～80を指定した場合はその値を下限とします。

JPEGファイル出力に際して、必要以上に圧縮が掛かり画質が低くなることを防ぎたい場合に、画質設定(クオリティ値)の下限を指定します。
このオプションを指定しない場合は下限の制限は行いません。つまり、値として0を指定した場合と同じです。
また、-jpeglimit オプションで上限値を指定している場合、上限値より大きい値は指定しないでください。

# 特定のタイプの画像に対するJPEG圧縮の抑制

オプション：-jpegqualitysafety <off | on>

白背景に白い衣類や小物等を配置した画像など、全体が同一色基調・低コントラストの画像に対するJPEG圧縮を抑制し、細かい模様が見分けにくくなる等の現象の発生を抑制します。

パラメータ | 説明
--- | ---
off | 通常の圧縮・最適化を行います。 ファイルサイズは on 時より小さくなりますが、白背景＋白い衣類の写真等で、圧縮により服や小物の模様が見分けにくくなってしまうことがあります。
on | 特定の画像について通常よりも圧縮を抑制し、画質が高くなるように調整します。 ファイルサイズは off 時に比べ大きくなりますが、白背景＋白い衣類の写真等で、服や小物の模様が見分けにくくなる現象の発生を抑制できます。 (省略時のデフォルト)

on を指定することで、ECサイトに用いる衣類画像・商品画像などで、圧縮に伴う副作用で細かい模様が見分けにくくなるケースをある程度回避できます。
最終的な画質は -reducemode の指定に従いますが、-reducemode 4 以下の指定と本オプションの on を組み合わせた場合は、本オプション off 時よりも高画質になるように調整します。
本オプションの処理対象画像であるかどうかは SmartJPEG が自動的に判定しますが、特に圧縮の抑制を必要としない画像でも、ファイルサイズが若干大きめに出力されることがありますので、あらかじめご留意ください。

# JPEGサンプリング形式の指定

オプション：-jpegsampling <444|422|420|411|auto>

JPEGサンプリング形式を指定します。

パラメータ | 説明
--- | ---
444 | 4:4:4形式
422 | 4:2:2形式
420 | 4:2:0形式
411 | 4:1:1形式
auto | 自動選択(省略時のデフォルト)

出力画像のJPEGサンプリング形式は、通常、入力画像のJPEGサンプリング形式やファイルサイズ縮小化モード、入力画像の精細さなどから自動的に適切な形式を選択しますが、このオプションで強制的に指定することも可能です。

# JPEG Exif回転の指定

オプション：-jpegexifrotate <off | on>

元画像に Exif回転情報が含まれている場合、これに基づき回転を行うかどうかを指定します。何れの場合も、Exif情報は出力時に破棄されます。

パラメータ | 説明
--- | ---
off | Exif回転情報による画像の回転は行いません。
on | Exif回転情報がある場合、これに基づき画像回転を行います。(省略時のデフォルト) 回転は情報の先頭に記述されているデータに基づいて行います(一般的なWebブラウザ等と同じ処理です)。

# JPEG/AVIF/WebP ICCプロファイルの処理

オプション：-imageiccp <mode>

入力画像のJPEG/AVIF/WebPファイルにICCプロファイルが含まれていた場合の処理方法を指定します。

パラメータ | 説明
--- | ---
remove | ICCプロファイルでの色変換は行わず、破棄します。
convert | ICCプロファイルに従って画像をsRGBに変換した後、破棄します。
keep | ICCプロファイルでの色変換は行わず、そのままファイルに保存します(JPEG/AVIF/WebP出力の場合のみ)。
auto | 画像サイズに応じて convert と keep の動作を自動選択します。(省略時のデフォルト) 画像が小さい場合、及びICCプロファイルのデータサイズが大きい場合はconvertの動作になります。

出力画像形式がPNGの場合、色変換は有効ですが、ICCプロファイルのファイルへの保存動作は無効となります。PNG出力時に keep や auto を指定した場合、色変換を行った後、ICCプロファイルを削除します。
なお、CMYKカラーの入力は基本的にサポート外となっております。SmartJPEG ではCMYKからsRGBへの簡易変換を行うようになっていますが、あくまで便宜的・簡易的なもので、正確な変換ではありませんのでご注意ください。また、WebではCMYK-JPEGは使用しないため、ChromeやFirefox等のブラウザでも正しく表示されません。

# JPEG/AVIF/WebP ICCプロファイルの処理(旧オプション)

オプション：-jpegiccp <mode>

入力画像のJPEG/AVIF/WebPファイルにICCプロファイルが含まれていた場合の処理方法を指定します。動作は -imageiccp と同じです。-imageiccp の旧オプションで、互換性のために用意されています。

# PNGファイル出力時の最適化方法の指定

オプション：-pngmode <mode>

PNG形式で出力する場合の最適化方法を指定します。

パラメータ | 説明
--- | ---
size | 省ファイルサイズを優先します。 最大レベルの高圧縮最適化を行うため、ファイルサイズはより小さくなりますが、処理速度は非常に遅くなります。 なお、本パラメータによる高圧縮化を有効にするには optipng モジュールのインストールが必要です。optipng モジュールがインストールされていない場合、本パラメータを指定してもデフォルトと同じ最適化が行われます。
balance | 省ファイルサイズと処理速度優先の中間レベルの高圧縮最適化を行います。
speed | 処理速度を優先します。(省略時のデフォルト) 高圧縮最適化を行わないため、ファイルサイズはその分大きくなります。

PNG/GIF形式の出力には「PNG・GIF出力ライセンス」が必要です。ライセンスがない状態でPNG/GIF出力を指定するとエラーとなり、画像変換は行われません。

# PNGファイル出力時の非可逆圧縮の指定

オプション：-pnglossy <off | on>

PNG形式で出力する際に非可逆圧縮処理を行うかどうかを指定します。
非可逆圧縮処理によりファイルサイズをより縮小化することが可能です。

パラメータ | 説明
--- | ---
off | 非可逆圧縮処理を行いません。
on | 非可逆圧縮処理を行います。(省略時のデフォルト)

非可逆圧縮実行時にどの程度圧縮を行うかは -pngreducemode オプションの値を参照して決定します。この値が小さい場合は画質を優先し、値が大きい場合は省ファイルサイズを優先します。
なお、PNG/GIF形式の出力には「PNG・GIF出力ライセンス」が必要です。ライセンスがない状態でPNG/GIF出力を指定するとエラーとなり、画像変換は行われません。

# PNGファイル出力時の非可逆圧縮の縮小モードの指定

オプション：-pngreducemode <mode>

PNGファイル出力時に非可逆圧縮が有効な場合 (-pnglossy on指定時)、その縮小具合を指定します。

パラメータ | 説明
--- | ---
1～8 | 1がもっとも画像品質を重視するオプションです。 数値が上がるに連れファイルサイズをより重視する形になり、8はもっともファイルサイズ縮小を重視するオプションになります。 本オプションが指定されなかった場合は、-reducemode オプションと同じ値が指定されたものと見なされます。

-pnglossy off が指定されている場合、本オプションの指定は無効です。
なお、PNG/GIF形式の出力には「PNG・GIF出力ライセンス」が必要です。ライセンスがない状態でPNG/GIF出力を指定するとエラーとなり、画像変換は行われません。

# WebPファイル出力時のロッシー圧縮の指定

オプション：-webplossy <off | on>

WebPファイル出力時に、画像内容に応じてロッシー圧縮(非可逆圧縮)を行うかどうかを指定します。
ロッシー圧縮処理によりファイルサイズをより縮小化することが可能です。

パラメータ | 説明
--- | ---
off | ロッシー圧縮出力を行いません。常にロスレス(無劣化)圧縮出力になります。
on | 画像内容に応じてロッシー圧縮出力を行います。(省略時のデフォルト) ロッシー圧縮を行うかどうかは画像内容に応じて自動的に決定されます。 ロスレス圧縮の方が有利な場合はそちらが選択されることがあります。

# AVIFファイル出力時のロッシー圧縮の指定

オプション：-aviflossy <off | on>

AVIFファイル出力時に、画像内容に応じてロッシー圧縮(非可逆圧縮)を行うかどうかを指定します。
ロッシー圧縮処理によりファイルサイズをより縮小化することが可能です。

パラメータ | 説明
--- | ---
off | ロッシー圧縮出力を行いません。常にロスレス(無劣化)圧縮出力になります。
on | 画像内容に応じてロッシー圧縮出力を行います。(省略時のデフォルト)

# AVIFサンプリング形式の指定

オプション：-avifsampling <444|422|420|auto>

AVIFサンプリング形式を指定します。

パラメータ | 説明
--- | ---
444 | 4:4:4形式
422 | 4:2:2形式
420 | 4:2:0形式
auto | 自動選択(省略時のデフォルト)

出力画像のAVIFサンプリング形式は、ファイルサイズ縮小化モードなどから自動的に適切な形式を選択するようになっていますが、このオプションで強制的に指定することも可能です。

# AVIF出力処理スレッド数の指定

オプション：-avifthread <1～8 | auto>

AVIFファイル出力処理の使用スレッド数を指定します。複数スレッドを使用することで処理を高速化できます。

パラメータ | 説明
--- | ---
1～8 | 指定したスレッド数を使用します。
auto | 使用しているマシンのCPUスペックに応じて、1～4の間で自動的に最適なスレッド数を選択します。 (省略時のデフォルト)

CPU使用率が低い環境では使用スレッド数が多ければ多いほど処理が高速になりますが、使用スレッド数に比例して消費メモリが多くなります。CPU使用率が高い環境では高速化の効果は限定的になります。

# アニメーション機能

# アニメーションGIF変換の指定

オプション：-gifanime <off | on>

出力ファイル形式としてGIFが指定され、入力ファイルとしてアニメーションGIF/WebP/AVIFファイルが指定されたときに、アニメーションGIF変換を行うかどうかを指定します。

パラメータ | 説明
--- | ---
off | アニメーションGIF変換を行いません。 入力画像の先頭フレームのみを1枚の通常GIF画像として処理します。
on | アニメーションGIF変換を行います。 変換結果をアニメーションGIFとして出力するには、出力ファイル形式としてGIF形式を指定する必要があります。 (省略時のデフォルト)

アニメーションGIF変換機能により、各フレームの見た目の画質を保ったまま、更にアニメーションGIFのファイルサイズを小さくできます。「導入ガイド」の例では、元画像の約1/3のサイズに縮小しています。

- 画質とファイルサイズのバランスは -reducemode の指定に従います。
- 入力可能なアニメーションGIF/WebP/AVIFファイルは20MB以下・500フレーム以下となっています。
  画像サイズが大きい場合は処理可能なフレーム数が減る場合があります。
- ループ回数、フレーム毎の表示時間は入力画像の値が保持されます。

なお、アニメーションGIF変換を行うには「アニメーションライセンス」が必要です。ライセンスがない状態でアニメーションGIF出力を指定するとエラーとなり、画像変換は行われません。

# アニメーションGIFのループ回数の指定

オプション：-gifaloop <mode>

出力アニメーションGIFの繰り返し再生回数を指定します。

パラメータ | 説明
--- | ---
auto | 入力ファイルがアニメーションGIF/WebP/AVIFの場合、入力ファイルの設定を反映します。 入力ファイルが連番ファイルの場合は、無限繰り返し再生に設定します。(省略時のデフォルト)
loop | 無限繰り返し再生に設定します。
no | 1回再生(繰り返しなし)に設定します。

なお、アニメーションGIF変換を行うには「アニメーションライセンス」が必要です。ライセンスがない状態でアニメーションGIF出力を指定するとエラーとなり、画像変換は行われません。

# アニメーションWebP変換の指定

オプション：-webpanime <off | on>

出力ファイル形式としてWebPが指定され、入力ファイルとしてアニメーションGIF/WebP/AVIFファイルが指定されたときに、これをアニメーションWebPに変換するかどうかを指定します。

パラメータ | 説明
--- | ---
off | アニメーションWebP変換を行いません。 入力画像の先頭フレームのみを1枚の通常WebP画像として処理します。
on | アニメーションWebP変換を行います。 変換結果をアニメーションWebPとして出力するには、出力ファイル形式としてWebP形式を指定する必要があります。 (省略時のデフォルト)

アニメーションWebP変換機能により、見た目の画質を保ったまま、よりファイルサイズの小さいアニメーション画像を生成できます。

- 画質は -webpaundither で調整することができます。
- 入力可能なアニメーションGIF/WebP/AVIFファイルは20MB以下・500フレーム以下となっています。
  画像サイズが大きい場合は処理可能なフレーム数が減る場合があります。
- ループ回数、フレーム毎の表示時間は入力画像の値が保持されます。

なお、アニメーションWebP変換を行うには「アニメーションライセンス」が必要です。ライセンスがない状態でアニメーションWebP出力を指定するとエラーとなり、画像変換は行われません。

# アニメーションWebPのループ回数の指定

オプション：-webpaloop <mode>

出力するアニメーションWebPの繰り返し再生回数を指定します。

パラメータ | 説明
--- | ---
auto | 入力ファイルがアニメーションGIF/WebP/AVIFの場合、入力ファイルの設定を反映します。 入力ファイルが連番ファイルの場合は、無限繰り返し再生に設定します。(省略時のデフォルト)
loop | 無限繰り返し再生に設定します。
no | 1回再生(繰り返しなし)に設定します。

なお、アニメーションWebP変換を行うには「アニメーションライセンス」が必要です。ライセンスがない状態でアニメーションWebP出力を指定するとエラーとなり、画像変換は行われません。

# アニメーションWebP変換時のディザ消しフィルタ

オプション：-webpaundither <off | on>

アニメーションWebP変換を行う際に、ディザ消しフィルタを使用するかどうかを指定します。

パラメータ | 説明
--- | ---
off | ディザ消しフィルタを使用しません。元画像のディザが残ったままになり、ファイルサイズがやや大きくなります。
on | ディザ消しフィルタを使用します。 ディザを消去することで見た目の画質が向上し、且つ圧縮が掛かりやすくなり、ファイルサイズがより小さくなります。 ただし -webplossy の指定が off の場合、本オプションは自動的に off になります。 (省略時のデフォルト)

なお、アニメーションWebP変換を行うには「アニメーションライセンス」が必要です。ライセンスがない状態でアニメーションWebP出力を指定するとエラーとなり、画像変換は行われません。

# アニメーションAVIF変換の指定

オプション：-avifanime <off | on>

出力ファイル形式としてAVIFが指定され、入力ファイルとしてアニメーションGIF/WebP/AVIFファイルが指定されたときに、これをアニメーションAVIFに変換するかどうかを指定します。

パラメータ | 説明
--- | ---
off | アニメーションAVIF変換を行いません。 入力画像の先頭フレームのみを1枚の通常AVIF画像として処理します。
on | アニメーションAVIF変換を行います。 変換結果をアニメーションAVIFとして出力するには、出力ファイル形式としてAVIF形式を指定する必要があります。 (省略時のデフォルト)

アニメーションAVIF変換機能により、見た目の画質を保ったまま、ファイルサイズの小さいアニメーション画像を生成できます。

- 入力可能なアニメーションGIF/WebP/AVIFファイルは20MB以下・500フレーム以下となっています。
  画像サイズが大きい場合は処理可能なフレーム数が減る場合があります。
- フレーム毎の表示時間は入力画像の値が保持されます。ループ回数は再生環境(ブラウザ)の仕様に依存します。

なお、アニメーションAVIF変換を行うには「アニメーションライセンス」が必要です。ライセンスがない状態でアニメーションAVIF出力を指定するとエラーとなり、画像変換は行われません。

# 連番ファイルのアニメーションGIF/WebP/AVIF化

オプション：-loadserial <n>

連番ファイル(静止画)を読み込み、これを連結してアニメーションGIF、アニメーションWebP、またはアニメーションAVIFとして出力します。
このオプションを指定すると、-in で指定したファイルを連番の先頭ファイルと見なします。その際にファイル名末尾の何桁を連番数字であると見なすかを指定します。

パラメータ | 説明
--- | ---
1～4 | 入力ファイル名の連番部分が何桁あるかを指定します。 1を指定した場合は末尾1桁を、4を指定した場合は末尾4桁を連番であると見なし、桁数分のファイルを処理します。 例えば sample001.jpg から連番ファイルが100枚ある場合は "-in sample001.jpg -serial 3" と指定します。これにより、sample001.jpg を先頭として、sample002.jpg, sample003.jpg ... sample100.jpg と3桁分100枚の連番ファイルを読み込みます。

- 連番は入力ファイル名の末尾(sample001.png など)、またはファイル名全体(001.jpg など)に指定してください。ファイル名の先頭(001sample.png など)や拡張子(sample.001 など)にある場合はエラーになります。
- 連番ファイルの桁数は必ず揃えておいてください。桁数が変化する場合は処理できません。桁数の変化が発生する場合は少ない方の先頭を0で埋めておいてください。
- 連番に欠番がある場合、そこで読み込みを打ち切ります。例えば01, 02, 03, 05となっている場合は01～03までのみが読み込まれます。
- 入力ファイルの連番より多い桁数を指定することはできません。指定した場合はエラーになります("-in 001.jpg -loadserial 4" など)。
- 入力する連番ファイルはすべて同じ縦横サイズ・同じ画像形式である必要があります。
- 入力可能なファイルは最大500ファイルまでです。500個を超える部分は無視されます。
  ファイルサイズ合計として20MB以下を推奨します。なお、縦横サイズが大きい場合やファイルサイズが大きい場合、ファイル数が500個以下であっても、途中で読み込みを打ち切ることがあります。

なお、アニメーションGIF/WebP/AVIF出力を行うには「アニメーションライセンス」が必要です。ライセンスがない状態で本オプションを指定するとエラーとなり、画像変換は行われません。

# 連番ファイルのアニメーションGIF/WebP/AVIF化のフレームレート指定

オプション：-serialfps <n>

-loadserial による連番ファイルのアニメーションGIF/WebP/AVIF化を行う際のフレームレート(fps)を指定します。

パラメータ | 説明
--- | ---
1～30 | 連番ファイルのアニメーションGIF/WebP/AVIF化を行う際のフレームレートを指定します。単位はfpsです。 例えば 2 を指定した場合、アニメーションが2 fps(1フレーム500msecずつ)で再生されます。 省略時のデフォルトは10です。

本オプションによる指定は -loadserial 指定時のみ有効で、通常のアニメーションGIF/WebP/AVIFファイル読み込みに際しては反映されません。
なお、アニメーションGIF/WebP/AVIF出力を行うには「アニメーションライセンス」が必要です。ライセンスがない状態で本オプションを指定するとエラーとなり、画像変換は行われません。

# クリップ機能・フレーム配置機能

# 入力画像の指定範囲切り出し(クリップ機能・指定範囲)

オプション：-clip <x>,<y>,<w>,<h>

入力画像の(x,y)座標から、指定したw×hピクセルの領域を切り出して出力します。切り出した結果の画像は、フィルタやリサイズ処理の入力画像として扱われます。

- 位置やサイズの指定は、ピクセル数で指定する方法と、入力画像の縦横サイズに対する割合で指定する方法の二つがあります。
  ピクセル数で指定する場合は数値を指定します。割合で指定する場合は数値の後に % を指定します。
- 各パラメータはカンマで区切りすべて指定してください。カンマの前後に空白が入っていたり、パラメータが欠けている場合はエラーとなります。
- 画像の右端や下端に完全に接した位置で切り出したい場合は、割合指定は使用せず、ピクセル数で指定してください。

パラメータ | 説明
--- | ---
x | 切り出し範囲の左上X値を指定します。 例えば 10 を指定した場合、X値は10になります。 25% を指定した場合、X値は入力画像の幅の25%値になります。
y | 切り出し範囲の左上Y値を指定します。 例えば 10 を指定した場合、Y値は10になります。 25% を指定した場合、Y値は入力画像の高さの25%値になります。
w | 切り出す幅を指定します。 例えば 320 を指定した場合、切り出す幅は320ピクセルになります。 50% を指定した場合、切り出す幅は入力画像の幅の50%値になります。
h | 切り出す高さを指定します。 例えば 240 を指定した場合、切り出す高さは240ピクセルになります。 50% を指定した場合、切り出す高さは入力画像の高さの50%値になります。

例えば480×384ピクセルの画像に対し、"-clip 10,10,320,240" と指定した場合は、入力画像の座標(10,10)から320×240ピクセルを切り出します(図1の薄紫の領域)。"-clip 25%,25%,50%,50%" と指定した場合、入力画像が480×384であれば、座標(120,96)から240×192ピクセルを切り出します(図2の薄紫の領域)。

図1: -clip 10,10,320,240の対象領域
図2: -clip 25%,25%,50%,50%の対象領域
切り出す画像の領域は、入力画像の外にはみ出さないようにしてください。もし入力画像からはみ出す形で領域が指定された場合、はみ出した部分は余白色となります(デフォルトは白)。余白色は -paddingcolor オプションで指定可能です。
図3-1は "-clip 310,230,320,240"と、入力画像からはみ出す形で指定した例です。薄紫色の矩形と市松模様が重なっている部分がはみ出し部分です。この場合、出力画像はw, hパラメータで指定したサイズになり、はみ出した部分は余白色で塗られます(図3-2)。

図3-1: -clip 310,230,320,240の対象領域
図3-2: -clip 310,230,320,240の出力結果
切り出した結果の画像は、各種フィルタやリサイズの元画像として扱われます。例えば -clip と合わせて -longside オプションが指定されている場合、切り出した画像を元画像として、長辺を -longside で指定された数値に合わせて拡大縮小します。
なお、JPEG Exif回転情報による回転は切り出しの前に行われます(縦横サイズも回転後のサイズが基準となります)。
また、本オプションと他の処理との組み合わせについて、以下の点にご留意ください。

- 本オプションは -clipcenter と同時に指定することはできません。
- 本オプション指定時は元画像へのリカバー処理は行われません(内部的に -recovery off が適用されます)。

# 入力画像の中央切り出し(クリップ機能・中央基準)

オプション：-clipcenter <w>,<h>

入力画像から、w×hピクセルの領域を切り出して出力します。本オプションによる切り出しは画像の中央を基準としたセンタリングで行われます。切り出した結果の画像は、フィルタやリサイズ処理の入力画像として扱われます。

- サイズの指定は、ピクセル数で指定する方法と、入力画像の縦横サイズに対する割合で指定する方法の二つがあります。
  ピクセル数で指定する場合は数値を指定します。割合で指定する場合は数値の後に % を指定します。
- 各パラメータはカンマで区切りすべて指定してください。カンマの前後に空白が入っていたり、パラメータが欠けている場合はエラーとなります。

パラメータ | 説明
--- | ---
w | 切り出す幅を指定します 例えば 320 を指定した場合、切り出す幅は320ピクセルになります。 50% を指定した場合、切り出す幅は入力画像の幅の50%値になります。
h | 切り出す高さを指定します。 例えば 240 を指定した場合、切り出す高さは240ピクセルになります。 50% を指定した場合、切り出す高さは入力画像の高さの50%値になります。

例えば480×384ピクセルの画像に対し、 "-clipcenter 320,240" と指定した場合は、入力画像の中央を基準にセンタリングする形で320×240ピクセルを切り出します(図4の薄紫の領域)。同じ画像に "-clipcenter 50%,50%" と指定した場合、中央の240×192ピクセルを切り出します(図5の薄紫の領域)。

図4: -clipcenter 320,240の対象領域
図5: -clipcenter 50%,50%の対象領域
切り出す画像の領域は、入力画像の外にはみ出さないようにしてください。もし入力画像からはみ出す形で領域が指定された場合、はみ出した部分は余白色となります(デフォルトは白)。余白色は -paddingcolor オプションで指定可能です。
図6-1は "-clipcenter 540,420"と、入力画像からはみ出すサイズを指定した例です。薄紫色の矩形と市松模様が重なっている部分がはみ出し部分です。この場合、出力画像はパラメータで指定したサイズになり、はみ出した部分は余白色で塗られます(図6-2)。

図6-1: -clipcenter 540,420の対象領域
図6-2: -clipcenter 540,420の出力結果
切り出した結果の画像は、各種フィルタやリサイズの元画像として扱われます。-clipcenter と合わせてこれらのオプションが指定されている場合、切り出し実行後にそれらの処理が行われます。
なお、JPEG Exif回転情報による回転は切り出しの前に行われます(縦横サイズも回転後のサイズが基準となります)。
また、本オプションと他の処理との組み合わせについて、以下の点にご留意ください。

- 本オプションは -clip と同時に指定することはできません。
- 本オプション指定時は元画像へのリカバー処理は行われません(内部的に -recovery off が適用されます)。

# 入力画像の円形切り出し(クリップ機能・円形)

オプション：-clipround

入力画像の中央を円形に切り出し、円の外側を余白色で塗り、正方形の画像を出力します。入力画像が正方形でない場合も正方形が出力されます。円の直径は入力画像の短辺と同じになります。
例えば480×384ピクセルの画像に対して本オプションを実行すると、画像の中央が円形に切り出され、384×384の正方形画像が出力されます。

-cliproundの例
円形の切り出し処理に際して、入力画像によっては円の外周と画像の辺との間に1ドット程度の隙間が発生することがあります。
また、本オプションと他の処理との組み合わせについて、以下の点にご留意ください。

- 円の外側の余白色は -paddingcolor オプションで指定可能です。
- 本オプションは -clip または -clipcenter と併用することが可能です。この場合、これらのクリップ処理の後に本オプションによる円形切り出しが行われます。
- 本オプション指定時は元画像へのリカバー処理は行われません(内部的に -recovery off が適用されます)。

# 入力画像を指定位置に配置して出力(フレーム配置機能)

オプション：-frame <x>,<y>

出力画像をフレーム(枠)に見立てて、入力画像をその中の指定の位置に配置して出力します。出力画像の縦横サイズは -width 及び -height オプションで指定します。
本オプション利用時は必ず -width 及び -height の両者を指定する必要があります。何れかが指定されていない場合はエラーとなります。

- パラメータには入力画像の移動量を指定します。
  移動は画像の中央を基準に行われ、正の値を指定すると右または下方向に、負の値を指定すると左または上方向に移動します。
- 移動量の指定は、ピクセル数で指定する方法と、入力画像の縦横サイズに対する割合で指定する方法の二つがあります。
  ピクセル数で指定する場合は数値を指定します。割合で指定する場合は数値の後に % を指定します。
- 移動した結果、入力画像が出力画像枠からはみ出した場合、はみ出した部分は切り捨てられます。
- 0,0 を指定すると入力画像は出力画像の中央に配置されます(移動しません)。
- 画像の外の部分は余白色で塗り潰されます。余白色は -paddingcolor オプションで指定可能です。
- 各パラメータはカンマで区切りすべて指定してください。カンマの前後に空白が入っていたり、パラメータが欠けている場合はエラーとなります。

パラメータ | 説明
--- | ---
x | X軸の移動量を指定します。指定は数値で行うことも、割合指定(-100%～100%)で行うことも可能です。 例えば 50 を指定した場合、入力画像は中央から右に50ピクセル移動した位置に配置されます。 20% を指定した場合、入力画像は中央から自身の幅20%分右に移動した位置に配置されます。
y | Y軸の移動量を指定します。指定は数値で行うことも、割合指定(-100%～100%)で行うことも可能です。 例えば -100 を指定した場合、入力画像は中央から上に100ピクセル移動した位置に配置されます。 -20% を指定した場合、入力画像は中央から自身の高さ20%分上に移動した位置に配置されます。

例えば "-frame 50,50" と指定した場合、右に50ピクセル、下に50ピクセル移動した位置に配置されます。図7-1は240×192の入力画像を400×300のフレーム(出力画像)に "-frame 50,50" で配置した例です。基準位置である画像中央(薄紫色の矩形)から右・下に50ピクセルずつ移動した場所に配置される形になります(図7-2)。
同例で "-frmae 100,100" とした場合、画像中央の基準位置(薄紫色の矩形)から右・下に100ピクセルずつ移動し、入力画像が出力画像枠からはみ出します(図7-3の半透明化した部分)。この場合、はみ出した部分は切り捨てられます(図7-4)。

図7-1: -frame 50,50 -width 400 -height 300の動作
図7-2: -frame 50,50 -width 400 -height 300の出力結果
図7-3: -frame 100,100 -width 400 -height 300の動作
(市松模様の部分は枠外)
図7-4: -frame 50,50 -width 400 -height 300の出力結果
(はみ出した部分が切り捨てられる)
また割合指定で "-frame 25%,-25%" と指定した場合、入力画像が240×192であれば、右に60ピクセル、上に48ピクセル移動した位置に配置されます。
画像配置後の外の部分は余白色となります(デフォルトは白)。余白色は -paddingcolor オプションで指定可能です。
また、本オプションと他の処理との組み合わせについて、以下の点にご留意ください。

- 本オプションは -longside, -autoresize on の各オプションと同時に指定することはできません。
- 本オプション指定時は元画像へのリカバー処理は行われません(内部的に -recovery off が適用されます)。

# 画像を指定の方法でリサイズ

オプション：-resizefit <fit|inner|outer|middle|within>

入力画像を指定の方法でリサイズし、指定の縦横サイズで出力します。出力画像の縦横サイズは -width 及び -height オプションで指定します。
本オプション利用時は必ず -width 及び -height の両者を指定する必要があります。何れかが指定されていない場合はエラーとなります。
パラメータで入力画像のアスペクト比と出力画像のアスペクト比が異なる場合にどのようにリサイズするかを指定します。余白は -paddingcolor オプションで指定された色で塗られます(デフォルトは白です)。

パラメータ | 説明 | 変換例
--- | --- | ---
fit | 入力画像のアスペクト比を無視して出力縦横サイズに合わせます。 |
inner | 出力縦横サイズ内に入力画像全体が収まるように、アスペクト比を維持してリサイズします。 必要に応じて余白を追加します。 |
outer | 出力縦横サイズに余白が発生しないように、アスペクト比を維持してリサイズします。 必要に応じて画像の中央を基準にトリミングを行います。 |
middle | inner と outer の中間サイズにリサイズします。 必要に応じて余白の追加またはトリミングを行います。トリミングは画像の中央を基準に行われます。 入力画像が細長い場合など、枠に合わせるためにinnerでは極端に縮小され、outerでは極端に拡大されることがあります。 この場合、middleを使用すると拡大・縮小の程度をほどほどに抑えられるため、不自然さを低減できます。 |
within | 出力縦横サイズ内に入力画像全体が収まるように、アスペクト比を維持してリサイズします。余白を追加しません。 このため、出力縦横サイズが -width 及び -height の指定より小さくなることがあります。 |

また、本オプションと他の処理との組み合わせについて、以下の点にご留意ください。

- 本オプションは -longside, -zoom, -autoresize on の各オプションと同時に指定することはできません。
- -resizenozoom オプションの指定は -resizefit within 以外のパラメータでは無視されます。
- 本オプション指定時は元画像へのリカバー処理は行われません(内部的に -recovery off が適用されます)。

# 余白色の指定

オプション：-paddingcolor <#rrggbb|#rrggbbaa|r,g,b|r,g,b,a>

クリップ機能で出力画像に余白が発生する場合、その余白色を指定します。本オプションが指定されなかった場合のデフォルト色は白(#ffffff)になっています。

- 余白色は先頭に # を付けた16進数6桁(rrggbb)や8桁(rrggbbaa)で指定する方法と、0～255の10進数3組(r,g,b)または4組(r,g,b,a)で指定する方法があります。
- 16進数で指定する場合、a～fの英文字は小文字で指定してください。例: #fa0bc0
- カンマ区切りを使用する場合、カンマの前後に空白が入っていたり、パラメータが欠けている場合はエラーとなります。

パラメータ | 説明
--- | ---
#rrggbb | RGB値をR,G,Bの順で16進数で指定します。英字は小文字で指定してください。 例えば #ff0000 と指定すると赤になります。アルファチャンネルは使用されません(不透明になります)。
#rrggbbaa | RGB値とアルファ値をR,G,B,Aの順で16進数で指定します。英字は小文字で指定してください。 例えば #ff00007f と指定すると半透明の赤になります。
r,g,b | RGB値をR,G,Bの順でカンマで区切って指定します。10進数で指定してください。 例えば 255,0,0 と指定すると赤になります。アルファチャンネルは使用されません(不透明になります)。
r,g,b,a | RGB値とアルファ値をR,G,B,Aの順でカンマで区切って指定します。10進数を指定してください。 例えば 255,0,0,127 と指定すると半透明の赤になります。

下記の図は -clipround 使用時に合わせて "-paddingcolor #ff0000" (赤色) を指定した例です。

余白色指定の例

# 背景色の指定

オプション：-bgcolor <#rrggbb|r,g,b>

背景色が必要となる画像や機能を使用する場合の背景色を指定します。
例えばアルファチャンネル付きPNGや透過GIFをJPEG形式に変換する場合などに、合成する背景色を指定できます。
本オプションが指定されなかった場合のデフォルト色は白(#ffffff)になっています。

- 背景色は先頭に # を付けた16進数6桁(rrggbb)で指定する方法と、0～255の10進数3組(r,g,b)で指定する方法があります。
- 16進数で指定する場合、a～fの英文字は小文字で指定してください。例: #fa0bc0
- カンマ区切りを使用する場合、カンマの前後に空白が入っていたり、パラメータが欠けている場合はエラーとなります。

パラメータ | 説明
--- | ---
#rrggbb | RGB値をR,G,Bの順で16進数で指定します。英字は小文字で指定してください。 例えば #ff0000 と指定すると赤になります。
r,g,b | RGB値をR,G,Bの順でカンマで区切って指定します。10進数で指定してください。 例えば 255,0,0 と指定すると赤になります。

# スタンプ機能

# スタンプ機能(画像合成)

オプション：-stamp <filename>

<filename> で指定された画像を出力画像に合成します(スタンプ機能)。
本オプションを指定することでスタンプ機能が有効になります。スタンプ画像としてはSmartJPEGが読み込み可能な画像(JPEG/PNG/GIF/WebP/AVIF)が使用可能です。アルファチャンネル付きPNGや透過GIFを使用することで、透過合成や半透明合成を行うことが可能です。なお、スタンプ画像に対するExif回転やICCプロファイル変換等の高度な処理は行われません。
スタンプ画像ファイルが存在しない場合や読み込みエラーなどが発生した場合はスタンプ機能が無効になりますが、他の処理は継続されます。

# スタンプ画像の配置位置の指定

オプション：-stamppos <pos>

スタンプ画像を出力画像のどこに配置するかを指定します。

パラメータ | 説明 | 指定例
--- | --- | ---
topleft | 左上に配置します。出力画像の左上端にスタンプ画像の左上端が接する形で配置されます。 |
top | 上端に配置します。出力画像の中央上端にスタンプ画像の上端が接する形で配置されます。 |
topright | 右上に配置します。出力画像の右上端にスタンプ画像の右上端が接する形で配置されます。 |
left | 左端に配置します。出力画像の中央左端にスタンプ画像の左端が接する形で配置されます。 |
center | 中央に配置します。出力画像の中央にスタンプ画像が中央合わせで配置されます。 (省略時のデフォルト) |
right | 右端に配置します。出力画像の中央右端にスタンプ画像の右端が接する形で配置されます。 |
bottomleft | 左下に配置します。出力画像の左下端にスタンプ画像の左下端が接する形で配置されます。 |
bottom | 下端に配置します。出力画像の中央下端にスタンプ画像の下端が接する形で配置されます。 |
bottomright | 右下に配置します。出力画像の右下端にスタンプ画像の右下端が接する形で配置されます。 |

スタンプ画像の位置は -stampx, -stampy, -stampw, -stamph オプションで微調整できます。
配置はスタンプ画像の縦横サイズを基準に行われます。背景が完全透明のスタンプ画像を使用した場合でも、完全透明領域を除く不透明領域を囲む最小矩形を基準に配置するものではありません。

# スタンプ水平位置調整(ピクセル単位)

オプション：-stampx <n>

スタンプ画像の水平オフセット値をピクセル単位で指定します。
正の値を指定すると右方向に、負の値を指定すると左方向に移動します。デフォルトは0です。
例えば "-stampx 100" と指定するとスタンプ画像の配置位置が右方向に100ピクセル移動します。
出力画像の左上座標からのX位置とY位置でスタンプの位置を直接設定したい場合は、-stamppos topleft 指定を利用してください。

# スタンプ垂直位置調整(ピクセル単位)

オプション：-stampy <n>

スタンプ画像の垂直オフセット値をピクセル単位で指定します。
正の値を指定すると下方向に、負の値を指定すると上方向に移動します。デフォルトは0です。
例えば "-stampy 100" と指定するとスタンプ画像の配置位置が下方向に100ピクセル移動します。
出力画像の左上座標からのX位置とY位置でスタンプの位置を直接設定したい場合は、-stamppos topleft 指定を利用してください。

# スタンプ水平位置調整(％単位)

オプション：-stampw <n>

スタンプ画像の水平オフセット値を、出力画像の横サイズを100%とした%単位で指定します。
正の値を指定すると右方向に、負の値を指定すると左方向に移動します。指定できる値は通常-100～100で、デフォルトは0です。
例えば "-stampw 20" と指定すると、出力画像の横幅の20%分だけ、スタンプ画像の配置位置が右方向に移動します。出力画像の横幅が100ピクセルであれば20ピクセル、160ピクセルなら32ピクセルになります。
100を超える値を指定することも可能ですが、その場合スタンプ画像が出力画像の外に出てしまうため、スタンプが表示されなくなりますのでご注意ください(タイリング指定時を除く)。

# スタンプ垂直位置調整(％単位)

オプション：-stamph <n>

スタンプ画像の垂直オフセット値を、出力画像の縦サイズを100%とした%単位で指定します。
正の値を指定すると下方向に、負の値を指定すると上方向に移動します。指定できる値は通常-100～100で、デフォルトは0です。
例えば "-stamph 20" と指定すると、出力画像の縦サイズの20%分だけ、スタンプ画像の配置位置が下方向に移動します。出力画像の縦サイズが100ピクセルであれば20ピクセル、160ピクセルなら32ピクセルになります。
100を超える値を指定することも可能ですが、その場合スタンプ画像が出力画像の外に出てしまうため、スタンプが表示されなくなりますのでご注意ください(タイリング指定時を除く)。

# スタンプ画像のタイリング合成

オプション：-stamptile <pattern>

スタンプ画像をタイリング合成(画像を並べて合成)するかどうかと、その方式を指定します。

パラメータ | 説明 | 指定例
--- | --- | ---
off | タイリングを行いません。スタンプ画像を指定された位置に1つだけ合成します。 (省略時のデフォルト) |
grid | 碁盤目状(敷き詰め)でタイリングします。 |
checker | 市松模様状(一つ飛ばしで交互)にタイリングします。 |
brick | レンガ模様状(ランニングボンド)にタイリングします。 |

# タイリング間隔指定

オプション：-stampspace <n>

スタンプ画像をタイリング合成する際に、画像間の間隔(縦・横)をピクセル単位で指定します。指定できる値は0以上で、デフォルト値は100ピクセルです。
縦方向と横方向の間隔を別々に指定することはできません。

# タイリングの境界処理

オプション：-stampborder <keep|remove>

スタンプ画像をタイリング合成する際に、出力画像からはみ出してしまうスタンプを除外(非表示化)するかどうかを指定します。

パラメータ | 説明 | 指定例
--- | --- | ---
keep | はみ出しが発生するスタンプを除外しません。 (省略時のデフォルト) |
remove | はみ出しが発生するスタンプを除外します。 |

なお、remove を指定した場合でも、除外することによりスタンプが1個も表示されなくなる場合は除外処理は行いません。

# スタンプ画像合成時の不透明度指定

オプション：-stampopaque <n>

スタンプ画像の不透明度を指定します。

パラメータ | 説明
--- | ---
0～100 | 不透明度 0で完全透明、100で完全不透明になります。

本オプションを利用することで、スタンプ画像全体の不透明度を調整することが可能です。これにより、JPEG画像を半透明合成したり、透過PNGや透過GIF内の不透明部分を半透明化して合成できるようになります。
なお、0 (完全透明)を指定した場合、スタンプは表示されません。

# スタンプ画像のリサイズ指定

オプション：-stampresize <n>

スタンプ画像をリサイズする割合を指定します。

パラメータ | 説明 | 50×50のスタンプ画像を50%指定で 拡大合成した例
--- | --- | ---
0～1000 | 出力画像に内接するサイズを100とした、スタンプ画像をリサイズする割合。 0で拡大縮小無しです。(省略時のデフォルト) |

出力画像サイズに内接するサイズを基準値100として、指定された割合にスタンプ画像を拡大縮小した上で合成を行います。0を指定した場合は拡大縮小は行いません(省略時のデフォルト)。
例えば50を指定すると、スタンプ画像を出力画像に内接するサイズの50%に拡大または縮小してから合成を行います。出力画像が640×400ピクセル、スタンプ画像が100×50ピクセルの場合、内接サイズは640×320ピクセルになり、これを100とした時の50%値の320×160に拡大します。

- 出力画像のアスペクト比が変わる出力設定でもスタンプ画像自体のアスペクト比は維持されます。
- サイズ比率に100より大きい値を指定した場合は、スタンプが出力画像サイズよりも大きく拡大されるので、スタンプ画像の一部が欠けます。
- サイズ比率に1000より大きい値を指定することはできません。

# スタンプ画像の拡大抑止

オプション：-stampnolarge

-stampresize 指定時に、スタンプ画像の拡大を抑止します。
本オプションを利用することで、小さいスタンプ画像が不意に拡大されることを抑止することが可能です。
なお、スタンプ画像が大きい場合など、指定されたサイズがスタンプ画像の元サイズより小さくなる場合の縮小は行われます。

# JPEG多重処理スキップ機能

# JPEG最適化済みマーク出力指定

オプション：-optmarkwrite <off | on>

JPEGファイル出力時に、SmartJPEG独自の「JPEG最適化済みマーク」を出力(付加)するかどうかを指定します。

パラメータ | 説明
--- | ---
off | JPEGファイル出力時に、SmartJPEG独自の「JPEG最適化済みマーク」を付加しません。 (省略時のデフォルト)
on | JPEGファイル出力時に、SmartJPEG独自の「JPEG最適化済みマーク」を付加します。 マークを付加することにより、最適化済みのファイルを再圧縮したり、同じファイルを上書きすることを回避出来るようになります。 なお、offのときと比べて、出力ファイルサイズが数十バイト増加します。

# JPEG最適化済みファイルの処理をスキップする

オプション：-optmarkskipin <mode>

入力ファイルとしてJPEG最適化済みマークを持つJPEGファイルが指定されたとき、画像処理をスキップするかどうかを指定します。

パラメータ | 説明
--- | ---
off | 画像処理をスキップしません。 入力ファイルのJPEG最適化済みマークの有無に関わらず、画像処理を行います。
on | 画像処理をスキップします。 入力ファイルにJPEG最適化済みマークが付加されている場合は画像処理をスキップし、入力画像をコピーする形で出力します。 入力ファイルにJPEG最適化済みマークが付加されていない場合は、通常通り画像処理を行います。
auto | 画像処理をスキップするかどうかを自動決定します。(省略時のデフォルト) 入力ファイルにJPEG最適化済みマークが有り、合わせて画像の内容が変化するオプションが指定されていない場合は画像処理をスキップし、入力画像をコピーする形で出力します。 入力ファイルにJPEG最適化済みマークが有るが、合わせて画像の内容が変化するオプション(拡大縮小・フィルタ・回転・スタンプ等)が指定されていた場合は画像処理を行います。 入力ファイルにJPEG最適化済みマークが無い場合は、通常通り画像処理を行います。

# JPEG最適化済みファイルに対する上書きをスキップする

オプション：-optmarkskipout <mode>

JPEG最適化済みマークを持つJPEGファイルに対する上書き出力をスキップするかどうかを指定します。

パラメータ | 説明
--- | ---
off | ファイル出力をスキップしません(上書きします)。 出力先ファイルのJPEG最適化済みマークの有無に関わらず、ファイルを出力します(上書きします)。
on | ファイル出力をスキップします(上書きしません)。 出力先ファイルにJPEG最適化済みマークが付加されている場合は出力をスキップし、ファイルをそのまま残します。 出力先ファイルにJPEG最適化済みマークが付加されていない場合は、ファイルを出力します(上書きします)。
auto | ファイル出力をスキップするかどうかを自動決定します。(省略時のデフォルト) 出力先ファイルにJPEG最適化済みマークが有り、出力予定画像と出力先ファイルの画像サイズが同じになる場合は出力処理をスキップし、ファイルをそのまま残します。 出力先ファイルにJPEG最適化済みマークが有るが、出力予定画像と出力先ファイルの画像サイズが異なる場合は、ファイルを出力します(上書きします)。 出力先ファイルにJPEG最適化済みマークが無い場合は、ファイルを出力します(上書きします)。

なお、一度SmartJPEGでJPEG最適化済みマークを付加した後に、何らかの理由で再度上書き出力を行いたい場合は、本オプションで明示的に off を指定する必要があります。

# その他の機能

# 入力画像情報表示

オプション：-dispinfo

-in オプションで指定された画像の情報を表示します。
それぞれ以下の情報が表示されます。

画像形式 | 表示情報
--- | ---
JPEG | ファイルサイズ、ファイル形式、横サイズ、縦サイズ、色深度(ビット数)、 色空間、サンプリング形式、Exif回転情報、ICCプロファイルの有無とサイズ、保存時の画質設定(推定)
PNG | ファイルサイズ、ファイル形式、横サイズ、縦サイズ、色深度(ビット数)、 ダイレクトカラー/インデックスカラーの別、パレット数(インデックスカラーの場合)、アルファチャンネルの有無
GIF | ファイルサイズ、ファイル形式、横サイズ、縦サイズ、色深度(ビット数)、 アニメーションGIFかどうか、アニメフレーム数(アニメーションGIFの場合)、パレット数、透過色の有無
WebP | ファイルサイズ、ファイル形式、横サイズ、縦サイズ、色深度(ビット数)、 アニメーションかどうか、アルファチャンネルの有無、圧縮形式
AVIF | ファイルサイズ、ファイル形式、横サイズ、縦サイズ、色深度(ビット数)、 色空間、サンプリング形式、アルファチャンネルの有無、アニメーションかどうか

本オプションが指定された場合、入力ファイルの情報表示のみ行い、画像変換やファイル出力は行いません。

- 本オプション利用時は -in オプション以外のオプションは指定できません。
- 本オプション利用時は -out オプションの指定は不要です。指定した場合エラーとなります。

# 出力画像情報表示

オプション：-dispoutinfo

-out オプションで指定された出力画像の情報を表示します。
それぞれ以下の情報が表示されます。

画像形式 | 表示情報
--- | ---
JPEG | ファイルサイズ、ファイル形式、横サイズ、縦サイズ
PNG | ファイルサイズ、ファイル形式、横サイズ、縦サイズ、パレット数(インデックスカラーの場合)、アルファチャンネルの有無
GIF | ファイルサイズ、ファイル形式、横サイズ、縦サイズ、パレット数
WebP | ファイルサイズ、ファイル形式、横サイズ、縦サイズ、アルファチャンネルの有無
AVIF | ファイルサイズ、ファイル形式、横サイズ、縦サイズ、フレーム数

本オプションが指定された場合、通常の画像変換・ファイル出力を行った上で情報表示を行います。

# 更新履歴

- Version 2.62.00

- アニメーション変換で、アニメーションWebPファイルの入力に対応しました。
- -imageiccpオプションで、WebPファイルのICCプロファイル処理に対応しました。

- Version 2.61.01

- optipngモジュールのインストールをオプション化しました。

- Version 2.60.00

- AVIF形式に対応し、関連オプションを追加しました。

Copyright © 2017-2021 Web Technology Corp.
Copyright © CRI Middleware Co., Ltd.

本ドキュメントの画像の一部に ISO/JIS-SCIDの画像(解像度: ISO 300)を使用しています。