画像が90度回転するため、幅がheightに等しい新しい画像を作成したいです。新しい画像変更の次元を作成しましたが、データを正確に画像に配置しません。heightとwidth、widthが同じ高さの新しい画像を作成すると、画像の回転に問題が発生する
CGImageRef imageRef = OriginalImage.CGImage; /////////////新しい高さは、元画像の幅に等しい size_t newHeight = CGImageGetWidth(imageRef); size_t newWidth = CGImageGetHeight(imageRef); size_t bitsPerComponent = CGImageGetBitsPerComponent(imageRef); size_t bitsPerPixel = CGImageGetBitsPerPixel(imageRef);
CGColorSpaceRef colorspace = CGColorSpaceCreateDeviceRGB();
CGBitmapInfo bitmapInfo = CGImageGetBitmapInfo(imageRef);
CFDataRef argbData = CFDataCreate(NULL,rotatedPixelData,originalImageDataLength);
CGDataProviderRef provider = CGDataProviderCreateWithCFData(argbData);
CGImageRef nimage = CGImageCreate(NewWidth,NewHeight,bitsPerComponent, bitsPerPixel,bytesPerRow,colorspace,bitmapInfo,provider, NULL, true, kCGRenderingIntentDefault);
CGImageCreateのパラメータを変更する必要はありますか?