それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

XPS ファイルをPDFに変換する

XPSファイルの功罪

少し前の、MS OfficeはPDFをサポートせず、XPSというMS独自フォーマットでプリント保存してた

XPSそのものは悪く無い。普及しなかった。でもPDF出力がない頃は、まあ使えるフォーマットとして重宝してた。

あのころは、コマンドもPostScript も、CUPSも知らなかったし。なにより。PDFリーダー起動遅かったし。

PDFプリンタインストールするくらいならXPSで十分だったんだよな。

XPS ファイルをPDFに変換する。libgxps

XPSファイルをPDFに変換したい。

EvernoteXPSファイル貼り付けてもプレビュー展開されないので悲しい。

インストール

brew install libgxps

変換

xpstopdf input.xps out.pdf

とっても簡単

XPS ファイルフォーマットについて

XPSMS OfficeのOpenXML Formats の一種である。つまり次のことが言える。

xps は単なるzip ファイル

XPS = XML Pager Specification という意味とかあって、XPSはXLSXやDOCXの一種と思えばイイ。

XPS ファイルの構造

拡張子をzip にしてぱぱっと展開すると、XPS ファイルは次のような構造になっている。

/Users/takuya/Desktop/4 2.xps
├── Documents
│   └── 1
│       ├── FixedDocument.fdoc
│       ├── Metadata
│       │   └── Page1_Thumbnail.JPG
│       ├── Pages
│       │   ├── 1.fpage
│       │   └── _rels
│       │       └── 1.fpage.rels
│       ├── Resources
│       │   └── Fonts
│       │       └── 80E5944E-45ED-40A9-94AE-50658D77D777.odttf
│       └── _rels
│           └── FixedDocument.fdoc.rels
├── FixedDocumentSequence.fdseq
├── Metadata
│   ├── Job_PT.xml
│   └── MXDC_Empty_PT.xml
├── [Content_Types].xml
└── _rels
    └── FixedDocumentSequence.fdseq.rels

Documents の中に、各ページが格納されている。今回は1ページしか無いので、1というディレクトリが存在スル。

XML大好きな私としては、PDFよりXPSのほうが良いんだけどなぁ。普及しなかった・・・

参考資料

https://live.gnome.org/libgxps

http://superuser.com/questions/218490/tool-for-converting-from-xps-to-pdf-format

https://www.microsoft.com/whdc/xps/default.mspx

https://msdn.microsoft.com/en-us/library/aa338205(v=office.12).aspx