XPS ファイルが開きにくい理由
XPS は Microsoft による PDF への回答でした。XPS ビューアーは長年 Windows に同梱され、その後削除されました。macOS や Linux にはそもそも存在しません。こうしてごく普通の文書が、目の前のマシンでは開けなくなります。
とはいえ XPS ファイルは謎めいたものではありません。Open Packaging Convention の ZIP、つまり .docx と同じ容器であり、ページは XAML の小さな部分集合である FixedPage XML です。この部分集合はほぼ一対一で SVG に対応づけられます。だからブラウザーでも描けるのです。
FixedPageは 1/96 インチ単位の viewBox を持つ<svg>にCanvasは変換と不透明度を保った<g>にPath.Dataは XAML のジオメトリ構文とF0/F1の塗りつぶし規則を変換したうえで<path d="…">にGlyphsはベースライン原点に置かれた<text>にImageBrushはパッケージ内の画像を埋め込んだ<image>に
OXPS は同じものを ISO で標準化した版です。どちらもここで開けます。
ページ順はファイル名ではなくパッケージから
ページは FixedDocumentSequence から各 FixedDocument、さらに各 PageContent へとたどって特定します。実際のリーダーと同じ方法です。.fpage をファイル名順に並べると、十ページを超えた時点で、あるいは一度でも並べ替えられていれば、順序が狂います。
描けるもの、描けないもの
各ページはレンダラーが何を出力したかを報告します。パス、テキストラン、画像、キャンバスをそれぞれいくつ出したか、そして対応づけができなかった要素がいくつあったか。最後の数がゼロでなければ、そのページは完全ではありません。それは脚注ではなくページ上に表示されます。レンダラーの警告 — 画像パートの欠落、パッケージにないフォント — も一覧します。
一つ、はっきり書いておくべき限界があります。XPS は各テキストランの Indices 属性にグリフごとの送り幅を持ちますが、それを正確に適用するにはフォント自身のメトリクスが要ります。そこで各ランはベースライン原点に置き、文字列の配置はブラウザーに任せています。通常の文章は正しく出ますが、カーニングの強い行や両端揃えの行は一文字未満のずれが出ることがあります。
そのほか
コアプロパティから読み取ったタイトル・作成者・日付、パッケージ構造、埋め込み画像とフォントの一覧、サムネイル付きのページ送り、ズーム、ページごとの SVG ダウンロード。PDF や PNG が必要なら XPS コンバーターをお使いください。
プライバシー
文書はブラウザー内で開かれ、アップロードはありません。
Tiny Online Tools







