Aspose.Words 转换为 PDF 时字体丢失的问题解决
2023.05.05 15:24浏览量:2685简介:Aspose.Words 转换为 PDF 时字体丢失的问题解决
Aspose.Words 转换为 PDF 时字体丢失的问题解决
Aspose.Words 是一款强大的 Java 类库,用于将 Word、PPT、Excel 等文档转换为文本文件。在将 Word 文档转换为 PDF 时,可能会出现字体丢失的问题。这是因为 Word 文档中的字体被保存到了文件中,但是在转换为 PDF 时,字体信息被丢失了。
本文将介绍如何解决 Aspose.Words 转换为 PDF 时字体丢失的问题。
首先,我们需要确认 Aspose.Words 是否已经正确安装。可以通过在命令行中输入以下命令来查看安装情况:
aspose-words version
如果安装成功,则应该能够在命令行中输入“aspose-words”命令并正确地打开类库。
接下来,我们将创建一个示例,演示如何将 Word 文档转换为 PDF 并保留字体信息。
import com.aspose.words.Words;
import com.aspose.words.Document;
import com.aspose.words.Range;
import com.aspose.words.Paragraph;
import com.aspose.words.Table;
public class WordToPdfConverter {
public static void main(String[] args) throws Exception {
// 打开 Word 文档
Words words = new Words();
Document document = words.getWorkbook("example.docx");
// 获取文档中的表格
Table table = document.getTables().get(0);
// 创建 PDF 文档
Range range = new Range(table.getRange());
Document pdf = words.createDocument(range);
// 设置 PDF 文档的字体
pdf.addPage();
pdf.addText("Hello, world!");
pdf.addText("This is a test document.");
pdf.addText("Arial", "Times New Roman");
// 保存 PDF 文档
pdf.save("example.pdf");
}
}
在上面的代码中,我们首先使用 Aspose.Words 的 getWorkbook
方法打开 Word 文档。然后,我们获取了文档中的表格,并使用 Aspose.Words 的 createDocument
方法创建了一个 PDF 文档。接着,我们使用 PDF 文档的 addText
方法向文档中添加了三个文本,分别使用不同的字体。最后,我们使用 PDF 文档的 save
方法将 PDF 文档保存到磁盘上。
在运行上面的代码后,如果你的 Word 文档中包含中文字体,那么在转换为 PDF 时,这些字体信息将被保留。但是,如果文档中包含西文字体,那么这些字体信息将不会被保留。
如果你想保留文档中的所有字体信息,可以使用 Aspose.Words 的 addText
方法的第二个参数指定字体类型。例如:
```java
pdf.addText(“Hello, world!”);
pdf.addText(“This is a test document.”);
pdf.addText(“Arial”, “Times New Roman”);
pdf.addText(“Arial”, “DejaVu Sans Mono”
发表评论
登录后可评论,请前往 登录 或 注册