В чем разница между этими двумя видами кода загрузки изображений?

1

Эти два вида кода ниже используются для загрузки файла изображения:

A)

File sourceimage = new File("filename");
Image image = ImageIO.read(sourceimage);

B)

Toolkit tk = Toolkit.getDeafaultToolkit();
img=tk.getImage("filename");

Какая реальная разница между этими двумя кодами?

  • 0
    разные средства для достижения той же цели, я полагаю,
  • 0
    Дубликат stackoverflow.com/questions/14136475/…
Теги:
image

2 ответа

0

ImageIO.read(File) принимает File и является новее, чем Toolkit.getImage(String) который принимает filename (и был частью языка более длинным). Кроме того, первый из них обеспечивает дополнительную функциональность (то есть, например, ImageIO.read(File) javadoc для ImageIO.read(File))

Текущие настройки кеша из getUseCache и getCacheDirectory будут использоваться для управления кэшированием в ImageInputStream.

Обратите внимание, что нет метода чтения, который принимает имя файла как String; используйте этот метод вместо создания File из имени файла.

0

Возможно, основное различие между ними заключается в том, что Toolkit.getImage возвращает java.awt.Image, а ImageIO.read возвращает java.awt.image.BufferedImage (который является подклассом java.awt.Image).

Объект Image представляет собой довольно абстрактное представление изображения, которое вы не можете сделать очень сильно, помимо прохода к различным методам Graphics.drawImage, в то время как BufferedImage содержит полные данные изображения, чтобы вы могли проверять отдельные пиксели, изменять их, а также, например, сохранить изображение (в новый файл и/или новый формат файла).

Ещё вопросы

Сообщество Overcoder
Наверх
Меню