Cat hungry.png
Здравствуйте! Собираем деньги на перевод материалов по электронике(https://www.allaboutcircuits.com/education/). Реквизиты указаны здесь.

Processing:Справочник языка Processing/loadImage()

Материал из Онлайн справочника
Перейти к: навигация, поиск


Перевод: Максим Кузьмин (Cubewriter)
Перевел 2432 статей для сайта.

Контакты:

Проверка/Оформление/Редактирование: Мякишев Е.А.


Ambox content.png Черновик


loadImage() [1]

Обозначение

loadImage()

Описание

Загружает изображение в объект типа PImage. Можно загружать изображения четырех форматов – *.gif, *.jpg, *.tga или *.png. Чтобы изображение загрузилось корректно, оно должно находиться в папке «data» текущего скетча.

В большинстве случаев все изображения загружаются в блоке setup(), чтобы перед стартом программы они уже были загружены. Если загружать изображения в блоке draw(), это снизит производительность (скорость работы) программы. Вне setup() изображения загружать нельзя – разве что только внутри функции, вызванной после блока setup().

Кроме того, файл можно загрузить из любого места на локальном компьютере – при помощи абсолютного пути (в системах Linux и Unix он начинается с «/», а в Windows – с буквы диска). Также можно загрузить файл из интернета – в этом случае в filename нужно указать URL этого файла.

Если файла нет или появляется ошибка, метод вернет значение null, а в консоли будет напечатано сообщение об ошибке. Оно не остановит программу, однако, если метод вернет значение null, а в вашем коде нет проверки на возвращение null, это может вызвать исключение NullPointerException.

Параметр extension используется, чтобы определить тип изображения в случаях, когда у названия изображения нет корректного расширения. То, как указывать второй параметр в методе loadImage(), показано в третьем примере ниже. Обратите внимание, что CMYK-изображения не поддерживаются.

Если вам выдало какую-то ошибку, то loadImage() все же может вернуть объект PImage (это зависит от типа ошибки), однако ширина и высота изображения будут иметь значение «-1». Это происходит, когда метод возвращает плохие данные или если изображение не может быть корректно декодировано. Иногда так происходит с URL изображений, которые выдают ошибку 403 или перенаправляют к меню для указания пароля, потому что loadImage() пытается интерпретировать HTML-код, как графические данные.

Синтаксис

loadImage(filename)
loadImage(filename, extension)

Параметры

filename  – название файла, который нужно загрузить. Он может иметь формат *.gif, *.jpg, *.tga или др. (зависит от вашей платформы). Тип данных – String
extension – тип загружаемого изображения (например, png, gif или jpg). Тип данных – String

Возвращаемое значение

Тип данных – объект PImage

Пример

№1

Processing loadImage 0.png


  1. PImage img;
  2. img = loadImage("laDefense.jpg");
  3. image(img, 0, 0);

№2

Processing loadImage 1.png


  1. PImage img;
  2.  
  3. void setup() {
  4.   img = loadImage("laDefense.jpg");
  5. }
  6.  
  7. void draw() {
  8.   image(img, 0, 0);
  9. }

№3

Processing loadImage 2.png


  1. PImage webImg;
  2.  
  3. void setup() {
  4.   String url = "https://processing.org/img/processing-web.png";
  5.   // загружаем изображение с веб-сервера:
  6.   webImg = loadImage(url, "png");
  7. }
  8.  
  9. void draw() {
  10.   background(0);
  11.   image(webImg, 0, 0);
  12. }

См.также

Внешние ссылки

  1. processing.org - loadImage()