使用 Node.js 将 JPG 转换为 PDF |将图像转换为 PDF

您可以在云端以编程方式将 JPG、PNG 等流行格式的图像转换为 PDF 文档。作为 Node.js 开发人员,您可以在 Node.js 应用程序中轻松地将图像转换为 PDF 文件。本文将重点介绍如何使用 Node.js 中的 REST API 将 JPG 转换为 PDF。

本文应涵盖以下主题:

文档转换 REST API 和 Node.js SDK

我将使用 GroupDocs.Conversion Cloud 的 Node.js SDK API 将 JPG 转换为 PDF。 API 允许您将文档转换为您需要的任何格式。支持Word、Excel、PowerPoint, PDF、HTML、JPG、PNG、CAD等50多种文档和图片的转换。它还为云 API 提供 .NET、Java、PHP、Ruby、Android 和 Python SDK 作为其文档转换家族成员

您可以在控制台中使用以下命令将 GroupDocs.Conversion Cloud 安装到您的 Node.js 应用程序:

npm install groupdocs-conversion-cloud --save

在开始执行步骤和可用代码示例之前,请从 dashboard 获取您的 Client ID 和 Client Secret。获得 ID 和密码后,添加如下所示的代码:

global.clientId = "659fe7da-715b-4744-a0f7-cf469a392b73";
global.clientSecret = "b377c36cfa28fa69960ebac6b6e36421";
global.myStorage = "";

const config = new groupdocs_conversion_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";

在 Node.js 中使用 REST API 将图像转换为 PDF

您可以按照以下简单步骤将图像转换为 PDF 文档:

  1. 上传JPG图片文件至云端
  2. 使用 Node.js 将 JPG 转换为 PDF
  3. 下载转换后的PDF文件

上传图片

首先,使用以下代码示例将 JPG 文件上传到云端:

// 从本地/光盘打开 IOStream 中的文件。
let resourcesFolder = 'C:\\Files\\sample.jpg';
fs.readFile(resourcesFolder, (err, fileStream) => {
  // 构建FileApi
  let fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
  // 创建上传请求
  let request = new groupdocs_conversion_cloud.UploadFileRequest("sample.jpg", fileStream, myStorage);
  fileApi.uploadFile(request);
});

因此,上传的 JPG 文件将在云端仪表板的 文件部分 中可用。

使用 Node.js 将 JPG 转换为 PDF

请按照下面提到的步骤以编程方式将 JPG 转换为 PDF 文档:

  • 创建一个 ConvertApi 的实例
  • 创建 ConvertSettings 实例
  • 设置JPG文件路径
  • 将“pdf”分配给格式
  • 提供输出文件路径
  • 创建 ConvertDocumentRequest
  • 通过调用ConvertApi.convertDocument()方法获取结果

以下代码示例展示了如何使用 Node.js 中的 REST API 将 JPG 图像转换为 PDF 文档。

// 接口初始化
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// 定义转换设置
let settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.filePath = "sample.jpg";
settings.format = "pdf";
settings.outputPath = "output";

// 转换文档请求
let request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);
let result = await convertApi.convertDocument(request);

console.log("Document converted successfully: " + result[0].url);
使用 Node.js 将 JPG 转换为 PDF

使用 Node.js 将 JPG 转换为 PDF

下载转换后的文件

上面的代码示例会将转换后的 PDF 文件保存在云端。您可以使用以下代码示例下载它:

// 构建FileApi
let fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
// 下载文件请求
let request = new groupdocs_conversion_cloud.DownloadFileRequest("output\\sample.pdf", myStorage);
let response = await fileApi.downloadFile(request);

fs.writeFile("C:\\Files\\sample.pdf", response, "binary", function (err) { });

使用高级选项将 JPG 转换为 PDF

请按照下面提到的步骤使用一些高级设置将 JPG 转换为 PDF 文档:

  • 创建一个 ConvertApi 的实例
  • 创建 ConvertSettings 实例
  • 设置JPG文件路径
  • 将“pdf”分配给格式
  • 提供输出文件路径
  • 定义 PdfConvertOptions
  • 设置各种转换设置,例如 dpi、图像质量、高度、边距(顶部、左侧、右侧、底部)等。
  • 创建 ConvertDocumentRequest
  • 调用ConvertApi.convertDocument()方法获取结果

以下代码示例显示如何使用高级转换选项将 JPG 转换为 PDF 文档。

// 接口初始化
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// 定义转换设置
let settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.storageName = myStorage;
settings.filePath = "sample.jpg";
settings.format = "pdf";

// 定义 PDF 转换选项
let convertOptions = new groupdocs_conversion_cloud.PdfConvertOptions();
convertOptions.centerWindow = true;
convertOptions.compressImages = false;
convertOptions.dpi = 1024;
convertOptions.fitWindow = false;
convertOptions.grayscale = true;
convertOptions.imageQuality = 100;
convertOptions.marginTop = 5;
convertOptions.marginLeft = 5;
convertOptions.height = 4096;

settings.convertOptions = convertOptions;
settings.outputPath = "output";

// 创建转换文档请求
let request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);
let result = await convertApi.convertDocument(request);
使用高级选项将 JPG 转换为 PDF

使用高级选项将 JPG 转换为 PDF

在不使用云存储的情况下将 JPG 转换为 PDF

请按照以下步骤在不使用云存储的情况下将 JPG 文件转换为 PDF 文件:

  • 创建一个 ConvertApi 的实例
  • 创建 ConvertDocumentDirectRequest
  • 提供输入文件路径和目标格式作为输入参数
  • 通过调用 convertDocumentDirect() 方法获取结果
  • 使用 FileStream.writeFile() 方法将输出文件保存到本地路径

以下代码示例显示了如何在不使用云存储的情况下将 JPG 转换为 PDF 文档。这意味着您将在请求正文中传递输入文件,并在 API 响应中接收输出文件。

// 接口初始化
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// 输入文件
let file = fs.readFileSync('C:\\Files\\sample.jpg');

// 转换文档直接请求
let request = new groupdocs_conversion_cloud.ConvertDocumentDirectRequest("pdf", file);

// 转换文档
let result = await convertApi.convertDocumentDirect(request);

// 保存到本地路径
fs.writeFile("C:\\Files\\sample.pdf", result, "binary", function (err) { });

将 JPG 转换为 PDF 并添加水印

请按照以下步骤将 JPG 文件转换为 PDF 文件,然后为转换后的 PDF 文件添加水印:

  • 创建一个 ConvertApi 的实例
  • 创建 ConvertSettings 实例
  • 设置JPG文件路径
  • 将“pdf”分配给格式
  • 提供输出文件路径
  • 定义水印选项
  • 设置水印文字、颜色、宽度、高度等。
  • 定义 PdfConvertOptions and assign WatermarkOptions
  • 创建 ConvertDocumentRequest
  • 通过调用ConvertApi.convertDocument()方法获取结果

以下代码示例展示了如何使用 Node.js 中的 REST API 将 JPG 转换为 PDF 文档并向转换后的 PDF 文档添加水印。

// 接口初始化
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// 定义转换设置
let settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.filePath = "sample.jpg";
settings.format = "pdf";
settings.outputPath = "output";

// 定义水印选项
let watermark = new groupdocs_conversion_cloud.WatermarkOptions();
watermark.text = "This is a Sample watermark";
watermark.color = "White";
watermark.width = 250;
watermark.height = 100;
watermark.background = false;

// 定义 PDF 转换选项
let convertOptions = new groupdocs_conversion_cloud.PdfConvertOptions();
convertOptions.watermarkOptions = watermark;

settings.convertOptions = convertOptions

// 创建转换文档请求
let request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);
let result = await convertApi.convertDocument(request);
console.log("Document converted successfully: " + result[0].url);
将 JPG 转换为 PDF 并添加水印

将 JPG 转换为 PDF 并添加水印

在线试用

请试用以下使用上述API开发的免费在线JPG转换工具。 https://products.groupdocs.app/conversion/

结论

在本文中,您了解了如何将 JPG 文件转换为云端的 PDF 文件。您还学习了如何使用 Node.js 向转换后的 PDF 文档添加水印。此外,您还学习了如何以编程方式将 JPG 文件上传到云端,然后从云端下载转换后的文件。您可以使用 文档 了解有关 GroupDocs.Conversion Cloud API 的更多信息。我们还提供了一个 API 参考 部分,让您可以直接通过浏览器可视化我们的 API 并与之交互。如有任何歧义,请随时在论坛上与我们联系。

也可以看看