本文整理汇总了Java中javax.imageio.plugins.bmp.BMPImageWriteParam.setCompressionMode方法的典型用法代码示例。如果您正苦于以下问题:Java BMPImageWriteParam.setCompressionMode方法的具体用法?Java BMPImageWriteParam.setCompressionMode怎么用?Java BMPImageWriteParam.setCompressionMode使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类javax.imageio.plugins.bmp.BMPImageWriteParam
的用法示例。
在下文中一共展示了BMPImageWriteParam.setCompressionMode方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: writeWithCompression
import javax.imageio.plugins.bmp.BMPImageWriteParam; //导入方法依赖的package包/类
private static void writeWithCompression(BufferedImage src,
String compression) throws IOException
{
System.out.println("Compression: " + compression);
ImageWriter writer = ImageIO.getImageWritersByFormatName("BMP").next();
if (writer == null) {
throw new RuntimeException("Test failed: no bmp writer available");
}
File fout = File.createTempFile(compression + "_", ".bmp",
new File("."));
ImageOutputStream ios = ImageIO.createImageOutputStream(fout);
writer.setOutput(ios);
BMPImageWriteParam param = (BMPImageWriteParam)
writer.getDefaultWriteParam();
param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);
param.setCompressionType(compression);
param.setTopDown(true);
writer.write(null, new IIOImage(src, null, null), param);
writer.dispose();
ios.flush();
ios.close();
BufferedImage dst = ImageIO.read(fout);
verify(dst);
}
示例2: createTestSet
import javax.imageio.plugins.bmp.BMPImageWriteParam; //导入方法依赖的package包/类
public static Iterator createTestSet(ImageWriter w) {
List l = new LinkedList();
Test.iw = w;
// variate compression types
BMPImageWriteParam param = (BMPImageWriteParam)iw.getDefaultWriteParam();
param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);
param.setCompressionType("BI_RGB");
if (param.canWriteCompressed()) {
String[] cTypes = param.getCompressionTypes();
String[] cDescr = param.getCompressionQualityDescriptions();
float[] cValues = param.getCompressionQualityValues();
if (cDescr == null) {
System.out.println("There are no compression quality description!");
} else {
for(int i=0; i<cDescr.length; i++) {
System.out.println("Quality[" + i + "]=\""+cDescr[i]+"\"");
}
}
if (cValues == null) {
System.out.println("There are no compression quality values!");
} else {
for(int i=0; i<cValues.length; i++) {
System.out.println("Value["+i+"]=\""+cValues[i]+"\"");
}
}
for(int i=0; i<cTypes.length; i++) {
String compressionType = cTypes[i];
BufferedImage img = null;
int type = BufferedImage.TYPE_INT_BGR;
try {
img = createTestImage(type);
if (compressionType.equals("BI_RLE8")) {
img = createTestImage2(8, DataBuffer.TYPE_BYTE);
} else if (compressionType.equals("BI_RLE4")) {
img = createTestImage3(4, DataBuffer.TYPE_BYTE);
} else if (compressionType.equals("BI_BITFIELDS")) {
img = createTestImage4(32);
}
} catch (IOException ex) {
throw new RuntimeException("Unable to create test image");
}
BMPImageWriteParam p = (BMPImageWriteParam)iw.getDefaultWriteParam();
System.out.println("Current compression type is \""+cTypes[i]+"\"");
p.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);
p.setCompressionType(compressionType);
IIOMetadata md = iw.getDefaultImageMetadata(new ImageTypeSpecifier(img), p);
l.add( new Test(p, md, img));
}
}
// }
return l.iterator();
}