iOS 获取网络图片的大小

Posted ljmaque

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS 获取网络图片的大小相关的知识,希望对你有一定的参考价值。

一直都在找关于获取网络图片的大小的方法, 今天找到了一个能解决的办法 ,如下

1, 导入框架

 #import <ImageIO/ImageIO.h>

2. 使用此方法得到image的size 

- (CGSize)getImageSizeWithURL:(NSURL *)url
{
    CGImageSourceRef imageSource = CGImageSourceCreateWithURL((CFURLRef)url, NULL);
    CGFloat width = 0.0f, height = 0.0f;
    
    if (imageSource)
    {
        CFDictionaryRef imageProperties = CGImageSourceCopyPropertiesAtIndex(imageSource, 0, NULL);
        
        if (imageProperties != NULL)
        {
            CFNumberRef widthNum  = CFDictionaryGetValue(imageProperties, kCGImagePropertyPixelWidth);
            if (widthNum != NULL) {
                CFNumberGetValue(widthNum, kCFNumberFloatType, &width);
            }
            
            CFNumberRef heightNum = CFDictionaryGetValue(imageProperties, kCGImagePropertyPixelHeight);
            if (heightNum != NULL) {
                CFNumberGetValue(heightNum, kCFNumberFloatType, &height);
            }
            
            CFRelease(imageProperties);
        }
        CFRelease(imageSource);
        NSLog(@"Image dimensions: %.0f x %.0f px", width, height);
    }
    return CGSizeMake(width, height);
}

 

以上是关于iOS 获取网络图片的大小的主要内容,如果未能解决你的问题,请参考以下文章

iOS 获取网络图片的大小

IOS -- 获取本地图片和网络图片的大小size

iOS根据网络图片的size大小设置UIImageView的大小

Flutter获取图片大小(网络图片和本地图片)

IOS:根据图片大小改变UICollectionView Cell大小

C# 发送HttpWebRequest获得网络图片的大小尺寸