Loading...
середа, 8 травня 2013 р.

Picture to Excel - part 2

Трохи допиляв попередній варіант перетворювальника картинок у таблиці екселя. Тепер він може обробляти навіть великі зображення (наприклад можна отримати таку картинку), а все завдяки зменшенню глибини кольору.
Як зменшити глибину кольору зображення у Java? Я нагуглив такий варіант:
public static BufferedImage convert8(BufferedImage src) {
BufferedImage dest = new BufferedImage(src.getWidth(), src.getHeight(),
BufferedImage.TYPE_BYTE_INDEXED);
  ColorConvertOp cco = new ColorConvertOp(src.getColorModel().getColorSpace(),
dest.getColorModel().getColorSpace(), null);
cco.filter(src, dest);
return dest;
}


До купи ще й ресайз зображення:
private static BufferedImage resizeImage(BufferedImage originalImage, int type) {
BufferedImage resizedImage = new BufferedImage(IMG_WIDTH, IMG_HEIGHT, type);
Graphics2D g = resizedImage.createGraphics();
g.drawImage(originalImage, 0, 0, IMG_WIDTH, IMG_HEIGHT, null);
g.dispose();

return resizedImage;
}

0 коментарі:

 
TOP