how to get width and height of image from url without downloading?(如何在不下载的情况下从 url 获取图像的宽度和高度?)
问题描述
我正在使用 SDWebImage 来显示单元格内的图像.但它与我在下面的代码中所做的 UImageView 框架完美匹配:
I'm using SDWebImage for showing images inside cells. But it is perfect mached to frame of UImageView that I'm doing in code below:
NSString * s =[NSString stringWithFormat:@"url of image to show"];
NSURL *url = [NSURL URLWithString:s];
[cell.shopImageView sd_setImageWithURL:url];
我的 UIImageView 大小为 50x50.
My UIImageView is size 50x50.
例如,来自 url 的图像尺寸为 990x2100,而我的图像在给定的框架中显示效果不佳.在这种情况下,当高度较大时,我想通过适当的高度比调整图像大小以匹配宽度 50.
For example image from url is size 990x2100 and my image is not displaying well in the frame given. In this case when hight is bigger, I want to resize my image by proper height ratio to match width 50.
有没有办法从 url 检查图像的大小,而无需下载并以糟糕的方式分配内存?
Is there a way to check image's size from url without downloading it and allocating memory in awful way?
推荐答案
您可以从 URL 标头中获取此数据,在 Swift 3.0 中使用以下代码
You can fetch this data from URL header, in Swift 3.0 use below code
if let imageSource = CGImageSourceCreateWithURL(url! as CFURL, nil) {
if let imageProperties = CGImageSourceCopyPropertiesAtIndex(imageSource, 0, nil) as Dictionary? {
let pixelWidth = imageProperties[kCGImagePropertyPixelWidth] as! Int
let pixelHeight = imageProperties[kCGImagePropertyPixelHeight] as! Int
print("the image width is: (pixelWidth)")
print("the image height is: (pixelHeight)")
}
}
这篇关于如何在不下载的情况下从 url 获取图像的宽度和高度?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何在不下载的情况下从 url 获取图像的宽度和高度?
基础教程推荐
- 如何让对象对 Cocos2D 中的触摸做出反应? 2022-01-01
- android 应用程序已发布,但在 google play 中找不到 2022-01-01
- 当从同一个组件调用时,两个 IBAction 触发的顺序是什么? 2022-01-01
- Android:对话框关闭而不调用关闭 2022-01-01
- UIWebView 委托方法 shouldStartLoadWithRequest:在 WKWebView 中等效? 2022-01-01
- 如何在 iPhone 上显示来自 API 的 HTML 文本? 2022-01-01
- 如何在没有IB的情况下将2个按钮添加到右侧的UINavigationbar? 2022-01-01
- 在 gmail 中为 ios 应用程序检索朋友的朋友 2022-01-01
- 如何在 UIImageView 中异步加载图像? 2022-01-01
- Kivy Buildozer 无法构建 apk,命令失败:./distribute.sh -m “kivy"d 2022-01-01