JPG 转 PDF

了解如何在 Python 中将 JPG 转换为 PDF

JPGJPEG 图像属于流行的光栅图像,因为它们使用复杂的有损压缩算法,使用户能够创建更小的图形。包括台式机、移动设备和其他手持设备在内的大多数设备都支持 JPG 图像。现在,如果我们需要共享大量图像,那么将 JPG 转换为 PDF 似乎是一个可行的解决方案。在本文中,我们将讨论如何在 Python 中将 JPG 转换为 PDF 的详细信息。

我们最近开发了一项免费的 Text to GIF 服务,您可以使用它从简单的文本创建有趣的动画。

JPG 到 PDF 转换 API

本文的范围仅限于 Python 语言,因此我们将重点介绍 Aspose.PDF Cloud SDK for Python 的使用。它是 Cloud REST API 的包装器,使您能够在 Python 应用程序中执行所有 PDF 文件处理功能。它提供了创建、编辑 PDF 文件并将其转换为各种支持的格式 的功能。您还可以加载各种文件,包括 EPUB、PS、SVG、XPS、JPEG 等,并将它们转换为 PDF。

现在第一步是安装 SDK,可通过 PIPGitHub 存储库下载。请在终端/命令提示符下执行以下命令,在系统上安装最新版本的SDK。

 pip install asposepdfcloud

安装后,下一个主要步骤是通过 Aspose.Cloud dashboard 免费订阅我们的云服务。此订阅的目的是仅允许授权人员访问我们的文件处理服务。如果您有 GitHub 或 Google 帐户,只需注册或单击 创建新帐户 按钮。

在 Python 中将 JPG 转换为 PDF

使用 python 代码片段进行转换非常方便。请按照下面定义的步骤来完成此要求。

  • 首先,创建 ApiClient 类的实例,同时提供 Client ID 和 Client Secret 作为参数
  • 其次,创建一个将 ApiClient 对象作为输入参数的 PdfApi 类对象
  • 第三,创建一个 ImageTemplatesRequest 类的实例,我们在其中定义源图像的名称,以及相关的属性,如宽度、高度、边距细节
  • 最后调用PdfApi类的putimageinstoragetopdf(..)方法进行转换
# 从 https://dashboard.aspose.cloud/ 获取客户端凭证

def image2PDF():
    try:
        #Client credentials
        client_secret = "1c9379bb7d701c26cc87e741a29987bb"
        client_id = "bbf94a2c-6d7e-4020-b4d2-b9809741374e"

        #initialize PdfApi client instance using client credetials
        pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)

        # 在将 PdfApiClient 作为参数传递时创建 PdfApi 实例
        pdf_api = PdfApi(pdf_api_client)

        #source image file
        input_file = 'source.jpg'

        #resultant PDF document
        resultant_file = 'Resultant.pdf'

        image_templates_details = asposepdfcloud.ImageTemplatesRequest
        {
            "IsOCR": True,
            "OCRLangs": "eng",
            "ImagesList": [
            {
                "ImagePath": input_file,
                "ImageSrcType": "ImageSrcType.Common",
                "LeftMargin": 10,
                "RightMargin": 10,
                "TopMargin": 10,
                "BottomMargin": 10,
                "PageWidth": 800,
                "PageHeight": 1000,
                "MarginInfo": {
                    "Left": 10,
                    "Right": 10,
                    "Top": 10,
                    "Bottom": 10
                  }
            }
            ]
        }
        
        # 调用API将图片转为PDF格式
        response = pdf_api.put_image_in_storage_to_pdf(name=resultant_file, image_templates= image_templates_details)

        # 在控制台中打印消息(可选)
        print('Image successfully converted to PDF format !')    
    except ApiException as e:
        print("Exception while calling PdfApi: {0}".format(e))
        print("Code:" + str(e.code))
        print("Message:" + e.message)

如果我们需要在一次调用中转换多张图像,请在 ImageTemplatesRequest 对象中指定更多的 ImagesList 实例。

JPG 到 PDF 转换预览

图片 1:- JPG 到 PDF 的转换预览。

使用 cURL 命令将 JPG 转为 PDF

cURL 命令提供了一种通过命令行终端访问 REST API 的便捷方式。由于 Aspose.PDF Cloud 是按照 REST 架构开发的,所以我们也可以通过 cURL 命令访问它。现在第一步是根据您的个人客户端凭据创建一个 JSON Web 令牌 (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"

生成 JWT 令牌后,请使用以下 cURL 命令将 JPG 转换为 PDF 格式。然后将生成的文件上传到云存储。

curl -v -X PUT "https://api.aspose.cloud/v3.0/pdf/Resultant.pdf/create/images" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: application/json" \
-d "{  \"IsOCR\": true,  \"OCRLangs\": \"eng\",  \"ImagesList\": [    {      \"ImagePath\": \"source.jpg\",      \"ImageSrcType\": \"Common\",      \"LeftMargin\": 10,      \"RightMargin\": 10,      \"TopMargin\": 10,      \"BottomMargin\": 10,      \"PageWidth\": 800,      \"PageHeight\": 1000,      \"MarginInfo\": {        \"Left\": 10,        \"Right\": 10,        \"Top\": 10,        \"Bottom\": 10      }    }  ]}"

供您参考,源 JPG 文件和生成的 PDF 文档已通过 source.jpgImage2PDF-Resultant.pdf 上传。

结论

在本文中,我们讨论了使用 Python 将 JPG 转换为 PDF 的步骤。按照相同的说明,我们还可以将 PNG、BMP 和 GIF 图像转换为 PDF。我们还了解了使用 cURL 命令将 JPG 转换为 PDF 的方法。尽管如此,我们的 Cloud SDK 是在 MIT 许可下开发的,因此可以通过 GitHub 免费下载其完整代码片段。

如果您有任何相关疑问或在使用我们的 API 时遇到任何问题,请随时通过免费客户支持论坛 与我们联系。

相关文章

我们还建议访问以下链接以了解更多信息