PNG Byte Swap во время выполнения
У меня есть приложение, которое генерирует эскизы изображений во время выполнения. Но они не в оптимизированном формате, который Xcode создает, когда изображения добавляются в проект. Можно ли использовать библиотеку или вызов функции для преобразования этих изображений?
1 ответ
Решение
Инструкции:
- Загрузите код DHowett (спасибо, DHowett!) По адресу: https://github.com/DHowett/pincrush
- Разархивируйте и переименуйте в DHowett и поместите рядом с примером проекта XCode, который я разместил ( https://www.box.com/s/7dfb3e6f430d98d933c2), и запустите...
Если / когда вы строите свой собственный проект с нуля, то сразу же после разархивирования и ДО добавления папки в свой проект выполните следующее:
- Удалить все файлы makefile из папки
- Перетащите папку в свой проект
- Чтобы преодолеть предупреждение компилятора "неявное объявление функции 'pincrush' недопустимо в C99", изменили настройку проекта "C Language Dialect" на "GNU89"
- При сборке вы получите сообщение об ошибке "файл png.h не найден" - чтобы исправить это, добавьте DHowett/libpng в пути поиска заголовка проекта
- откройте pincrush.c и закомментируйте функции "using" и "main" (они вам не нужны, и первая вызывает ошибку компиляции, вторая вызывает ошибки ссылки)
- Добавить внешнюю ссылку в crush... См. Ниже: extern void crush(const char *infilename, const char *outfilename);
- Вы можете игнорировать 8 предупреждений компиляции о "неиспользованной проблеме сущности", вызванной макросом "NEXT"
Возможно, вам придется удалить файлы.git * из проекта (некоторые предупреждения...)
Наслаждайтесь, удачи!