LaTeXでPDFのメタデータを付ける

一口にLaTeXと言っても、様々あります。 ここでは、pLaTeX + dvipdfmx の組み合わせを使っている人を想定して、説明します。 その他の人は「latex pdf メタデータ」でGoogle検索して、他の方法を調べに行ってください。

Google検索すると、hyperrefを使う方法がよく見つかりますが、これはお勧めしません。 hyperrefはお行儀の悪い(=LaTeX の内部処理をあちこち書き換える)パッケージと呼ばれ、 不具合に悩まされる原因となりますので使用には注意が必要です。

下記では、hyperrefを使わない方法を示します。

PDFのメタデータを付ける

PDFのメタデータとして、作者とタイトルを付けるには、LaTeXのソースに下記を入れればよいです。 挿入場所はプリアンブルのところです。 「岩手 太郎」と「盛岡の...」のところを自分の情報に書き換えてください。 この情報はメタデータとして使うものですので、単純テキストに限ります。 LaTeXのコマンドや改行などを含めないでください。

\usepackage{atbegshi}
\newcommand{\myPdfAuthor}{岩手 太郎}
\newcommand{\myPdfTitle}{盛岡の年間の気候の変化に関する調査研究}
\AtBeginShipoutFirst{\special{pdf:tounicode EUC-UCS2}} % pLaTeXの内部漢字コードがEUCの場合
\AtBeginDvi{\special{pdf:docinfo <<
 /Author   (\myPdfAuthor)
 /Title    (\myPdfTitle)>>}}

LaTeXソースで、\author{}, \title{}コマンドを使って原稿を書いている場合は、それらのコマンドの直後に下記を置くのでもよいです。 \author{}, \title{}コマンドで指定した内容が、PDFのメタデータにも使われます。 再度注意しますが、メタデータとして使うものですので、単純テキストに限ります。 LaTeXのコマンドや改行などを含めないでください。 凝ったタイトルにしないでください。

\usepackage{atbegshi}
\AtBeginShipoutFirst{\special{pdf:tounicode EUC-UCS2}} % pLaTeXの内部漢字コードがEUCの場合
\makeatletter
\AtBeginDvi{\special{pdf:docinfo <<
 /Author   (\@author)
 /Title    (\@title)>>}}
\makeatother
Last modified:2021/01/08 18:22:18
Keyword(s):
References:[卒業研究 2019] [卒業研究 2020] [卒研発表 2018]