Я использую апплет для сохранения изображения из буфера обмена. Изображение сохранено, но что-то случилось с его форматом. Это темные и потерянные цвета.
вот как я это делаю:
AccessController.doPrivileged(new PrivilegedAction() {
public Object run() {
try {
//create clipboard object
Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
//Get data from clipboard and assign it to an image.
//clipboard.getData() returns an object, so we need to cast it to a BufferdImage.
BufferedImage image = (BufferedImage) clipboard.getData(DataFlavor.imageFlavor);
//file that we'll save to disk.
File file = new File("/tmp/clipboard.jpg");
//class to write image to disk. You specify the image to be saved, its type,
// and then the file in which to write the image data.
ImageIO.write(image, "jpg", file);
//getData throws this.
} catch (UnsupportedFlavorException ufe) {
ufe.printStackTrace();
return "Não tem imagem na área de transferência";
} catch (Exception ioe){
ioe.printStackTrace();
}
return null;
}
}
);
Я прочитал, что Mac использует другой формат изображения, но я не нашел, как преобразовать его в формат, который я мог бы сохранить. Я подумал, что Ява должен был позаботиться об этом.
Итак, как мне конвертировать изображение из буфера обмена в jpg?
PS. Я попытался использовать PNG вместо JPG, получил худший результат: черное изображение