Я использую libpng, чтобы загружать png — файл. Мне необходимо использовать
пользовательскую функцию чтения (кот. задается png_set_read_fn), либо прогрессивный метод считывания для того, чтобы распаковвывать уже загруженный в память файл.
Распаковка осуществляется в отдельный буфер (ястессно). Картинка 8 бит. 64х64.
Проблема в том, что при использовании png_set_read_fn, функция чтения устанавливается нормально. Но вот следующий вызов, наподобие png_read_png, или хотя бы png_get_IHDR сразу же проваливается (то есть либа падает и за ней падает все остальное)... почему?, не известно.
Вроде бы во время распаковки, либа встречает неизвесные ей чанки, надо ли с ними
что -нибудь явно делать?
При использовании progressive reading (с call back-ами), все работает, но... готовая
картинка получается какого-то не того цвета (сине-феолетовая), и сама картинка ничуть
не соответствует тому, что лежало в файлике. Палитра устанавливается нормально. Вроде бы все как в сэмпле, но нифига не работет как должно...
Спасибо.
... << RSDN@Home 1.1.3 stable >>
24.05.04 19:17: Перенесено модератором из 'C/C++' — Павел Кузнецов