在Android中将PPT文件转换为Image

时间:2013-07-09 01:10:32

标签: android apache-poi powerpoint

我想将ppt文件转换为某种图像格式,因此我可以在Android Activity界面中对其进行操作。正如本问题PPT to PNG conversion with Apache POI中所建议的那样,Apache POI库为Java做到了这一点。 我尝试在Android上使用它,但是按照上面链接的代码,它依赖于java.awt包中的类,从我搜索的内容中无法移植到Android(How to add java.awt.image package in Android)。

如果有某种方法在Android上使用POI,有人可以确认吗?或者也许是另一种在Android上实现同样功能的替代方案?

1 个答案:

答案 0 :(得分:-1)

使用Apache POI库并在要转换的方法中编写此代码

    FileInputStream is = new FileInputStream("PPT file");
    SlideShow ppt = new SlideShow(is);
    is.close();
    final Dimension pgsize = ppt.getPageSize();
    final Slide[] slide = ppt.getSlides();
    int i = 1;// Slide number
    String title = slide[i].getTitle();
    Bitmap bmp = Bitmap.createBitmap((int) pgsize.getWidth(),
            (int) pgsize.getHeight(), Config.RGB_565);
    Canvas canvas = new Canvas(bmp);
    Paint paint = new Paint();
    paint.setColor(android.graphics.Color.WHITE);
    paint.setFlags(Paint.ANTI_ALIAS_FLAG);
    canvas.drawPaint(paint);
    Graphics2D graphics2d = new Graphics2D(canvas);
    // render
    slide[i].draw(graphics2d);
    bmp.compress(CompressFormat.JPEG, 80, new FileOutputStream("Path to your file"));