EPSファイルのDPI算出について
投稿日: 2005年10月25日 更新日: 2017年07月22日
EPSファイルの解像度(DPI)を取得することになったので調査メモ。
そもそも、EPSファイルはベクトルデータを格納するファイルフォーマットなので、解像度はアプリケーションがラスタライズ時に決めることでは?と思っていたのだが、Photohop等が吐き出すEPSファイル(PhotoshopではPhotosop EPSというフォーマット名になっている)にはピクセル情報が含まれているためDPIが算出できる。
「Adobe Photoshop 6.0 File Formats Specification Version 6.0 Release 2 November 2000」より
Photoshop includes a comment in the EPS files it writes so that it is able to read them back in again. Third party programs that write pixel.based EPS files may want to include this comment in their EPS files, so Photoshop can read their files.
具体的には%ImageDataコメントがピクセルデータを保持している。あとは%BoundingBoxコメントが保持している全体のサイズ(ポイント=1/72inch)と合わせればDPIが算出可能。
その他、EPSに関する仕様書。
Adobe.comのデベロッパーリソースから2つ。Developer Resources
- PostScript Language Reference, Third Edition
- Encapsulated PostScript (EPS) File Format Specification Version 3.0
1番目がPostScriptのリファレンス。2番目がEPSのファイルフォーマット仕様書。「Adobe Photoshop 6.0 File Formats Specification」についてはネット上で見つけたが、昔はPhotoshop CDの中に入ってたらしい、最近はAdobeに登録してRequest(英語で使用用途等を伝える)しないと手に入らないみたい。
その他参考にしたサイト等
- PhotoshopEPSについて
- Quasimondo - Mario Klingemann’s Flash Blog: Photoshop EPS Parser
- EPS画像のサイズ(幅と高さ)の取得方法
この記事へのコメント
※ このコメントは旧ブログシステム(tDiary)からの移行です。
hajimeさんからのコメント(2005-10-27 12:38:55)
テスト
名前:宮内 はじめ
Code for Nagoya名誉代表
E2D3名古屋支部長
プログラマーです。GISやデータビズが好きです。このサイトは宮内の個人的なメモです。
Tags
Archives
- 2003/06
- 2003/07
- 2003/08
- 2003/09
- 2003/10
- 2003/11
- 2003/12
- 2004/01
- 2004/02
- 2004/03
- 2004/04
- 2004/05
- 2004/06
- 2004/07
- 2004/08
- 2004/09
- 2004/10
- 2004/11
- 2004/12
- 2005/01
- 2005/02
- 2005/03
- 2005/04
- 2005/05
- 2005/06
- 2005/07
- 2005/08
- 2005/09
- 2005/10
- 2005/11
- 2005/12
- 2006/01
- 2006/02
- 2006/03
- 2006/04
- 2006/05
- 2006/06
- 2006/07
- 2006/08
- 2006/09
- 2006/10
- 2006/11
- 2006/12
- 2007/01
- 2007/02
- 2007/03
- 2007/04
- 2007/05
- 2007/06
- 2007/07
- 2007/08
- 2007/09
- 2007/10
- 2007/11
- 2007/12
- 2008/01
- 2008/02
- 2008/03
- 2008/04
- 2008/05
- 2008/06
- 2008/07
- 2008/08
- 2008/09
- 2008/10
- 2008/11
- 2008/12
- 2009/01
- 2009/02
- 2009/03
- 2009/04
- 2009/05
- 2009/09
- 2009/10
- 2009/11
- 2009/12
- 2010/01
- 2010/02
- 2010/03
- 2010/04
- 2010/05
- 2010/06
- 2010/07
- 2010/10
- 2010/12
- 2011/01
- 2011/02
- 2011/03
- 2011/04
- 2011/05
- 2011/06
- 2011/07
- 2011/09
- 2011/10
- 2011/11
- 2011/12
- 2012/01
- 2012/02
- 2012/03
- 2012/04
- 2012/10
- 2015/05
- 2015/12
- 2016/02
- 2016/03
- 2016/04
- 2016/05
- 2017/01
- 2017/07
- 2017/08
- 2017/12
- 2018/03
- 2018/04
- 2018/05
- 2018/10
- 2020/07