ImageIO сохраняет обратно в исходный размер
я искал некоторые решения из интернета, но я до сих порне нашел ответа на мою проблему.
Вы работали или делаете программу, которая получит файл изображения с моего компьютера, а затем отредактирует с помощьюJava Graphics
добавить текст / объект / и т. д. После этого,Java ImageIO
сохранит вновь измененное изображение.
До сих пор мне удавалось делать это красиво, но у меня возникла проблема с размером изображения. Исходное изображение и измененное изображение не сделалиимеют одинаковый размер.
Оригинал2x3
Изображение дюйма, в то время как модифицированный, который предположительно имеет 2x3 дюйма, слишком печально получил8x14
дюймов. Итак, он стал БОЛЬШЕ, чем оригинал.
Какое решение / код дал бы мне вывод 2x3inches-image, который все еще будет иметь 'хорошее качество?
ОБНОВИТЬ:
Так вот'S код, который я использовал.
public Picture(String filename) {
try {
File file = new File("originalpic.jpg");
image = ImageIO.read(file);
width = image.getWidth();
}
catch (IOException e) {
throw new RuntimeException("Could not open file: " + filename);
}
}
private void write(int id) {
try {
ImageIO.write(image, "jpg", new File("newpic.jpg"));
} catch (IOException e) {
e.printStackTrace();
}
}
2-е ОБНОВЛЕНИЕ:
Теперь я знаю чтоС проблемой нового имиджа. Как я проверяю в Photoshop, разрешение изображения отличается от исходного. Оригинал имеет 300 пикселей / дюйм, в то время как новое изображение имеет разрешение 72 пикселей / дюйм.
Как я смогу изменить разрешение с помощью Java?