次のリンクで行われているように、アスペクト比で画像のサイズを変更しようとしています
カメラから引き出された UIimage のサイズを変更すると、UIimage も回転しますか?
https://stackoverflow.com/questions/1282830/uiimagepickercontroller-uiimage-memory-and-more
これはシミュレーターで正常に動作します。しかし、私の iPhone-4 では、写真の右側に黒いブロックが表示されます。(写真の4分の1は黒です)。これは、imageOrientation の権利を持つ写真でのみ発生します...これまでのところ。ImageOrientation up は問題ありません。
どういうわけか、CGBitmapContextCreate が問題を引き起こしているような気がします。CGImageGetBytesPerRow は、読んだとおりに機能しないため、既に削除しました。現時点では、次のコードがあります。
if (sourceImage.imageOrientation == UIImageOrientationUp || sourceImage.imageOrientation == UIImageOrientationDown) {
bitmap = CGBitmapContextCreate(NULL, targetWidth, targetHeight, 8, 4*targetWidth, colorSpaceInfo, bitmapInfo);
} else {
bitmap = CGBitmapContextCreate(NULL, targetHeight, targetWidth, 8, 4*targetHeight, colorSpaceInfo, bitmapInfo);
}
これらの問題はどのような場合に発生する可能性がありますか?