使用UrlImage会导致质量不佳的缩放图像

时间:2017-08-28 13:31:42

标签: java codenameone

我正在尝试使用代号名称创建一个应用程序,该代码使用RESTful Web服务下载要显示的详细信息,包括图像网址。

我认为我需要的是ScaleImageButton,其目的是要有一个要点击的项目列表以显示更多信息(所以有几个ScaleImageButtons)。

我目前用于创建按钮的代码如下:

java.util.List<String> splitImage = tokenize(url, '/');
EncodedImage placeholder = FontImage.createMaterial(FontImage.MATERIAL_SAVE, btnStyle.getUnselectedStyle()).toEncodedImage();
URLImage image = URLImage.createToStorage(placeholder, splitImage.get(splitImage.size() - 1), url, URLImage.RESIZE_SCALE_TO_FILL);
ScaleImageButton btn = new ScaleImageButton(image);
btn.setBackgroundType(Style.BACKGROUND_IMAGE_SCALED_FILL);

此按钮的背景图像质量非常差(每像素几毫米),即使图像显示在较大的浏览器窗口中。

如何让图像填满背景,同时保持其质量?

提前致谢。

enter image description here

1 个答案:

答案 0 :(得分:1)

您正在做的是下载与placeholder一样大小的图片,并将其应用到ScaleImageButton进行扩展,而不是下载正确尺寸的图片。

在使用它来下载实际图像之前,请确保占位符图像的大小合适。

例如:

//half the size of device width image
EncodedImage placeholder = FontImage.createMaterial(FontImage.MATERIAL_SAVE, btnStyle.getUnselectedStyle(), CN.getDisplayWidth() / 2).toEncodedImage();