Я использую класс PixelGrabber
, чтобы получить массив пикселов двузначного битового массива. Но возникает одна проблема: двухзначное изображение (белое или черное), я сохранил эти пиксели растрового изображения в массиве int, эти элементы массива не должны быть 1 (белый) или 0 (черный), но в моем код Я считаю, что белый -1, а черный - -16777216. Кто-нибудь знает, почему?двухзначное растровое изображение, белый - 1, черный - 0 в java?
Теперь я хотел бы просто использовать for
цикл, чтобы изменить -1 и -16777216 до 1 и 0.
привет, отлично, я знаю это сейчас. Спасибо. Я действительно использовал constuctor PixelGrabber (ImageProducer ip, int x, int y, int w, int h, int [] pix, int off, int scansize) .and I знаю, где я был не прав. Я думал, что массив int хранит индекс палитры RGB в растровом формате, хорошо, это неправильно, int array хранит данные RGB напрямую, даже если изображение является двузначным изображением, если я получаю пиксели через класс PixelGrabber .oh, поэтому, если я использую Class Image, чтобы получить изображение, нет mater, в каком формате он будет, это будет «объект изображения java», нет mater, удерживающего нижний формат изображения - файловую, информационную, палитру RGB, данные изображения? – cooba