通过 hyperref 将文件内容逐字放入 exif 数据中

通过 hyperref 将文件内容逐字放入 exif 数据中

目标

我有以下包含以下内容的外部main.bib文件:

@book{fauve2023TheSuperBook,
 title = {The Super Book},
 author = {Fauve},
 publisher = {MadPublisher},
 year = {3 June 2023}
}

我想将其内容放入名为 的 exif 条目中bibtex。此块代码随后应成为元数据。

平均能量损失

按照这个顺序,我使用以下 MWE

\usepackage{hyperref}
\usepackage{sverb}
\usepackage{catchfile}


\newcommand{\importverbatim}[2][]{%
  \CatchFileDef{\temp}{#2}{\endlinechar=-1}%
  \ifx\temp\empty
    \def\importedcontent{}%
  \else
    \def\importedcontent{\temp}%
  \fi
  \hypersetup{#1={bibtex=\importedcontent}}%
}

\importverbatim[pdfinfo]{\jobname.bib}


\begin{document}

You can cite this work with the following Bib\TeX block:


\verbinput{\jobname.bib}


\end{document}

结果

然后,当我使用 i get 检查元数据时exiftool

exiftool main.pdf
ExifTool Version Number         : 12.16
File Name                       : main.pdf
Directory                       : .
File Size                       : 9.1 KiB
File Modification Date/Time     : 2023:06:14 14:31:45+02:00
File Access Date/Time           : 2023:06:14 14:31:46+02:00
File Inode Change Date/Time     : 2023:06:14 14:31:45+02:00
File Permissions                : rw-r--r--
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.5
Linearized                      : No
Page Mode                       : UseOutlines
Page Count                      : 1
Creator                         : LaTeX with hyperref
Bibtex                          : @bookfauve2023TheSuperBook,title = The Super Book,author = Fauve,publisher = MadPublisher,year = 3 June 2023
Producer                        : xdvipdfmx (20200315)
Create Date                     : 2023:06:14 14:31:45+03:00

欺骗

正如您在其中看到的Bibtex,他们有两种主要的不良行为。

  1. 所有花括号都被删除了。就好像 LaTeX 解释了它们,而不是直接照搬它们一样。这一点是最不受欢迎的。

  2. 新行被删除了。嗯……我不知道 exif 标准是否允许新行,但如果是,最好进行多行渲染。如果不允许,也没关系。

问题

那么,如何将外部文件的内容放入 exif 值数据中而不对其进行解释,不删除花括号,并且理想情况下(但不是必须)保留换行符?

相关内容