java 9 多分辨率图像 api
java 9 定义多分辨率图像 api,开发者可以很容易的操作和展示不同分辨率的图像了。
以下是多分辨率图像的主要操作方法:
image getresolutionvariant(double destimagewidth, double destimageheight) − 获取特定分辨率的图像变体-表示一张已知分辨率单位为dpi的特定尺寸大小的逻辑图像,并且这张图像是最佳的变体。。
list<image> getresolutionvariants() − 返回可读的分辨率的图像变体列表。
实例
import java.io.ioexception;import java.net.url;import java.net.malformedurlexception;import java.util.arraylist;import java.util.list;import java.awt.image;import java.awt.image.multiresolutionimage;import java.awt.image.basemultiresolutionimage;
import javax.imageio.imageio;
public class tester { public static void main(string[] args) throws ioexception, malformedurlexception {
list<string> imgurls = list.of("http://www.runoob.com/wp-content/themes/runoob/assets/img/runoob-logo@2x.png",
"http://www.runoob.com/wp-content/themes/runoob/assets/img/runoob-logo.png",
"http://www.runoob.com/wp-content/themes/runoob/assets/images/qrcode.png");
list<image> images = new arraylist<image>();
for (string url : imgurls) { images.add(imageio.read(new url(url)));
}
// 读取所有图片 multiresolutionimage multiresolutionimage =
new basemultiresolutionimage(images.toarray(new image[0]));
// 获取图片的所有分辨率 list<image> variants = multiresolutionimage.getresolutionvariants();
system.out.println("total number of images: " + variants.size());
for (image img : variants) { system.out.println(img);
}
// 根据不同尺寸获取对应的图像分辨率 image variant1 = multiresolutionimage.getresolutionvariant(156, 45);
system.out.printf("nimage for destination[%d,%d]: [%d,%d]",
156, 45, variant1.getwidth(null), variant1.getheight(null));
image variant2 = multiresolutionimage.getresolutionvariant(311, 89);
system.out.printf("nimage for destination[%d,%d]: [%d,%d]", 311, 89,
variant2.getwidth(null), variant2.getheight(null));
image variant3 = multiresolutionimage.getresolutionvariant(622, 178);
system.out.printf("nimage for destination[%d,%d]: [%d,%d]", 622, 178,
variant3.getwidth(null), variant3.getheight(null));
image variant4 = multiresolutionimage.getresolutionvariant(300, 300);
system.out.printf("nimage for destination[%d,%d]: [%d,%d]", 300, 300,
variant4.getwidth(null), variant4.getheight(null));
} }
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!