如何在 LuaTeX 中以 pdf 模式附加文件?

如何在 LuaTeX 中以 pdf 模式附加文件?

我有此代码可以通过 dvipdfmx 附加文件,并且运行良好:

\def\attach#1{%
  \special{pdf:fstream @file (#1)}%
  \special{pdf:ann bbox 0 0 10 10
  <</Type /Annot /Subtype /FileAttachment
  /FS <</Type /Filespec /F (#1.txt)
  /EF <</F @file>> >> /Name /PushPin>>}}
\attach{\jobname.tex}
\bye

如果我使用navigator包,我看不到打开文件的按钮:

\pdfoutput=1
\pdfcompresslevel=0
\input navigator
\embeddedfile{sourcecode}{test.tex}
A
\bye

这个主题是相关的,但我无法让这些示例在 LuaTeX 中运行:使用纯 TeX(pdfTeX)附加文件

上述 dvipdfmx 代码应如何更改才能在 pdf 模式下与 luatex 一起工作?

答案1

以下代码按要求工作:

\pdfoutput=1
\def\attach#1{%
  \immediate\pdfobj stream file {#1}%
  \pdfannot width 10pt height 10pt depth 0pt {
    /Subtype /FileAttachment
    /C [ 0 0.5 0 ]
    /FS << /F (#1.txt)
    /Type /Filespec
    /EF << /F \the\pdflastobj\space 0 R >> >>}}
\attach{\jobname.tex}
\bye

相关内容