代号一 - 从大图像创建小图像(并存储它)
Codename One - create small image from big image (and store it)
我有一个 GUI 构建的应用程序,用于管理客户的配置文件。创建新配置文件时,会拍摄一张照片。路径(字符串)与其他信息一起保存在哈希表中。
当它显示所有客户的列表时,每个客户信息都设置在一个Multibutton 中,每个按钮包含一张客户的小图片。那个图片是每次加载表单时设置的蒙版图片,导致加载很慢(当我没有小图片时,加载速度更快)。
问题
我想在拍摄并保存客户的照片后立即保存蒙版小图片。因此,当我显示客户列表时,我只需获取小图像,而不必对所有项目进行遮罩。这可能吗?
我正在尝试这个:(我的目标是有一个工作 "smallPhotoPath")
String bigPhotoPath = Capture.capturePhoto(width, -1);
Image bigPhoto = Image.createImage(bigPhotoPath);
...
//masking image
...
bigPhoto = bigPhoto.applyMask(mask);
String smallPhotoPath = bigPhotoPath+"Small";
Image smallPhoto = bigPhoto.scaled(bigPhoto.getWidth()/8, -1);
java.io.OutputStream os = Storage.getInstance().createOutputStream(smallPhotoPath);
ImageIO.getImageIO().save(smallPhoto, os, ImageIO.FORMAT_PNG, 1);
os.close();
经过多次试验,我解决了这个问题。我更改了以下行:
java.io.OutputStream os = Storage.getInstance().createOutputStream(smallPhotoPath);
对于这个:
OutputStream os = FileSystemStorage.getInstance().openOutputStream(smallPhotoPath);
现在可以正常使用了:)
我有一个 GUI 构建的应用程序,用于管理客户的配置文件。创建新配置文件时,会拍摄一张照片。路径(字符串)与其他信息一起保存在哈希表中。
当它显示所有客户的列表时,每个客户信息都设置在一个Multibutton 中,每个按钮包含一张客户的小图片。那个图片是每次加载表单时设置的蒙版图片,导致加载很慢(当我没有小图片时,加载速度更快)。
问题
我想在拍摄并保存客户的照片后立即保存蒙版小图片。因此,当我显示客户列表时,我只需获取小图像,而不必对所有项目进行遮罩。这可能吗?
我正在尝试这个:(我的目标是有一个工作 "smallPhotoPath")
String bigPhotoPath = Capture.capturePhoto(width, -1);
Image bigPhoto = Image.createImage(bigPhotoPath);
...
//masking image
...
bigPhoto = bigPhoto.applyMask(mask);
String smallPhotoPath = bigPhotoPath+"Small";
Image smallPhoto = bigPhoto.scaled(bigPhoto.getWidth()/8, -1);
java.io.OutputStream os = Storage.getInstance().createOutputStream(smallPhotoPath);
ImageIO.getImageIO().save(smallPhoto, os, ImageIO.FORMAT_PNG, 1);
os.close();
经过多次试验,我解决了这个问题。我更改了以下行:
java.io.OutputStream os = Storage.getInstance().createOutputStream(smallPhotoPath);
对于这个:
OutputStream os = FileSystemStorage.getInstance().openOutputStream(smallPhotoPath);
现在可以正常使用了:)