天地有情

[LaTeX] pdfpages --- LaTeXの中にPDFドキュメントを include する

pdfpages --- LaTeXの中にPDFドキュメントを include する

§1 はじめに

pdfpagesパッケージは,外部の複数ページのPDF文書の挿入を簡素化します.
以前は pdflatex 上で利用されていましたが,現在は XeTeX, LuaTeX, (u)pTeX
がサポートされています.

1.1 インストール

TeXLive/W32TeX などには標準でインストールされています.

1.2 マニュアル

コマンドラインから texdoc pdfpages を実行してください.


§2 使い方

2.1 プリアンブルに
  \usepackage {pdfpages}
  を記述します.

2.2 代表的な書式

(1)platex + dvipdfmx あるいは ptex2pdf 使うときは

    \documentclass [dvipdfmx] {jsarticle}
    \usepackage{pdfpages}
    クラスオプションの [dvipdfmx] に注目しましょう.これを指定しないとエラーになります.

(2)pdflatex あるいは lualatex の場合は "クラスオプション無し" で,

    \documentclass{article}
    \usepackage{pdfpages}
    

(3)パッケージ オプション

    \usepackage [<options>] {pdfpages}

主な <options>

   final: ページを挿入する.(デフォルト)
   draft: ページを挿入しない.フレームとファイル名を出力する.

(4)主コマンド

   \includepdf [<key=val>] {<filename>} --- 外部PDF文書のページを挿入.

<key=val> --- <key=val>の構文を使用してオプションのリストをカンマで分離します.
          40種類以上のオプションがあり,ここでは利用度の高い,ごく一部を紹介します.

<filename> ---ファイル名には空白を含めることはできません.


§3 サンプル

3.1 <key=val>オプション

(1)pages= オプション

\includepdf[pages={1,5}]{input.pdf}

とすると,input.pdfの1ページ目と5ページ目が挿入され,
input.pdfの各ページが文書の各ページを占有します.以下は pagesオプションの指定例です.

  ・pages=-とすると全ページを挿入
  ・pages={-5}とすると1ページ目から5ページ目までを挿入
  ・pages={3-}とすると3ページ目以降全てを挿入.pages={3-last}でも同様.
  (lastはこのようなページ範囲の指定のみで有効.pages={last}という指定はできない.)
  ・pages=3とすると3ページ目を挿入
  ・pages={2-5}とすると2ページ目から5ページ目までを挿入
  ・pages={5-2}とすると2ページ目から5ページ目までを逆順で挿入.
  ・pages={last-1}とすると全ページを逆順で挿入.
  ・pages={1,{},5}とすると1ページ目と5ページ目を挿入し,その間に空ページを入れる
  ・pages={6,2-4,{},15}とすると6,2,3,4ページ目,空ページ,15ページ目の順番で挿入

pagesオプション省略すると "最初のページのみ" が挿入されます.

(2)nup= オプション (nup=<xnup>x<ynup>)

\includepdf[nup=2x3,pages=-]{input.pdf}

横2縦3に "行優先" で並べて配置します(default).なお,順番は column[=true] オプションで "列優先" に変わります.
論理値は通常 "false" ですが, column あるいは column=true で true 設定となります.

pdfpages01.png


もしinput.pdfが4ページしかない場合は次のようになります.

pdfpages02.png


columnstrict[=true]オプションは,最後のページのための厳格な` "列優先" のレイアウトを強制します.

(3)pagecommand= オプション

\includepdf[pagecommand={\thispagestyle{plain}},pages=-]{input.pdf}

pagecommandで指定されたLaTeXの命令は,PDF挿入直前に実行されます.
ページ数が追加されたinput.pdfが生成されます.
デフォルトは {\thispagestyle{empty}} で,ページ数は出力されません.

(4)fitpaper= オプション

\includepdf[fitpaper]{input.pdf}

現在作成している文書サイズと挿入されるPDFサイズが異なる場合,pdfpagesは挿入するファイルを
適当に拡大縮小し,現在の文書サイズに合わせます.

fitpaper[=true]オプションを指定すると,逆に文書サイズを挿入されるPDFの最初のページのサイズに合わせます.
拡大縮小も行われません.

(5)noautoscale= オプション

文書サイズはそのままでよいが,挿入するPDFの拡大縮小を抑制したい場合は noautoscale[=true] オプションを使います.

(6)offset= オプション, delta= オプション

offset は挿入されたページの原点を変位させます.
引数は2次元,スペースで区切らなければなりません.(default:offset=0 0)

delta はページとの間でいくつかの水平方向と垂直方向のスペースを置きます.
引数は2次元,スペースで区切らなければなりません.(default: delta=0 0).
offset/delta に関し,マニュアル(p-9)を参考にしてください.

\includepdf[nup=2x2,offset=0.5cm 0.1cm,delta=0.3cm 1cm]{input.pdf}

この nup=2x2 の配置例では,PDFを右に0.5cmずらし,上に0.1cmずらして,
また縦の間隔を0.3cm,横の間隔を0.1cmを設定しています.

(7)frame= オプション

\includepdf[frame]{input.pdf}

挿入したPDFのまわりをフレームで囲みます
フレームは,\fboxruleのthickness ラインで構成されています.(default: frame=false)

3.1 コマンド

(1)\includepdfmerge

\includepdfmerge[nup=2x3]{input1.pdf,2,4,input2.pdf,2-6}

\includepdfでは,例えばinput1.pdfとinput2.pdfの1ページ目を横に並べるということができません.
そのような場合には,\includepdfmerge を使って複数のファイルを指定します.

ファイルはページ数とともに指定します.*2<ファイル名>,<ページ指定>の繰り返しで指定します.
ページ指定は\includepdfのpagesオプションと同様です.
また,\includepdfmerge は \includepdf が受けつけるオプションのうち,pages以外を全て受けつけます


(EOF)

スポンサーサイト
  1. 2016/04/27(水) 09:04:46|
  2. LaTeX Tools