itext - 如何在 Java 中将 PowerPoint (.ppt) 转换为 PDF
问题描述
只有最后一张幻灯片正在转换意味着最后一张幻灯片与每张幻灯片重叠。任何人都可以建议如何将它组合到一个 PDF 中吗?
我尝试过不同的方法,但他们首先创建图像,然后创建 PDF。
FileInputStream inputStream = new FileInputStream(in);
SlideShow ppt = new SlideShow(inputStream);
inputStream.close();
Dimension pgsize = ppt.getPageSize();
Document document = new Document();
PdfWriter pdfWriter = PdfWriter.getInstance(document, new FileOutputStream(out));
document.setPageSize(new Rectangle(
(float)pgsize.getWidth(), (float)pgsize.getHeight()));
document.open();
PdfGraphics2D graphics= null;
for (int i = 0; i < ppt.getSlides().length; i++) {
Slide slide = ppt.getSlides()[i];
graphics = (PdfGraphics2D) pdfWriter.getDirectContent()
.createGraphics((float)pgsize.getWidth(), (float)pgsize.getHeight());
slide.draw(graphics);
}
graphics.dispose();
document.close();
解决方案
推荐阅读
- android - 前台服务会在打瞌睡模式的非唤醒时间工作吗
- jquery - 在haml中添加内联jquery时出现referenceerror
- c# - 下载后解压 zip 文件时,出现异常,提示该文件正在被另一个进程使用
- php - 在 PHP 中找不到类 ParseClient
- javascript - 如何在另一个对象数组中初始化一个对象数组?
- python - 通过视图提交表单时获取“NOT NULL 约束”。通过 /admin 添加时工作正常
- c# - 为什么这个功能和一个完全相同的格式不起作用是有原因的吗?
- google-sheets - 在 Google 表格中错开重复日期?
- oracle - 我刚刚在 plsql 中创建了这个触发器
- cordova - 离子科尔多瓦资源--splash和--icon错误