a sniplet from the article "Taking Pictures with MMAPI"
http://developers.sun.com/techtopics/mobility/midp/articles/picture/
创建缩略图
MIDP2.0中可以对图片中的像素进行操作,在MIDP1.0中则不然。本例用Graphics.setClip()实现每一次对一个像素进行绘制。
private Image createThumbnail(Image image) { int sourceWidth = image.getWidth(); int sourceHeight = image.getHeight();
int thumbWidth = 64; int thumbHeight = -1;
if (thumbHeight == -1) thumbHeight = thumbWidth * sourceHeight / sourceWidth;
Image thumb = Image.createImage(thumbWidth, thumbHeight); Graphics g = thumb.getGraphics();
for (int y = 0; y < thumbHeight; y++) { for (int x = 0; x < thumbWidth; x++) { g.setClip(x, y, 1, 1); int dx = x * sourceWidth / thumbWidth; int dy = y * sourceHeight / thumbHeight; g.drawImage(image, x - dx, y - dy, Graphics.LEFT | Graphics.TOP); } }
Image immutableThumb = Image.createImage(thumb);
return immutableThumb; } |