package com.poi.poiandroid; import java.io.FileInputStream; import java.io.IOException; import java.util.logging.Level; import java.util.logging.Logger; import net.pbdavey.awt.Graphics2D; import org.apache.poi.hslf.model.Slide; import org.apache.poi.hslf.usermodel.SlideShow; import and.awt.Dimension; import android.app.Activity; import android.graphics.Bitmap; import android.graphics.Bitmap.Config; import android.graphics.Canvas; import android.graphics.Paint; import android.os.Bundle; import android.widget.ImageView; public class SinglePageActivity extends Activity { ImageView mImageView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_single_page); mImageView = (ImageView) findViewById(R.id.image); Logger.getLogger("org.teleal.cling").setLevel(Level.FINEST); try { ppt2png(); } catch (IOException e) { e.printStackTrace(); } } private void ppt2png() throws IOException { FileInputStream is = new FileInputStream("/sdcard/socket.ppt"); SlideShow ppt = new SlideShow(is); is.close(); final Dimension pgsize = ppt.getPageSize(); final Slide[] slide = ppt.getSlides(); int i = 1; String title = slide[i].getTitle(); System.out.println("Rendering slide " + (i + 1) + (title == null ? "" : ": " + title)); System.out.println("pgsize.width: " + pgsize.getWidth() + ", pgsize.height: " + pgsize.getHeight()); 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); mImageView.setImageBitmap(bmp); System.out.println("end"); } }