画像の幅は、左端から右端までのピクセル数です。画像の高さは、上端から下端までのピクセル数です。幅は通常先に書かれるので、640 x 480 は幅640ピクセル、高さ480ピクセルという意味になります。
ファイルのメタデータでは、「Image Width」はこの数値を保存するフィールドです。Image Heightと合わせて、画像の縦横のピクセル数、つまり画像 幅 ピクセルと高さを表します。これらの値は、ファイル内のバイト数を表すファイルサイズとは異なります。
どのファイルがそれを持っているか
画像形式ごとに、ファイル内で幅を保存する場所は異なりますが、いずれもピクセル数として保存されます。メタデータリーダーは、以下の各形式でこの値を Image Width として表示します。
- JPEGはフレーム開始セグメント内に幅を保存し、1 から 65535 までの数値として保持します。
- PNGは IHDR チャンク内に幅を保存します。IHDR はファイル内で最初のチャンクでなければなりません。幅が 0 の値は無効です。
- GIFは論理スクリーン記述子内に、2バイトの数値として幅を保存します。
- WebPは VP8、VP8L、または VP8X チャンク内に幅を保存します。非可逆圧縮の WebP の幅は最大 16383 ピクセルまで、可逆圧縮では 16384 ピクセルまでです。
- TIFFは、タグ
ImageWidth(ID0x0100)に幅を保存します。
カメラやスマートフォンで撮影した JPEG 写真には、通常 2 つ目の幅として ExifImageWidth タグ(ID 0xa002)も含まれています。Exif 規格ではこのタグ名を PixelXDimension とし、圧縮画像では必須としています。これは、表示される画像の有効な幅を記録します。
その値がどのように表示されるか
値はピクセル単位の整数です。Exif 規格のサンプル画像は 640 x 480 ピクセルなので、その Image Width は 640 です。
幅をインチやセンチメートルに変換するには、X Resolution で割ります。このフィールドは、1インチまたは1センチメートルあたりに含まれるピクセル数を表します。
実際の解像度が不明な場合、Exif 規格では 1インチあたり 72 ピクセルを使用します。その設定では、幅 640 ピクセルの画像は 8.89インチ、約 22.6cm の幅で印刷されます。
通常は、JPEG フレーム内の幅と Exif の幅は一致します。エンコーダーが右端にパディングとして列を追加する場合、Exif 規格では差異を認めています。規格の例では、Exif タグは 620、JPEG フレームは 640 となっています。
ファイルにとって重要な理由
多くのアップロードフォームや印刷サービスでは、画像のピクセル数(縦横)に制限が設けられています。「Image Width」の行を確認することで、送信前に画像 幅 ピクセルがその制限を満たしているかを確認できます。
ウェブページでは、幅はレイアウトに役立ちます。HTML で画像に幅と高さを指定すると、ブラウザは画像の読み込み前に必要なスペースを確保できます。これにより、画像が描画されたときにページ内容が動いてしまうレイアウトシフトが軽減されます。
幅は、画像にどれくらいの情報量(細かさ)があるかの目安にもなります。幅に高さを掛けると、総ピクセル数が求められます。
メガピクセルの行には、その総ピクセル数が百万単位で表示されます。640 x 480 の画像には 307,200 ピクセルがあり、およそ 0.3 メガピクセルです。
幅と高さが入れ替わっているように見える場合は、Orientation の行を確認してください。値が 6 または 8 のとき、ビューアーは表示前に画像を 90 度回転させます。そのため、ファイル内の幅が高さとして扱われ、幅 640 ピクセルで保存された画像が、高さ 640 ピクセルの画像として表示されます。