jpg 转 pdf

在线将 JPG 转换为 PDF

JPGJPEG 图像非常受欢迎,因为它们使用复杂的有损压缩算法,使用户能够创建较小的图形。大多数设备(包括台式机、移动设备和其他手持设备)都支持 JPG 图像。但是,如果我们需要共享大量图像,或者需要将它们压缩为单个存档,我们可以将它们转换为单个可移植文档格式 (PDF)。在本文中,我们将讨论如何使用 REST API 将 JPG 转换为 PDF 的详细信息。

JPG 到 PDF 转换 API

Aspose.Imaging Cloud 是我们最受欢迎的 API 之一,提供在云端处理图像的功能。一些令人兴奋的功能包括图像调整大小、裁剪、旋转和转换为其他 支持的文件格式。它是根据 REST API 架构开发的,因此它独立于平台,并且可以轻松与其他云服务集成。此外,当使用特定于编程语言的 SDK 时,它会处理底层细节,同时让您专注于编写特定于项目要求的代码。Aspose.Imaging Cloud SDK for .NET 是 Aspose.Imaging 的包装器,能够将图像转换为 PDF。

PDF 到 JPG 转换 API

类似地,Aspose.PDF Cloud 是我们领先的 REST API 之一,使用户能够创建、数字签名、拆分、合并和转换 PDF 文件为 HTMLXLSXLSXPPTXDOCXML 等。同时,它还使您能够将 EPUBPSSVGXPSJPEG 和其他流行格式转换为 PDF

尽管这两个 API 都提供了将 JPG 光栅图像转换为 PDF 格式的功能,但我们将重点关注使用 Aspose.PDF Cloud SDK for .NET 进行转换。

安装

开始使用 SDK 的第一步是安装,可在 NuGet 和 | GitHub 下载。请在终端中执行以下命令通过 NuGet 安装 SDK:

nuget install Aspose.Pdf-Cloud

或者在 NuGet 包管理器中执行以下命令:

PM> Install-Package Aspose.Pdf-Cloud

另一种方法是直接在 Visual Studio 中安装:

  1. 打开解决方案资源管理器。
  2. 展开项目并右键单击解决方案中的“Packages”文件夹。
  3. 选择管理 NuGet 包… 选项
  4. 单击浏览选项卡并搜索“Aspose.Pdf-Cloud”。
  5. 单击 Aspose.Pdf-Cloud 包,在右侧选项卡中选择适当的版本,然后单击添加包按钮。
Aspose.PDF Cloud NuGet 包

图 1:- Aspose.PDF Cloud 作为 NuGet 包。

安装后,我们需要通过访问 Aspose.Cloud 仪表板 创建一个免费订阅帐户,您可以在其中使用您现有的 GitHub / Google 帐户,或者简单地注册并获取您的客户端凭证。

如何在 C# 中将 JPG 转换为 PDF

请按照以下说明使用 C# .NET 代码将 JPEG 转换为 PDF 格式。

  • 首先,使用字符串对象定义客户端 ID 和客户端机密详细信息。
  • 其次,初始化 PdfApi 对象,并传递客户端 ID 和客户端机密详细信息作为参数。
  • 第三,使用PdfApi的UploadFile(..)方法读取文件内容并上传到云存储。
  • 接下来,创建 ImageTemplatesRequest 类的对象,其中我们定义是否在图像文件上启用 OCR、OCR 的语言、PDF 中图像的边距详细信息以及页面边距详细信息。
  • 最后,调用 PdfApi 类的 PutImageInStorageToPdf(..) 方法,该方法以输出 PDF 名称和 ImageTemplatesRequest 对象作为参数。
// 从 https://dashboard.aspose.cloud/ 获取客户端凭证
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";

// 创建 PdfApi 实例
PdfApi pdfApi = new PdfApi(clientSecret, clientID);

// 输入 JPG 文件的名称
string imageFile = "word-to-jpg.jpeg";

// 云存储上生成的结果 PDF 的名称
string resultantFile = "converted.pdf";

// 从本地存储读取图像文件
using (var file = System.IO.File.OpenRead("/Users/nshahbaz/Desktop/" + imageFile))
{
    // 将原始文档上传至云存储
    pdfApi.UploadFile(imageFile,file);
}

// 创建一个 ImageTemplateRequest 实例,定义输出 PDF 的属性
// 我们已经设置了 PDF 的边距详细信息并启用了 OCR 属性 
ImageTemplatesRequest imageTemplatesRequest = new ImageTemplatesRequest(IsOCR: true,
    OCRLangs: "eng",
    ImagesList: new List<ImageTemplate>()
    {
        new ImageTemplate(ImagePath: $"word-to-jpg.jpeg", ImageSrcType: ImageSrcType.Common, LeftMargin : 10, RightMargin : 10)
    });
    
try
{
    // 调用 SDK 将 JPG 转换为 PDF 并保存在云存储中
    var apiResponse = pdfApi.PutImageInStorageToPdf(resultantFile, imageTemplatesRequest);

    if (apiResponse != null && apiResponse.Status.Equals("OK"))
    {
        Console.WriteLine("JPG successfully converted to PDF !");
        Console.ReadKey();
    }
}
catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
} 
JPG 到 PDF 预览

图 2:- JPG 到 PDF 转换预览。

在线将多个 JPG 转换为 PDF

图像转为 pdf

图 3:将多幅图像转换为 PDF。

如果我们需要将大量图像转换为 PDF 格式,我们需要做的就是在 ImageTemplatesRequest 对象中创建更多 ImageTemplate 类的实例。请参阅下面的代码片段,其中显示了我们如何轻松地将云存储中的三幅图像转换为单个 PDF 文档。

类似地,您可以为 PDF 文档中放置的每个图像指定不同的边距细节。

ImageTemplatesRequest imageTemplatesRequest = new ImageTemplatesRequest(IsOCR: true,
                OCRLangs: "eng",
                ImagesList: new List<ImageTemplate>()
                {
                    new ImageTemplate(ImagePath: $"jpg_to_pdf.jpg", ImageSrcType: ImageSrcType.Common, LeftMargin : 10, RightMargin : 10),
                    new ImageTemplate(ImagePath: $"word-to-jpg.png", ImageSrcType: ImageSrcType.Common, LeftMargin : 0, RightMargin : 0),
                    new ImageTemplate(ImagePath: $"word-to-pdf.jpg", ImageSrcType: ImageSrcType.Common, LeftMargin : 5, RightMargin : 5)
                });
将 jpg 合并为 pdf

图 4:- 3 将 JPG 合并为 PDF 的预览。

使用 cURL 命令将 JPG 转换为 PDF

由于 Aspose.PDF Cloud 是按照 REST 架构开发的,因此也可以通过 cURL 命令访问。但是,在访问 API 之前,我们需要根据从 Aspose.Cloud 仪表板 检索到的 ClientID 和 ClientSecret 详细信息生成 JSON Web Token (JWT)。请在终端中执行以下命令以生成 JWT 令牌。

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4ccf1790-accc-41e9-8d18-a78dbb2ed1aa&client_secret=caac6e3d4a4724b2feb53f4e460eade3" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

生成 JWT 令牌后,请执行以下命令将 JPG 图像转换为 PDF 格式并将输出保存在云存储中。

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

结论

在本文中,我们讨论了使用 Aspose.PDF Cloud 将 JPG 转换为 PDF 的详细信息。该 API 非常强大,使用相同的代码片段,您还可以将 PNG 转换为 PDF、将 TIFF 转换为 PDF 以及将 Pic 转换为 PDF。此外,SDK 是根据 MIT 许可证分发的,其完整源代码可通过 GitHub 下载。

如果您有任何相关疑问,请随时通过我们的免费产品支持论坛与我们联系。

相关文章

您可以考虑访问以下链接以了解更多信息: