blob: 5296c49a9cd6303480d933f1cab07373b22c0f9d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
|
BXpdfver パッケージバンドル
===========================
LaTeX: 出力 PDF のバージョンや圧縮状態を指定する
LaTeX 文書を PDF 文書に変換する際に出力 PDF に関する以下の設定を文書中で
行う機能を提供する。
* PDF バージョン(1.4, 1.5 等)
* ストリームの圧縮の有無
* オブジェクトストリームの使用の有無
### 前提環境
* フォーマット: LaTeX
* エンジン: pdfTeX、XeTeX、LuaTeX、および DVI 出力のエンジン
* DVIウェア(DVI出力時): dvipdfmx
* 依存パッケージ:
- atbegshi(dvipdfmx ドライバの場合)
### インストール
- `*.sty` → $TEXMF/tex/latex/BXpdfver
### ライセンス
本パッケージは MIT ライセンスの下で配布される。
bxpdfver パッケージ
-------------------
### パッケージ読込
\usepackage[<オプション>,...]{bxpdfver}
利用可能なオプションは以下の通り。
* `1.4`、`1.5`、`1.6`、`1.7`、`2.0`: PDF バージョンを指定する。
* `nocompress`: ストリームの圧縮を抑止する。
* `compress`(既定): ストリームの圧縮を抑止しない。
* `noobjcompress`: オブジェクトストリームの使用を抑止する。
* `objcompress`(既定): オブジェクトストリームの使用を抑止しない。
* ドライバオプション: 以下の通り。なお、後述の「ドライバ指定」の
節も参照されたい。
+ PDF 出力のエンジンの場合は、既定で適切なドライバが選択される
のでドライバオプションは不要である。
+ `dvipdfmx`: dvipdfmx 用のドライバを指定する。
+ `nodvidriver`/`disabled`: 全ての機能を無効化する。
* `lenient`: サポートしない機能に対するエラーを警告に格下げする。
* `new-dvipdfmx`: dvipdfmx に対するバージョン検査を省略し、常に最新の
バージョンであると仮定する。
`compress`、`objcompress` はこのパッケージによる抑止を行わないという意味
であり、既に抑止されている場合にそれを再び有効化するものではない。
### 機能
* `\setpdfversion{<バージョン>}`: 出力 PDF バージョンを指定する。
`<バージョン>` には以下の何れかを指定する。
+ `1.4`、`1.5`、`1.6`、`1.7`、`2.0` の何れか。その値に設定する。
+ PDF ファイルの名前。そのファイルのバージョンと同じ値に設定する。
* `\suppresspdfcompression`: ストリームの圧縮を抑止する。
* `\suppresspdfobjcompression`: オブジェクトストリームの使用を抑止
する。(実はこの指定自体は圧縮とは無関係であるが、pdfTeX エンジンの
プリミティブ `\pdfobjcompresslevel` に合わせた命令名を用いた。)
* `\setpdfdecimaldigits{<精度>}`: PDF 命令列中に現れる小数値の精度
(小数点以下の桁数)を指定する。
* `\preservepdfdestinations`: PDF 目的地(PDF destination)の名前の
短縮を抑止し、TeX 文書で指定された名前を用いる。異なる PDF 文書間で
のリンクを正常に機能させるために必要である。
### ドライバ指定に関する補足
\ Drivers (engines) pdfTeX dvipdfmx
Features / LuaTeX / XeTeX others
--------------------------- --------- --------- ------
\setpdfversion Yes Yes No
\suppresspdfcompression Yes Maybe(*2) No
\suppresspdfobjcompression Yes Maybe(*2) No
\setpdfdecimaldigits Yes Maybe(*2) No
\preservepdfdestinations No-op(*1) Maybe(*2) No
1. pdfTeX/LuaTeX では PDF 目的地の名前が短縮されるることはない。つまり
`\preservepdfdestinations` は常に有効になっていると見なせる。
2. これらの機能を使用するためには、(x)dvipdfmx のバージョンが 20160307
以上である必要がある。
- バージョン判定のために kpsewhich と extractbb の起動を利用する
ため、少なくともこれらのプログラムについて、シェルエスケープが
許可されている必要がある。
- dvipdfmx のバージョン情報は補助ファイル(.aux)中にキャッシュ
される。このため、何か状況が変わった場合は、一旦補助ファイルを
削除する必要が生じる。
以下のことにも注意されたい。
* 使用不可能な機能を使おうと試みるとエラーが発生する。
* `dvips` 等の“全く対応していない”若干のドライバオプションを認識
する。この場合、全ての機能の呼出でエラーが発生する。
* `nodvidriver` は特殊で、これを指定した場合は、どの機能の呼出でも
エラーは発生しないが、全く何の動作も行わない。
更新履歴
--------
* Version 0.5a ‹2021/02/14›
- 新しい版の hyperref のための調整。
* Version 0.5 ‹2020/04/19›
- PDF バージョンの値として `2.0` をサポートする。
* Version 0.4 ‹2017/02/11›
- `\setpdfdecimaldigits`、`\preservepdfdestinations` を追加。
* Version 0.3 ‹2016/08/11›
- dvipdfmx/XeTeX でも全ての機能がサポートされる。
* Version 0.2b ‹2016/08/10›
- `lenient` オプションを追加。
- 新しい LuaTeX エンジンのサポート。
* Version 0.2a ‹2015/08/05›
- 細かい修正。
* Version 0.2 ‹2014/07/04›
- 最初の公開版。
--------------------
Takayuki YATO (aka. "ZR")
https://github.com/zr-tex8r
|