`
voicy
  • 浏览: 3219 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

使用poi处理ppt 转为图片乱码问题解决

阅读更多
public int test(String source) {
		FileInputStream is;
		try {
			is = new FileInputStream(source);
			SlideShow ppt = new SlideShow(is);
			is.close();
			Slide[] slides = ppt.getSlides();
			for (int i = 0; i < slides.length; i++) {
				TextRun[] truns = slides[i].getTextRuns();
				for ( int k=0;k<truns.length;k++){
					RichTextRun[] rtruns = truns[k].getRichTextRuns();
					for(int l=0;l<rtruns.length;l++){
						int index = rtruns[l].getFontIndex();
						String name = rtruns[l].getFontName();			
						rtruns[l].setFontIndex(1);
						rtruns[l].setFontName("宋体");					
					}
				}
				Dimension pgsize = ppt.getPageSize();
				BufferedImage img = new BufferedImage(pgsize.width,
						pgsize.height, BufferedImage.TYPE_INT_RGB);
				Graphics2D graphics = img.createGraphics();
				// clear the drawing area
				graphics.setPaint(Color.white);
				graphics.fill(new Rectangle2D.Float(0, 0, pgsize.width,
						pgsize.height));

				// render
				slides[i].draw(graphics);

				// save the output
				FileOutputStream out = new FileOutputStream(
						"e:\\pic\\test\\slide-" + (i + 1) + ".png");
				javax.imageio.ImageIO.write(img, "png", out);
				out.close();
			}

		} catch (Exception e) {
			e.printStackTrace();
		}
		return 0;
	}

其实就是字符问题,中文字符和西洋字符不能混用。这里把文本都改成了中文字符。
0
0
分享到:
评论

相关推荐

    java用poi转ppt为图片和用pdfbox转pdf为图片的demo

    在"java用poi转ppt为图片"的场景下,我们可以利用POI的API将PPT文件的每一页转换为图像。这样做的好处在于,可以方便地在网络上传输或嵌入到其他不支持PPT格式的应用中。转换过程通常涉及打开PPT文件,遍历每一页...

    通过POI将PPT插入图片并导出实例

    Apache POI是一个强大的Java库,专门用于处理Microsoft Office格式的文件,如Word(.docx)、Excel(.xlsx)和PowerPoint(.pptx)。在这个实例中,我们将深入探讨如何利用POI库来创建一个PowerPoint演示文稿,并在...

    使用poi操作PPT

    本资源《初始版本》是精简版,《PPT模板生成PPT》是实际项目中的例子,具体就是使用poi去操作PPT,替换PPT中特定的文本,用${key}这种标识在PPT中存放,java代码使用value去替换PPT中的${key},从而生成新的PPT供大家...

    POI操作PPT文档(导入,导出,读取,添加,拼接,替换文本,页面排序)

    本文档将介绍如何使用POI操作PPT文档,包括导入、导出、读取、添加、拼接、替换文本、页面排序等操作。 一、POI操作PPT文档的准备工作 在开始操作PPT文档之前,需要下载并安装Apache POI软件包。可以访问Apache ...

    利用java poi操作ppt

    使用`XSLFPictureShape`类,将图片数据转换为`byte[]`,然后创建图片形状。例如: ```java byte[] imageData = ...; // 读取图片的字节数组 XSLFPictureData pictureData = ppt.getSlideShow().addPicture...

    POI将文件转为html

    在IT行业中,尤其是在数据处理和文档管理领域,Apache POI是一个非常重要的库,它允许开发者使用Java处理Microsoft Office格式的文件,如Excel、Word和PowerPoint。本篇将详细讲解如何利用Apache POI将不同类型的...

    poi操作ppt完整示例程序

    5. **保存文件**: 最后,使用`XSLFSlideShow.write()`方法将幻灯片保存为PPT文件。记得关闭`XSLFSlideShow`以释放资源。 除了上述基本操作,POI还支持更高级的功能,如添加动画、转换幻灯片、合并PPT文件等。对于...

    使用POI读写PowerPoint文件(兼容ppt与pptx版本)

    本篇将详细介绍如何使用Apache POI来处理这两种不同版本的PowerPoint文件。 首先,让我们了解一下Apache POI的基本概念。POI提供了HSLF(Horrible Slide Library Format)组件来处理老版的.ppt文件,而XSLF(XML ...

    使用POI将office(doc/docx/ppt/pptx/xls/xlsx)文件转html格式

    在本场景中,我们将讨论如何使用POI将Office文档转换为HTML格式,这对于在网络上展示内容或进行数据迁移非常有用。 一、Apache POI 概述 Apache POI 是由Apache软件基金会开发的一个项目,其主要目标是支持...

    poi操作ppt生成图表完整工程.zip

    Apache POI 是一个开源项目,专门用于处理微软的Office文档格式,如Word(.doc, .docx)、Excel(.xls, .xlsx)以及PowerPoint(.ppt, .pptx)。在本“poi操作ppt生成图表完整工程”中,我们将会深入探讨如何使用...

    java实现poi模板生成PPT文件代码

    总结来说,使用Java和Apache POI生成PPT文件涉及理解PPT文件结构、掌握POI API、创建模板、数据绑定和错误处理等多个步骤。在给定的代码中,可能有两个不同的迭代实现,分别对应两种不同的处理方式或优化策略。通过...

    poi操作ppt图表.zip

    Apache POI是一个开源项目,专为处理Microsoft Office格式的文件而设计,包括Word(.doc/.docx)、Excel(.xls/.xlsx)和PowerPoint(.ppt/.pptx)。在这个"poi操作ppt图表.zip"的压缩包中,我们很显然会涉及到如何...

    poi操作ppt图表史上最完整示例演示.zip

    Apache POI 是一个开源项目,专门用于处理微软的Office文档格式,如Word(.doc/.docx)、Excel(.xls/.xlsx)以及PowerPoint(.ppt/.pptx)。在这个"poi操作ppt图表史上最完整示例演示.zip"压缩包中,我们主要关注的...

    使用poi(3.17)操作ppt中饼状图

    - POI提供了HSLF(Horrible Slide Library for Formula)和XSLF(XML Slide Library for Formula)两个API,分别用于处理老版的*.ppt*和新版的*.pptx*文件。 - 在这个例子中,由于我们使用的是*pptx*格式,所以...

    Java使用Poi导出PPT幻灯片java-poi

    Java使用Poi导出PPT幻灯片的实践涉及Apache POI库的使用,该库是一个开源的Java库,用于处理Microsoft Office格式的文件。在本例中,我们主要关注如何利用Apache POI中的相关类和方法来导出PPT幻灯片。具体来说,...

    poi-ppt.zip_POI_Poi-ppt_poi ImageExtractor_poi源码包

    3. **图片格式转换**: POI不仅能够提取图片,还能将其转换为常见的图像格式,如JPEG、PNG等。这通过调用`PictureData`对象的`getData()`方法,将原始的OLE2或EMF格式转换为可识别的图像格式。 4. **处理幻灯片中的...

    应用Apache POI系统库实现PPT直接转图片的程序

    应用Apache POI系统库实现PPT直接转图片的程序,其中的lib目录内的各个Jar包文件为所需要的系统库文件,ConvertPPTFileToImage.java为转换的功能程序类,TestConvertPPTFileToImage.java为测试用的相关程序。

    Android_POI_TO_PPT

    "Android_POI_TO_PPT"这个项目正是关注于如何在Android平台上利用Apache POI库将PPT文件转换为图片进行显示。Apache POI是Java的一个库,主要用于读写Microsoft Office格式的文件,包括Word、Excel和PowerPoint等。 ...

    POI替换文本和图片,解决分割异常替换不完全的问题

    在这个场景中,我们关注的是如何使用POI中的`XWPFDocument`类来有效地替换文本和图片,并解决在分割或替换过程中可能出现的异常,以及保持原有的文档样式不变。 首先,让我们深入了解`XWPFDocument`类。它是Apache ...

    使用poi替换word中的图片

    在IT领域,Apache POI是一个广泛使用的开源库,主要用于处理Microsoft Office格式的文件,如Word(.doc/.docx)、Excel(.xls/.xlsx)和PowerPoint(.ppt/.pptx)。本篇将深入探讨如何使用Apache POI库来替换Word...

Global site tag (gtag.js) - Google Analytics