![]() |
|
#1
|
|||
|
|||
![]() Всем здравствуйте. Сохраняю разные файлы в формат bmp, а затем из bmp вывожу матрицу цветов пикселей. И вот на одном из jpg изображений при попытке получить матрицу (процедура TForm1.Button2Click) выходит сообщение с ошибкой:
--------------------------- Debugger Exception Notification --------------------------- Проект Capcha.exe вызвал исключение класса EAccessViolation с сообщением 'Access violation at address 0048A3A8 in module 'Capcha.exe'. Read of address 01155000'. Процесс остановлен. Используйте Шаг или Запуск для продолжения. --------------------------- OK Help --------------------------- Само изображение трехмерное. Файл во вложении "не вышло". Другие изображения нормально проходят матрицу (например, файл во вложении "вышло"). В чем же дело: в том что изображение трехмерное и надо как-то по-другому с ним работать, или в чём другом? Прошу подсказать, пожалуйста. Вот код (Button1Click-выбор исходного файла, задание имен исходника и bmp файла; Button3Click - сохранение исходника в bmp-файл; Button2Click - получение матрицы цветов пикселей файла bmp - здесь проблемы): Код:
|
#2
|
||||
|
||||
![]() Вероятно, я стал обыкновенным ретроградом и повёл вас по не правильному пути - пжлст, посмотрите предпоследний пост УК NumLock в этой топке. Извнт, но честно, проверял на *.bmp и *.jpg: оно работало
Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
#3
|
|||
|
|||
![]() DenIvan, ты делаешь предположение, что битмап 24 бита на пиксел, но это не всегда так. Да и весь код какой-то странный, битмап сохраняется, потом загружается и всё это только для того, чтобы сохранить как текст. Приложенные изображения в градациях серого, может стоит писать в текст только одно значение, а не три одинаковых значения РГБ?
Код:
|