Класс Java BufferedImage имеет длинный список переменных класса, известный как тип изображения, который может использоваться в качестве аргумента для конструктора BufferedImage.Как решить, какой тип изображения BufferedImage использовать?
Однако документы Java дали минимальное объяснение, для чего используются эти типы изображений, и как это повлияет на создаваемый BufferedImage.
Мой вопрос:
Как тип изображения влияет на BufferedImage будет создан? Контролирует ли оно количество бит, используемых для хранения различных цветов (красный, зеленый, синий) и прозрачность?
Какой тип изображения следует использовать, если мы просто хотим, чтобы создать
- непрозрачного изображение
- прозрачное изображение
- полупрозрачное изображение
Я прочитал описание в Java Doc много раз, но просто не мог понять, как мы должны его использовать. Например, этот:
TYPE_INT_BGR
Представляет изображение с 8-битными RGB цветовых компонентов, что соответствует Windows- или Solaris- стиле BGR цветовой модели, с цветами синий, зеленый, и Красный упакован в целые пиксели. Альфа нет. Изображение имеет DirectColorModel. Когда данные с непрозрачной альфа-памятью хранятся в изображении этого типа, данные цвета должны быть скорректированы на непремутированную форму и альфа-версию, как описано в документации AlphaComposite.
Что такое полупрозрачное изображение? Как это отличается от прозрачного изображения? –
@AndyTurner Я помню, что я где-то читал о том, чтобы сделать части изображения прозрачными, а полупрозрачные - на настройке непрозрачности всего изображения. Например, gif-файл обеспечивает прозрачность, но не прозрачность, в то время как файлы png поддерживают оба. Это пример, когда нужно использовать другой тип изображения. Нет? – user3437460