You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

LibreOffice无头模式下导出PDF未同步更新关联文件内容的问题求助

LibreOffice无头模式下导出PDF未同步更新关联文件内容的问题求助

我最近碰到一个挺棘手的问题:通过脚本修改ODT文件(先解压、用sed替换XML内容再重新打包)之后,在Writer图形界面里导出PDF完全正常,能看到替换后的新内容。但用命令行无头模式导出时,生成的PDF却还是旧内容,我用的命令是:lowriter --headless --convert-to pdf textfile.odt

有没有大佬知道怎么让命令行导出也能正常同步更新后的内容?我还整理了完整的复现步骤,方便大家排查:

  • 新建一个Calc文件,在A1单元格输入foo,保存为/tmp/calc.ods
  • 新建一个Writer文件,插入链接的OLE对象:依次选择「插入 > OLE对象 > OLE对象 > 从文件创建」,勾选「链接到文件」选项,选择刚才保存的/tmp/calc.ods,最后将Writer文件保存为/tmp/result.odt
  • 用以下Shell脚本把Calc文件里的foo替换成bar
cd /tmp
mkdir bla
cd bla
unzip ../calc.ods # 解压Calc文件以便编辑内容
sed -i 's/foo/bar/g' content.xml # 替换文本内容
zip -r ../calc.ods . # 重新打包Calc文件
  • 最后执行无头导出命令:lowriter --headless --convert-to pdf /tmp/result.odt

奇怪的是,导出的PDF里依然显示旧的foo,而不是修改后的bar,这到底是哪里出问题了?求指点!

备注:内容来源于stack exchange,提问作者jjk

火山引擎 最新活动