问题标签 [unoconv]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - 如何使用 NodeJS + Unoconv 转换 PDF 文件
我需要将docx文件转换为pdf,但我不太了解nodejs,但是,我知道可以执行以下操作:
有一个名为 unoconv-worker 的项目,其中有一部分出现以下行:
https://github.com/koumoul-dev/unoconv-worker/blob/master/route.js
在我的终端中,我可以通过以下方式对其进行转换,并且效果很好:
但是,我想给你一个我给你路线的文件,所以我这样尝试:
输出:
但它没有奏效。你可以帮帮我吗?谢谢
unoconv - `unoconv`没有将excel工作表的所有内容导出为pdf
我正在使用此命令将 .XLSX 文件转换为 PDF。
/usr/bin/unoconv -vvv -f pdf -o test.pdf 'somename.xlsx'
所以 pdf 生成成功,但是当我检查 pdf 内容时,它缺少一张纸上的内容。
我不确定为什么它缺少内容。如果有人指导我进行故障排除,这将很有帮助。
nginx - 通过 Symphony Process Component 使用 unoconv 将文档转换为 pdf
我正在尝试使用 PHP 中的 unoconv 将 word 文档转换为 PDF。当我在 CLI 中运行以下命令时,它可以正常工作而没有任何错误:
但问题是当我尝试在 PHP 中运行它时,如下所示:
结果:
任何人都知道我该如何解决这个问题!?
php - 'unoconv' 脚本在终端中有效,但在我的 laravel 控制器中通过 exec() 函数调用时无效
我正在尝试使用以下 shell 脚本将 docx 文件转换为 pdf:
在 Laravel 中,我有一个控制器函数,我使用 phpWord 创建一个临时 docx 文件,我需要将其转换为 pdf 并返回其 url。
我在我的服务器上安装了unoconv
using ,当我 ssh 进入服务器并通过终端运行 unoconv 时,它可以 100% 正确工作,但是当我在控制器中使用 exec() 运行它时,什么也没有发生!我认为它可能是 docx 的路径由于某种原因不正确,但我不知道为什么,因为我正在使用确切的方法来获取将正确返回 .docx 位置的文件路径apt-get
ubuntu 16.04
docx(以及最终的 pdf)文件存在于我的 laravel 公用文件夹中,路径为:/public/store/tempfile.docx
我也尝试过使用上面的 $filename 变量,它使用 public_path() 调用路径,也没有骰子。
我在 exec() 函数中获取 .docx 文件路径的方式是否存在语法问题?还有其他问题吗?
谢谢!
编辑:我现在使用 Symfony 运行我的 shell 脚本但同样的问题,查看更新版本并查看我需要在 unoconv 可执行文件中更改的包的任何特定路径。可能也可能是某种权限问题,因为 root 用户可以运行命令但 www-data 用户不能!:(
python - 如何通过 django python 中的子进程运行 unoconv?
如果我在终端运行 unoconv -f pdf test_pdf.docx,它工作正常。但是如果我在子进程中运行它,我会收到这个错误
请帮我解决这个问题
python - 如何在较新版本的 libreoffice 中使用 unoconv
我正在尝试使用 python 将加密文档(doc/docx)转换为 PDF。
我要做的是:
- 首先将它们暂时解密在一个单独的文件夹中
- 使用 unoconv 命令行将解密后的文件转换为 pdf:
unoconv -f pdf -eSelectPdfVersaion=1 [path-to-file]
转换运行,但我注意到在 doc 和 docx 文件中,文档(解密文件和 pdf)的外观发生了变化,这不会影响原始加密文件(我通过简单地解密文件来测试它从 Windows 客户端和原来的解密文件)。
外观基本上是影响页面数量的文档样式的变化。例如,一个 13 页的 Word 文档被解密为 14 页的 Word 文档并转换为一个 14 页的 PDF 文件。同样,一个 348 页的 doc 文件被转换为一个 330 页的 doc 文件,然后是一个 330 页的 PDF 文件。
我发现 Microsoft Word 与使用 Unoconv (4.3) 安装的 LibreOffice 版本之间的样式略有不兼容。在进行测试时,我注意到字体已更改为与 LibreOffice 兼容的字体,其大小与原始字体略有不同。
我安装了更高版本的 LibreOffice(5.1、5.3),在我的测试中,解密的 doc/docx 文件具有正确的格式和页码,但 unoconv 没有使用新版本并坚持使用 4.3,因此生成的 PDF 文件带有样式和页码不正确。
我尝试使用:
soffice --headless --convert-to pdf [path-to-file] --outdir [path-to-export-directory]
但它什么也没做。
有没有办法将 unoconv 与 4.3 以外的 LibreOffice 版本一起使用?
有没有办法让 --convert-to 命令与 LibreOffice 5.1 甚至 5.3 一起使用?
javascript - 如何在 Node 中自动将 xlsx 转换为 pdf?
我希望你们一切都好。正如标题所提到的,我一直在寻找一种在 node js 中自动将文件从 xlsx 转换为 pdf 的方法。我发现转换 API https://www.convertapi.com/在我尝试后似乎工作得很好,但需要每月付款,我宁愿避免。
有人建议在节点中使用 unoconv 命令行工具和 child_process 模块,但坦率地说,我完全不知所措。我对命令行不是很精通,甚至安装它的说明也让我有点困惑:
这是说明的链接: https ://scholarlms.net/universal-office-converter-unoconv/
如何在不使用付费 API 的情况下进行转换?
csv - 从 .csv 文件转换为 .xls 文件时,如何使用 Unoconv 保留数字的前导 0?
我有一个 3 列的 csv 文件。第二列包含前导零的数字。例如:
044934343
我需要将 .csv 文件转换为 .xls,为此我使用了名为“unoconv”的命令行工具。
它正在按预期进行转换,但是当我在 Excel 中加载 .xls 而不是显示“04493434”时,单元格显示“4493434”(前导 0 已被删除)。
我尝试用单引号和双引号将 .csv 文件中的数字括起来,但转换后仍会删除前导 0。
有没有办法告诉 unoconv 特定列应该是 TEXT 类型?我试图阅读 unocov 的手册页,但是选项有点混乱。
任何帮助将不胜感激。
python - 'unoconv' 不是内部或外部命令、可运行程序或批处理文件
所以我正在尝试将 docx 文件转换为 pdf,但是当我运行命令unoconv -f pdf fileName.docx
时它返回错误'unoconv' is not recognized as an internal or external command, operable program or batch file.
我已经安装了 LibreOffice,并且相信它在正确的位置。我还没有为 LibreOffice 设置一个监听器,但这不是必需的,因为 unoconv 应该打开它自己的实例。--
C:\Program Files\LibreOffice\program\python.exe
我相信我已将 unoconv 安装在正确的位置。--
C:\Users\user\AppData\Local\Programs\Python\Python38\Scripts\unoconv
需要注意的一点是 Scripts 文件夹中的 unoconvunoconv
没有扩展名,我不确定是否需要将其重命名为unoconv.exe
,unoconv.py
或者全部重命名。
docker - 来自其他容器的 Unoconv 调用(openoffice)
我是 linux 和 docker 的新手。我需要将 odt 文件从 php 容器转换为 pdf。我使用 php-5.6-apache 和https://github.com/xiaojun207/openoffice4-daemon:
sudo docker build --pull -t xiaojun207/openoffice4-daemon --build-arg OO_VERSION=4.1.7 。
sudo docker run -d --restart unless-stopped -u 123456 --name soffice --net my-network -p 8100:8100 -v /data/output-odt:/pdfs/:rw xiaojun207/openoffice4-daemon:latest
openoffice4-daemon 示例在主机上运行良好:
sudo docker run -v /var/output-odt:/pdfs:rw xiaojun207/openoffice4-daemon –net my-network unoconv --connection 'socket,host=127.0.0.1,port=8100,tcpNoDelay=1;urp;StarOffice .ComponentContext' -f pdf /pdfs/test.odt
但我需要从我的 php 容器中执行它。docker run 无法从其他容器中运行。我该怎么做?谢谢