将各种图像格式转换为PDF
Aspose.PDF for PHP 允许您将不同格式的图像转换为PDF文件。我们的库展示了转换最流行图像格式(如 BMP、CGM、DMF、JPG、PNG、SVG 和 TIFF 格式)的代码片段。
将 BMP 转换为 PDF
使用 Aspose.PDF for PHP 库将 BMP 文件转换为 PDF 文档。
BMP 图像是扩展名为 .BMP 的文件,表示用于存储位图数字图像的位图图像文件。这些图像与图形适配器无关,也称为设备无关位图 (DIB) 文件格式。您可以使用 Aspose.PDF for PHP API 将 BMP 转换为 PDF。 因此,您可以按照以下步骤将 BMP 图像转换为 PDF:
- 创建一个新的 Document 对象
- 向文档添加一个新页面
- 将页面的边距设置为 0(如有需要)
- 创建一个新的 Image 对象并设置输入 BMP 文件
- 将图像添加到页面
- 将文档保存为输出 PDF 文件
因此,以下代码片段遵循这些步骤,并展示了如何使用 PHP 将 BMP 转换为 PDF:
// 创建一个新的 Document 对象
$document = new Document();
// 向文档添加一个新页面
$page = $document->getPages()->add();
// 将页面的边距设置为 0
$page->getPageInfo()->getMargin()->setBottom(0);
$page->getPageInfo()->getMargin()->setTop(0);
$page->getPageInfo()->getMargin()->setRight(0);
$page->getPageInfo()->getMargin()->setLeft(0);
// 创建一个新的 Image 对象并设置输入 BMP 文件
$image = new Image();
$image->setFile($inputFile);
// 将图像添加到页面
$page->getParagraphs()->add($image);
// 将文档保存为输出 PDF 文件
$document->save($outputFile);
将 CGM 转换为 PDF
CGM 是一个 ISO 标准,它提供了一种基于矢量的二维图像文件格式,用于存储和检索图形信息。CGM 是一种设备无关的格式。CGM 是一种矢量图形格式,支持三种不同的编码方法:二进制(最适合程序读取速度)、基于字符(生成最小文件大小并允许更快的数据传输)或明文编码(允许用户使用文本编辑器读取和修改文件)。
以下代码片段向您展示了如何使用 Aspose.PDF for PHP 将 CGM 文件转换为 PDF 格式。
- 创建一个 CgmLoadOptions 实例,以指定加载 CGM 文件的任何特定选项
- 创建一个 Document 类的实例,并提及源文件名和选项。
- 使用所需的文件名保存文档。
$options = new CgmLoadOptions();
// 创建一个 Document 对象,并使用指定的选项加载 CGM 文件
$document = new Document($inputFile, $options);
// 将文档保存为 PDF 文件
$document->save($outputFile);
将 DICOM 转换为 PDF
DICOM 是一个用于处理、存储、打印和传输医学影像信息的标准。它包括文件格式定义和网络通信协议。
Aspose.PDF for PHP 允许您将 DICOM 文件转换为 PDF 格式,请查看下一个代码片段:
- 创建一个新的 Document 对象
- 向文档添加一个新页面
- 将页面的边距设置为 0(如果需要)
- 创建一个新的 Image 对象并设置输入 BMP 文件
- 将 DICOM 文件设置为图像的源文件
- 将图像的文件类型设置为 DICOM
- 将图像添加到页面
- 将文档保存为输出 PDF 文件
// 创建一个新的 Document 对象
$document = new Document();
// 向文档添加一个新页面
$page = $document->getPages()->add();
// 将页面的边距设置为 0
$page->getPageInfo()->getMargin()->setBottom(0);
$page->getPageInfo()->getMargin()->setTop(0);
$page->getPageInfo()->getMargin()->setRight(0);
$page->getPageInfo()->getMargin()->setLeft(0);
// 创建一个新的 Image 对象
$image = new Image();
// 将 DICOM 文件设置为图像的源文件
$image->setFile($inputFile);
// 将图像的文件类型设置为 DICOM
$image->setFileType(ImageFileType::$Dicom);
// 将图像添加到页面
$page->getParagraphs()->add($image);
// 将文档保存为 PDF 文件
$document->save($outputFile);
将EMF转换为PDF
增强型图元文件格式(EMF)以设备无关的方式存储图形图像。EMF的图元文件由按时间顺序排列的可变长度记录组成,可以在任何输出设备上解析后渲染存储的图像。
我们有几种方法可以将EMF转换为PDF。
使用Image类
PDF文档由页面组成,每个页面包含一个或多个段落对象。段落可以是文本、图像、表格、浮动框、图形、标题、表单字段或附件。
要将图像文件转换为PDF格式,请将其封装在段落中。
可以在本地硬盘的物理位置、在网络URL或在Stream实例中转换图像。
要添加图像:
- 创建一个com.aspose.pdf.Image类的对象。
- 将图像添加到页面实例的Paragraphs集合中。
- 指定图像的路径或来源。
- 如果图像位于硬盘上的某个位置,请使用Image.setFile(…)方法指定路径位置。
- 如果图像被放置在FileInputStream中,请将持有图像的对象传递给Image.setImageStream(…)方法。
以下代码片段展示了如何加载图像对象、设置页面边距、将图像放置在页面上并将输出保存为PDF。
$inputFile = "sample.emf";
// 创建一个新的Document对象
$document = new Document();
// 向文档添加一个新页面
$page = $document->getPages()->add();
// 将页面的边距设置为0
$page->getPageInfo()->getMargin()->setBottom(0);
$page->getPageInfo()->getMargin()->setTop(0);
$page->getPageInfo()->getMargin()->setRight(0);
$page->getPageInfo()->getMargin()->setLeft(0);
// 创建一个新的Image对象并设置输入文件
$image = new Image();
$image->setFile($inputFile);
// 将图像添加到页面
$page->getParagraphs()->add($image);
// 将文档保存为PDF文件
$document->save($outputFile);
将 JPG 转换为 PDF
无需再考虑如何将 JPG 转换为 PDF,因为 Apose.PDF for PHP 库提供了最佳方案。
您可以通过以下步骤使用 Aspose.PDF for PHP 非常轻松地将 JPG 图像转换为 PDF:
- 初始化 Document 类的对象
- 向文档添加一个新页面
- 将页面的边距设置为 0
- 创建一个新的 Image 对象并设置输入文件
- 保存输出 PDF
下面的代码片段展示了如何使用 PHP 将 JPG 图像转换为 PDF:
$inputFile = "sample.jpg";
// 创建一个新的 Document 对象
$document = new Document();
// 向文档添加一个新页面
$page = $document->getPages()->add();
// 将页面的边距设置为 0
$page->getPageInfo()->getMargin()->setBottom(0);
$page->getPageInfo()->getMargin()->setTop(0);
$page->getPageInfo()->getMargin()->setRight(0);
$page->getPageInfo()->getMargin()->setLeft(0);
// 创建一个新的 Image 对象并设置输入文件
$image = new Image();
$image->setFile($inputFile);
// 将图像添加到页面
$page->getParagraphs()->add($image);
// 将文档保存为 PDF 文件
$document->save($outputFile);
将PNG转换为PDF
Aspose.PDF for PHP支持将PNG图像转换为PDF格式。查看下一个代码片段以实现您的任务。
PNG指的是一种使用无损压缩的点阵图像文件格式,这使得它在用户中很受欢迎。
您可以使用以下步骤将PNG转换为PDF图像:
- 初始化Document类的对象
- 向文档中添加一个新页面
- 将页面的边距设置为0
- 创建一个新的图像对象并设置输入文件
- 保存输出PDF
此外,下面的代码片段展示了如何在您的PHP应用程序中将PNG转换为PDF:
$inputFile = "sample.png";
// 创建一个新的 Document 对象
$document = new Document();
// 向文档添加一个新页面
$page = $document->getPages()->add();
// 将页面的边距设置为 0
$page->getPageInfo()->getMargin()->setBottom(0);
$page->getPageInfo()->getMargin()->setTop(0);
$page->getPageInfo()->getMargin()->setRight(0);
$page->getPageInfo()->getMargin()->setLeft(0);
// 创建一个新的 Image 对象并设置输入文件
$image = new Image();
$image->setFile($inputFile);
// 将图像添加到页面
$page->getParagraphs()->add($image);
// 将文档保存为 PDF 文件
$document->save($outputFile);
转换SVG到PDF
可缩放矢量图形 (SVG) 是一种基于XML的二维矢量图形文件格式的规范系列,包括静态和动态(交互或动画)图形。SVG规范是一个开放标准,自1999年以来一直由万维网联盟 (W3C) 开发。
SVG图像及其行为在XML文本文件中定义。这意味着它们可以被搜索、索引、编写脚本,如果需要,还可以被压缩。作为XML文件,SVG图像可以用任何文本编辑器创建和编辑,但通常使用如Inkscape这样的绘图程序创建它们更为方便。
如何将SVG文件转换为PDF格式
要将SVG文件转换为PDF,请使用名为SvgLoadOptions的类来初始化LoadOptions对象。 稍后,在Document对象初始化期间,此对象作为参数传递,并帮助PDF渲染引擎确定源文档的输入格式。
以下代码片段显示了将SVG文件转换为PDF格式的过程。
// 创建一个新的SvgLoadOptions对象
$loadOption = new SvgLoadOptions();
// 创建一个新的Document对象并加载SVG文件
$document = new Document($inputFile, $loadOption);
// 将文档保存为PDF文件
$document->save($outputFile);
将TIFF转换为PDF
Aspose.PDF for PHP 文件格式支持,无论是单帧还是多帧 TIFF 图像。这意味着您可以在Java应用程序中将TIFF图像转换为PDF。
TIFF或TIF,标记图像文件格式,代表栅格图像,旨在用于符合此文件格式标准的各种设备。TIFF图像可以包含具有不同图像的多个帧。Aspose.PDF文件格式也支持,无论是单帧还是多帧TIFF图像。因此,您可以在Java应用程序中将TIFF图像转换为PDF。因此,我们将考虑一个将多页TIFF图像转换为多页PDF文档的示例,步骤如下:
- 创建一个新的Document对象
- 向文档添加一个新页面
- 将页面的边距设置为0
- 创建一个新的Image对象
- 设置输入TIFF图像的文件路径
- 将图像添加到页面
- 将文档保存为PDF文件
此外,以下代码片段显示了如何将多页或多帧TIFF图像转换为PDF:
// 创建一个新的 Document 对象
$document = new Document();
// 向文档添加一个新页面
$page = $document->getPages()->add();
// 将页面的边距设置为 0
$page->getPageInfo()->getMargin()->setBottom(0);
$page->getPageInfo()->getMargin()->setTop(0);
$page->getPageInfo()->getMargin()->setRight(0);
$page->getPageInfo()->getMargin()->setLeft(0);
// 创建一个新的 Image 对象
$image = new Image();
// 设置输入 TIFF 图像的文件路径
$image->setFile($inputFile);
// 将图像添加到页面
$page->getParagraphs()->add($image);
// 将文档保存为 PDF 文件
$document->save($outputFile);