![在 ConTeXt 文档中内联转换 DNG?](https://linux22.com/image/304122/%E5%9C%A8%20ConTeXt%20%E6%96%87%E6%A1%A3%E4%B8%AD%E5%86%85%E8%81%94%E8%BD%AC%E6%8D%A2%20DNG%EF%BC%9F.png)
我正在编写一些代码,用于自动导出 TeX 上下文并将其转换为报告。此代码处理的内容包括 .dng 格式的图像。虽然我知道我可以添加一个额外的步骤convert foo.dng foo.pdf
作为 shell 命令,但这将使我们使用的 tarball 的大小几乎增加一倍(达到 20 GB)。
有没有办法使用模块或其他方式无损转换(我简要查看了 dng -> jbig,但似乎不起作用)图像以便最终纳入文档?
答案1
您可以在执行时就地转换 DNG 文件\externalfigure
。您只需在 Lua 级别注册一个转换器。当然,您需要准备好所需的外部程序。
\startluacode
figures.converters.dng.pdf = function(oldname,newname,resolution)
logs.report("graphics","using imagemagick to convert " .. oldname)
os.execute("convert " .. oldname .. " " .. newname)
end
\stopluacode
\starttext
\externalfigure[foo.dng]
\stoptext
运行时将生成一个文件m_k_i_v_foo.dng.pdf
。