本文详细介绍了如何使用 Python SDK 将 Word 转换为 PNG。我们知道,包括DOC、DOCX、DOT、ODT等Word文档被广泛用于官方数据共享。在一些机构中,它们被视为官方交流的事实标准,但在各种平台上查看时,word 文档中使用的所需字体不可用可能会影响文档的保真度。因此,可行的解决方案之一是将 Word 渲染为 PNG 光栅图像。我们选择 PNG 格式的原因是这些图像无需任何特定应用程序即可在大多数平台上查看。
词转换API
为了创建、编辑、拆分、合并和比较流行的 Word 文档,我们将使用 Aspose.Words Cloud SDK for Python。 SDK 还使您能够将 Word 文档呈现为 PNG 格式。它可以在 PIP 和 GitHub 上下载。在命令行终端执行以下命令安装SDK:
pip install aspose-words-cloud
我们还需要通过访问 Aspose.Cloud dashboard 创建一个免费帐户,以便您可以管理云存储中的文档。
使用 Python 将 Word 转换为 PNG
在本节中,我们将讨论如何从云存储加载 Word 文档,然后将 DOCX 转换为 PNG 格式的步骤。生成的文件也保存在同一存储中。请按照以下步骤操作:
- 首先,创建 WordsApi 对象的实例,同时将 ClientID 和 ClientSecret 详细信息作为参数传递
- 其次,使用 UploadFileRequest(..) 方法将 Word 文件上传到云存储
- 第三,创建 GetDocumentWithFormatRequest 对象的对象,同时将输入的 Word 文件名、所需的输出格式(PNG)和结果文件名作为参数传递
- 最后调用WordsApi类的getdocumentwithformat(..)方法进行转换操作
// 完整的示例和数据文件,请访问 https://github.com/aspose-words-cloud/aspose-words-cloud-python
// 从 https://dashboard.aspose.cloud/ 获取客户端凭证
def wordtopng():
try:
# 创建 WordsApi 实例
words_api = WordsApi("bbf94a2c-6d7e-4020-b4d2-b9809741374e","1c9379bb7d701c26cc87e741a29987bb")
# 输入的word文档名称
inputFileName = 'test_multi_pages.docx'
resultantFile = 'Converted.png'
# 将源 Word 文档上传到云存储
words_api.upload_file(asposewordscloud.models.requests.UploadFileRequest(open('C:\\Users\\shahbnay\\Downloads\\'+inputFileName, 'rb'), "", None))
# 创建用于文档转换的对象
request = asposewordscloud.models.requests.GetDocumentWithFormatRequest(inputFileName, "PNG", None, None, None,
None, resultantFile, None)
# 启动 Word 到 PNG 转换操作
result = words_api.get_document_with_format(request)
# 在控制台中打印消息(可选)
print('Conversion process completed successfully !')
except Api as e:
print("Exception while Converting Word to PNG using Aspose.Words Cloud Api: {0}".format(e))
使用 cURL 命令将 DOC 转为 PNG
在本节中,我们将讨论通过命令行终端使用 cURL 命令将 DOC 转换为 PNG。现在第一步是根据您的客户端凭据生成个性化的 JWT 访问令牌。请执行以下命令生成 JWT 令牌:
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bbf94a2c-6d7e-4020-b4d2-b9809741374e&client_secret=1c9379bb7d701c26cc87e741a29987bb" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
由于我们要使用 GetDocumentWithFormat API 调用,它希望输入的 DOC 文件在云存储中可用。所以我们需要使用以下命令将DOC文件上传到云存储
curl -v -X PUT "https://api.aspose.cloud/v4.0/words/storage/file/input.doc" \
-H "accept: application/json" \
-H "Authorization: Bearer <JWT Token>" \
-H "Content-Type: multipart/form-data" \
-d {"fileContent":{c:\Users\shahbnay\Downloads\test_doc.doc}}
现在最后一步是使用 GetDocumentWithFormat API 调用启动转换操作。该 API 接受两个强制性参数,即名称(输入 DOC 文件的名称)和格式(生成的文件格式。本例中为 PNG)。
curl -v -X GET "https://api.aspose.cloud/v4.0/words/test_multi_pages.docx?format=PNG&outPath=Resultant.png" \
-H "accept: application/octet-stream" \
-H "Authorization: Bearer <JWT Token>"
上例中使用的示例word文档可以从testmultipages.docx下载,输出文件可以从Resultant.png下载。
结论
在本文中,我们学习了使用 Python 代码片段将 Word 转换为 PNG 的步骤。同时,我们还学习了如何通过 cURL 命令将 Word DOC 转换为 PNG。探索 API 功能的另一种令人兴奋的方式是通过 Swagger 接口。
我们真诚地建议您探索程序员指南部分以进一步了解 API 的其他功能,您还可以从 GitHub 下载 SDK 的完整源代码并根据您的要求对其进行自定义(它是在 MIT 许可下发布的)。
相关话题
我们建议您访问以下文章以了解: