247

メールのURL画像から

メールビューに画像を追加しています。フル画像が表示されます。しかし、画像の高さと幅を比例的に変更して計算したいと思います。

の高さと幅を取得するにはどうすればよいUIImageですか?

4

8 に答える 8

466
let heightInPoints = image.size.height
let heightInPixels = heightInPoints * image.scale

let widthInPoints = image.size.width
let widthInPixels = widthInPoints * image.scale
于 2011-03-09T17:28:25.907 に答える
36

sizeUIImageインスタンスのプロパティを使用します。詳細については、ドキュメントを参照してください。

于 2011-03-09T17:26:25.080 に答える
12
UIImage *img = [UIImage imageNamed:@"logo.png"];

CGFloat width = img.size.width;
CGFloat height = img.size.height;
于 2015-06-11T15:07:04.170 に答える
6

上記の回答の一部は、デバイスを回転させるときにうまく機能しません。

試す:

CGRect imageContent = self.myUIImage.bounds;
CGFloat imageWidth = imageContent.size.width;
CGFloat imageHeight = imageContent.size.height;
于 2012-10-31T21:52:56.687 に答える
2
UIImageView *imageView = [[[UIImageView alloc]initWithImage:[UIImage imageNamed:@"MyImage.png"]]autorelease];

NSLog(@"Size of my Image => %f, %f ", [[imageView image] size].width, [[imageView image] size].height) ;
于 2011-12-15T08:09:39.480 に答える
2

役立つ解決策はたくさんありますが、拡張機能を使用した単純化された方法はありません。拡張機能の問題を解決するためのコードは次のとおりです。

extension UIImage {

    var getWidth: CGFloat {
        get {
            let width = self.size.width
            return width
        }
    }

    var getHeight: CGFloat {
        get {
            let height = self.size.height
            return height
        }
    }
}
于 2020-04-19T21:31:41.573 に答える
1
    import func AVFoundation.AVMakeRect

    let imageRect = AVMakeRect(aspectRatio: self.image!.size, insideRect: self.bounds)

    x = imageRect.minX

    y = imageRect.minY
于 2019-05-23T11:06:06.067 に答える
-3
let imageView: UIImageView = //this is your existing imageView

let imageViewHeight: CGFloat = imageView.frame.height

let imageViewWidth: CGFloat = imageView.frame.width
于 2017-03-04T05:57:53.783 に答える