これは質問ではありませんが、DPI がさまざまなファイル形式でどのように保存されるかについての理解を深め、なぜそれが機能するのかについて議論する試みです。
私は画像 (JPG、PNG、Tiff) をよく扱い、その解像度を検出します。
たとえば、Imagick の画像に対してこれを実行できます:
リーリー解像度と単位 (PixelsPerCentimeter または PixelsPerInch) が表示されます
Windows (11) では、JPG のプロパティでのみ解像度が確認できますが、PNG では確認できません。PSD を PixelsPerCentimeter または PixelsPerInch に設定しても、解像度は ( 300 dpi) として表示されます。
Imagick (バージョン: ImageMagick 6.9.11-60 Q16 x86_64) - PixelsPerCentimeter で保存された JPG と PixelsPerInch で保存された JPG の違いを確認できます。しかし、PNG の場合、Photoshop でどのように作成/保存しても、PixelsPerCentimeter になります。
Photoshop (24.1.0) は、JPG の PixelsPerCentimeter も検出できます。ただし、PNG はすべて、PixelsPerCentimeter として保存した場合でも、PixelsPerInch であると「認識」されます。
118.11 ピクセル/センチメートル = 300 ピクセル/インチということは完全に理解できましたが、Windows/Photoshop と Imagick がなぜこのように扱うのかに非常に興味があります。
最初に Photoshop でファイルを作成すると副作用が生じる可能性があると考えたので、Imagick (PNG、300dpi、PixelsPerInch) を使用してファイルを作成しましたが、Imagick では 118 PixelsPerCentimeter と指定されました。
そこで私の質問は次のとおりです。これらの違いは、ファイルの読み取り方法に依存するのでしょうか、それともファイル タイプに保存されている実際のメタデータに依存するのでしょうか?
これは権威ある完全な回答ではありません。誰も回答しなかったので、むしろ「ヒント」に近いものです。
これは少し地雷原のようなもので、ソフトウェアごとに長さが異なります。さらに詳しく調べたい場合は、通常、
exiftool
とその-v
オプションが最も役立ちます。PNG 画像について
元の PNG 仕様には、水平および垂直解像度をメートル単位でのみ指定する
pHYs
ブロックがあり、インチは使用できません。 こちらさまざまな PNG タグについて説明します。一部のソフトウェア (ImageMagick および
exiftool
) は、(JPEG スタイルの) APP1 データ (以下を参照) をzTXt
ブロックに非公式に保存します。そうしない人もいます。2017 年 7 月に、PNG 仕様が更新され、
eXIf
ブロックが使用できるようになりました。 ここを参照してください。JPEG画像について
JPEG では、x/y 解像度は APP0、APP1、または APP13 (Photoshop) セグメントに保存できます。私が知っている最も適切な説明は ここ です。
XMP データにはそれほど興味がありませんでしたが、X/Y 解像度もそこに保存される可能性があると思います。