这个问题源于错误报告到我的包裹,pdfoverlay
。
有问题的功能是:
\cs_new_protected:Nn \pdfoverlay_set_pdf:n
{
\file_if_exist:nTF { #1 }
{
\str_gset:Nn \g__pdfoverlay_pdf_file_name_str { #1 }
\__pdfoverlay_count_pdf_pages:
\int_gzero:N \g__pdfoverlay_page_int
\bool_gset_true:N \g__pdfoverlay_output_active_bool
\bool_gset_false:N \g__pdfoverlay_action_pending_bool
}
{
\msg_error:nnn { pdfoverlay } { file-not-found } { #1 }
}
}
如果您直接将 PDF 文件名传递给宏,此方法可以正常工作。但是,如果您将 PDF 文件名存储在宏中,则该方法会失败,因为str_gset:Nn
只是对控制序列进行反标记。
生成\pdfoverlay_set_pdf:n
(例如,V
或o
或x
)的变体可以解决这个问题。
问题
- 在这种情况下,样式文件是否应提供这些变体?还是应让用户在需要时自行生成?
- 有一个 LaTeX 接口 (
\pdfoverlaySetPDF
) 调用\pdfoverlay_set_pdf:n
。强制扩展似乎总是存在风险(我对此理解不够充分)。但是,创建各种变体然后\pdfoverlay_set_pdf:x
从 LaTeX 接口调用会不会有问题?