У меня проблема с получением значения из измененного размера UIimage. Начальный размер изображения 500x500. метод я использую не может только тогда, когда изображение изменяется (даже одинакового размера)object-c получить значение пикселя из измененного размера
Я использую ImageContext и drawInRect создавать новые изменения размера изображения.
Я использую CFDataRef и CFDataGetBytePtr в другом методе, чтобы получить значения пикселей в x, y.
CFDataRef возвращает 1000000 для всех изображений по умолчанию. После изменения размера изображения это значение изменяется на @ 90240000. То же самое с CFDataGetBytePtr, который пуст после изменения размера изображения.
Теперь я подозреваю, что это имеет какое-то отношение к тому факту, что изменение размера изображения на самом деле является новым изображением, но я не могу быть уверенным, поэтому я бы очень признателен за любые объяснения или предложения относительно того, как я могу это разрешить.
Благодарим вас за то, что нашли время, чтобы проверить мой вопрос.
Вы можете оставить комментарий, в который вы хотите изменить размер изображения? это может дать нам некоторые намеки –
точно :) Вот оно: // изменить размер изображения + (UIImage *) imageWithImage: (UIImage *) изображение scaledToSize: (CGSize) NewSize { // UIGraphicsBeginImageContext (NewSize); UIGraphicsBeginImageContextWithOptions (newSize, NO, 0.0); [image drawInRect: CGRectMake (0, 0, newSize.width, newSize.height)]; UIImage * newImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); return newImage; } – msavic
Вы можете попробовать эту категорию и посмотреть, улучшится ли она что-то http://vocaro.com/trevor/blog/2009/10/12/resize-a-uiimage-the-right-way/. Источник: http: //stackoverflow.com/questions/2658738/the-simplest-way-to-resize-an-uiimage. Кроме того, вы делаете это в основной теме? –