Skip to main content
March 17, 2018
Question

epsファイルの先頭にあるプレビュー画像のバイナリーデータは全てリトルエンディアン形式でしょうか?

  • March 17, 2018
  • 1 reply
  • 1422 views

アドビスタッフさんへの質問になるかと思います。

illustrator等で生成されるepsファイルの、

先頭にあるプレビュー画像のバイナリーデータは、

全てリトルエンディアン形式なのでしょうか?

それとも扱う機械CPUによって、ビッグエンディアン

形式になったりしますでしょうか?

ご回答宜しくお願いします。

This topic has been closed for replies.

1 reply

Ten A
Community Expert
Community Expert
March 17, 2018

EPSFのプレビューは16進ASCIIキャラクタで構成されます。また、いくつかのファイルフォーマットが許容されていますが、データ構造はそれらのフォーマットに準拠したものとなっています。JFIFの場合はBig-endianですが、TIFFの場合はIIで始まるかMMで始まるかによってバイトオーダがかわります。しかしながら、MacもIntel CPUになって久しいですから現状ではビッグエンディアンが基本となります。でも、古いデータには注意が必要です。必ずヘッダの開始部分を確認してください。PICTについては…省略します。

March 17, 2018

ご回答ありがとうございます。

epsファイルの先頭には、プレビュー情報構造体なるものがあるかと思います。

そこにTIFF画像のオフセットなり、TIFF画像のサイズ等のデータ等の情報があると思いますが、

その情報を読み込むバイトオーダーはリトルエンディアンが基本でしょうか?

monokano
Community Expert
Community Expert
March 17, 2018

%AI7_Thumbnail のところですよね。

ExifTool で下記のようにすると、ファイルとして抽出できます。

exiftool -TIFFPreview -b epsファイル > preview.tif

これを下記のaiファイルで試してみました。いずれもTIFF 8bit 透明です。

抽出後のバイトオーダーはバイナリエディタで確認。

  • Intel MacのCS6 … リトルエンディアン
  • PPC MacのCS3 … ビッグエンディアン

ということで「リトルエンディアンが基本でしょうか?」という質問自体が誤りであり、

バイトオーダーはプラットフォームによると考えてよいと思います。