[XCODE] UIImageを任意のサイズにリサイズする方法
今日は、Objective-Cで良く出てくるUIImageをリサイズする方法をブログに載せたいと思います。
カメラとかアルバムから写真を取得した際に、そのままのサイズだと大きすぎるので、 リサイズしたいと思う事もあるのでは?今日はその方法です(*゚▽゚)ノ
取得した画像の縦サイズ、横サイズを取得して、長い方を320pxにして、 短い方は(320/長い方のサイズ)にリサイズします。
実装方法は以下のようにすればできます。
こーゆう機能の経験を積み重ねると開発スピードが上がるのかなぁ。
また色々と学んだことをブログに書きたいと思います。
最後までお読み頂きましてありがとうございます。
カメラとかアルバムから写真を取得した際に、そのままのサイズだと大きすぎるので、 リサイズしたいと思う事もあるのでは?今日はその方法です(*゚▽゚)ノ
UIImageをリサイズする方法
今回は、以下の感じにリサイズします。取得した画像の縦サイズ、横サイズを取得して、長い方を320pxにして、 短い方は(320/長い方のサイズ)にリサイズします。
実装方法は以下のようにすればできます。
UIImage *aImage = /* UIImagePickerなどから画像を取得 */ // 取得した画像の縦サイズ、横サイズを取得する int imageW = aImage.size.width; int imageH = aImage.size.height; // リサイズする倍率を作成する。 float scale = (imageW > imageH ? 320.0f/imageH : 320.0f/imageW); // 比率に合わせてリサイズする。 // ポイントはUIGraphicsXXとdrawInRectを用いて、リサイズ後のサイズで、 // aImageを書き出し、書き出した画像を取得することで、 // リサイズ後の画像を取得します。 CGSize resizedSize = CGSizeMake(imageW * scale, imageH * scale); UIGraphicsBeginImageContext(resizedSize); [aImaged drawInRect:CGRectMake(0, 0, resizedSize.width, resizedSize.height)]; UIImage* resizedImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext();
最後に
UIImageはiPhoneアプリを作っていると触れる機会が多いと思います。こーゆう機能の経験を積み重ねると開発スピードが上がるのかなぁ。
また色々と学んだことをブログに書きたいと思います。
最後までお読み頂きましてありがとうございます。