几乎任何文档或图像格式(包括图像)都可以转换为黑白或灰度图像。在本文中,我们将讨论如何在 Java 中将彩色 PDF 文档转换为灰度 JPG 和 PNG 图像格式。

将 PDF 转换为灰度

将文档转换为灰度的 Java API

GroupDocs.Conversion 提供 Java API,用于在多种支持的文件格式和图像类型 之间转换文档。可以使用多个高级选项自定义转换结果。我将使用此 GroupDocs.Conversion for Java API 将 PDF 文档转换为灰度 JPG 和 PNG 图像。

下载或配置

您可以从 下载部分 下载 JAR 文件,或者只获取基于 maven 的 Java 应用程序的 pom.xml 的存储库和依赖项配置。

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-conversion</artifactId>
        <version>22.3</version> 
</dependency>

在 Java 中将 PDF 转换为灰度 JPG 图像

从彩色 PDF 文档的转换开始并将它们转换为图像格式。以下步骤显示了如何在 Java 中将 PDF 转换为灰度 JPG。

  • 使用 Converter 类加载 PDF 文档。
  • 准备图像转换选项
  • 将转换文件格式设置为 JPG。
  • 将灰度选项设置为 true。
  • 使用带有选项的适当 convert() 方法转换为图像。

以下 Java 源代码将 PDF 文档转换为灰度 JPG 图像。

// 在 Java 中将 PDF 转换为灰度 PNG
Converter converter = new Converter("path/document.pdf");

ImageConvertOptions options = new ImageConvertOptions();
options.setFormat(ImageFileType.Jpg);
options.setGrayscale(true);
/*
options.setFlipMode(ImageFlipModes.FlipY);
options.setBrightness(50);
options.setContrast(50);
options.setGamma(0.5F);
*/
converter.convert("path/grayscaleDocument.jpg", options);

此外,还有许多其他选项可以自定义高度、宽度、水平和垂直翻转、文档旋转以及亮度、伽玛和对比度等属性。此外,您可以将具有不同设置的水印应用于输出图像。

在 Java 中将 PDF 转换为灰度 PNG 图像

同样,彩色PDF文档也可以灰度转换为其他图像格式。以下步骤显示了如何在 Java 中将 PDF 文件转换为灰度 PNG。

  • 使用 Converter 类加载 PDF 文档。
  • 使用 ImageConvertOptions 准备转换选项。
  • 将转换文件格式设置为 PNG。
  • 将灰度选项设置为 true。
  • 使用 convert() 方法转换为 PNG 图像。

以下 Java 源代码将 PDF 文档转换为灰度 PNG 图像。

// 在 Java 中将 PDF 转换为灰度 PNG
Converter converter = new Converter("path/document.pdf");

ImageConvertOptions options = new ImageConvertOptions();
options.setFormat(ImageFileType.Png);
options.setGrayscale(true);

converter.convert("path/grayscaleDocument.png", options);

获取免费的 API 许可证

您可以 获得免费的临时许可证 以不受评估限制地使用 API。

结论

总而言之,我们学习了如何在 Java 中将 PDF 文档转换为 PNG 或 JPG 图像格式。尝试构建您自己的转换应用程序,您可以从 文档 了解更多关于低代码和高代码 Java API 的信息,以实现文档转换的自动化。

最简单的方法是体验 GitHub 中的示例。如有任何疑问,请通过 论坛 联系我们。

也可以看看