カプセル化 PostScript (.eps)
Adobe 標準Encapsulated PostScript (EPS) は、PostScript プログラミング言語に基づいた Adobe 社の歴史的なベクター交換標準であり、何十年もの間、商業印刷のプリプレスやベクター イラストレーションのベンチマーク形式でした。
調査とメタデータ
オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査してEPSファイルを識別します:
バイトレベルのヘッダーシグネチャ (マジックバイト)
オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査してEPSファイルを識別します:
16進数シグネチャ(オフセット0):
25 21 50 53 2D 41 64 6F 62 65ASCII表現: %!PS-Adobe
標準化: Adobe Encapsulated PostScriptファイル形式仕様 v3.0
技術仕様
| コンテナアーキテクチャ | Document Structuring Conventions(DSC)に準拠するPostScriptプログラムのテキストストリーム。バイナリTIFF/WMFプレビュー用ヘッダーを付けることも可能 |
| 圧縮 | PostScriptフィルター:FlateDecode、LZWDecode、ASCII85Decode、RunLengthDecode |
| バイトエンディアン | ビッグエンディアン(バイナリヘッダー)/ASCIIのPostScriptプログラムストリーム |
| 色空間 | DeviceCMYK, DeviceRGB, 特色(Pantone), PostScript CIE色空間 |
| チャンネルと構造 | チューリング完全なベクターページ記述コマンド、文字組み、および埋め込みラスタ画像 |
| 最大寸法 | DSCコメントのBoundingBoxで定義(単位はポイント、1/72インチ) |
| 透過性 | アルファチャンネルによる透明度には標準対応しない(統合処理またはPostScript 3のブレンドモードが必要) |
| ストリーミングとプログレッシブ | ストリーミング不可。ページ状態の計算にはPostScriptインタープリターによる全体の実行が必要 |
技術比較表:EPSと競合製品
| 技術属性 | EPS (現在) | SVG | AI | |
|---|---|---|---|---|
| アーキテクチャ | チューリング完全な PostScript コード | 構造化オブジェクト グラフ (ISO 標準) | W3C XML DOM ベクター標準 | 独自の Adobe Illustrator ファイル |
| アルファ透過 | なし(フラット化された不透明ラスター) | 完全なアルファおよびブレンド モードのサポート | 完全な CSS および SVG アルファ サポート | 完全なマルチレイヤー アルファ サポート |
| 最新ブラウザのサポート | ネイティブ ブラウザ サポートゼロ | 対応状況はブラウザーとアプリによって異なります。 | 対応状況はブラウザーとアプリによって異なります。 | なし(変換が必要) |
| プリプレスでの先行実績 | レガシーなプリプレスの主力(1987年 - 2005年) | 現在のプリプレス標準(PDF/X) | Web およびデジタル UI デザイン | アクティブなベクター デザイン マスター |
一般的な破損モードと16進数リカバリガイド
印刷またはラスタライズ中に PostScript エラー「undefined; OffendingCommand: ...」が発生する。
根本原因: ドキュメント ストリーム内のフォント定義が欠落しているか、PostScript プロシージャ定義が途切れている。
復旧: File2File.app PostScript Transcoder を使用して、最新の SVG または PDF に変換する。
セキュリティ分析とパーサー攻撃ベクトル
EPS は実行可能な PostScript コードであるため、悪意を持って細工された EPS ファイルは、Ghostscript などの脆弱なインタープリターでリモート コード実行を引き起こす可能性があります。
既知の攻撃ベクター
- 任意のシェル コマンドの実行を許可する Ghostscript の「-dSAFER」サンドボックス バイパスの脆弱性。
- 硬化されていない PostScript スタックおよび辞書エバリュエーターにおけるメモリ破損。
- 埋め込みバイナリ TIFF/WMF プレビュー ヘッダーにおけるバッファ オーバーフロー。
防御的ベストプラクティス: ネイティブオペレーティングシステムでEPSファイルを絶対に実行せず、隔離された特権を持たないWebAssembly環境でSVG/PDFにトランスコードします。
歴史的背景とマイルストーン
主なメリット
- 商業印刷機向けの高精度な数学的ベクター スケーラビリティと特色(PANTONE)分解精度。
- 多くのプロ向け出版・イラストアプリでサポートされていますが、製品やバージョンによって対応状況は異なります。
- チューリング完全なグラフィックス機能により、複雑なフラクタルやアルゴリズム曲線を数学的に生成できます。
技術的な制限とデメリット
- セキュリティ上のリスク: PostScript は、レガシーなインタープリターでファイルシステム操作を引き起こす能力を持つ実行可能なプログラミング言語です。
- ネイティブなアルファ透過なし: 透明なドロップシャドウやガラス効果は、ラスターのスライスにフラット化(ラスタライズ)する必要があります。
- Microsoft Officeの一部のバージョンや最新のブラウザーでは、EPSへの対応が制限または省略されています。PostScript処理に伴うセキュリティ上の懸念も一因です。
興味深い技術トリビア
- EPS ファイルは文字通り、画像の描き方をプリンターに指示する PostScript で書かれた実行可能なコンピューター プログラムです。
- 多くの EPS ファイルは、レイアウト アーティストが PostScript インタープリターを実行せずに配置できるように、バイナリ ヘッダー内に低解像度の TIFF または Windows Metafile (WMF) サムネイルを含んでいます。
- ジョン・ワーノックによる PostScript と EPS の発明は、Adobe 社をフォーチュン 500 に押し上げました。
よくある技術的な質問
なぜMicrosoft OfficeにEPSファイルを挿入できなくなったのですか?
Windows 版 Office では、セキュリティ更新により EPS ファイルの挿入が無効になりました。Microsoft 365 および Office 2019 以降では再有効化できませんが、一部の旧バージョンではレジストリの変更で可能です。この変更は Office for Mac には適用されません。
EPSをSVGやPDFに変換するにはどうすればよいですか?
Webブラウザから直接File2File.appを使用して、EPSファイルを簡潔なSVGまたはPDFのベクターグラフィックスに安全に変換できます。
EPSとPostScript(.ps)の違いは何ですか?
標準の.psファイルは複数のページを含む完全なドキュメントを記述しますが、.epsファイルはBoundingBoxによって境界が定められ、他のドキュメントに「カプセル化」(挿入)されるよう設計された単一のグラフィックを記述します。