iOS根據圖片比例計算顯示大小
前言
iOS開發中,很多地方使用到圖片瀏覽,這時候就可能需要旋轉螢幕檢視圖片,下面分享一種計算圖片旋轉大小的方法,在此拋磚引玉。
程式碼
func calculationFrame(image: UIImage) -> CGRect {
var x: CGFloat = 0
var y: CGFloat = 0
var width: CGFloat = 0
var height: CGFloat = 0
var screenWidth: CGFloat
var screenHeight: CGFloat
if #available(iOS 11.0, *) {
screenWidth = UIScreen.main.bounds.size.width - self.view.safeAreaInsets.left - self.view.safeAreaInsets.right
} else {
screenWidth = UIScreen.main.bounds.size.width
}
if #available(iOS 11.0, *) {
screenHeight = UIScreen.main.bounds.size.height - self.view.safeAreaInsets.top - self.view.safeAreaInsets.bottom
} else {
screenHeight = UIScreen.main.bounds.size.width
}
let imageWidth = image.size.width
let imageHeight = image.size.height
let widthSpace = fabsf(Float(screenWidth - imageWidth))
let heightSpace = fabsf(Float(screenHeight - imageHeight))
if widthSpace >= heightSpace {
if screenWidth > imageWidth {
width = imageWidth * (screenHeight / imageHeight)
height = imageHeight * (screenHeight / imageHeight)
}else {
width = imageWidth / (imageWidth / screenWidth)
height = imageHeight / (imageWidth / screenWidth)
}
}else {
if screenHeight > imageHeight {
width = imageWidth * (screenWidth / imageWidth)
height = imageHeight * (screenWidth / imageWidth)
}else {
width = imageWidth / (imageHeight / screenHeight)
height = imageHeight / (imageHeight / screenHeight)
}
}
x = (self.view.frame.size.width - width) * 0.5
y = (self.view.frame.size.height - height) * 0.5
return CGRect.init(x: x, y: y, width: width, height: height)
}
效果圖
總結
希望對大家有幫助,demo地址--->>CLDemo
相關文章
- (IOS)根據bundle中的檔名讀取圖片iOS
- 如何設定圖片高度固定,寬度可以根據比例縮放
- Android中一張圖片佔據的記憶體大小是如何計算Android記憶體
- iOS 左滑按鈕(UITableViewRowAction)顯示圖片iOSUIView
- base64 img圖片按父div等比例顯示
- win10系統圖示大小怎麼調 設定圖示比例大小快捷鍵Win10
- 根據公曆計算農曆
- win10怎麼改變圖示大小_win10設定圖示比例大小方法Win10
- WPF TextBlock根據值顯示不同的內容或格式BloC
- 圖片縮放(不裁剪,按原來比例計算寬高)
- IOS下圖片不能顯示問題的解決辦法iOS
- iOS根據兩點經緯度座標計算指南針方位角iOS
- java 根據經緯度計算圓周Java
- SDWebImage在iOS12上WebP格式圖片不顯示問題WebiOS
- ReactNative IOS下Image標籤載入網路圖片不顯示ReactiOS
- 根據URL引數返回不同大小的圖片這種方式消耗大不大,還是直接提前生成不同尺寸的圖片好?
- Python如何根據給定模型計算權值Python模型
- Python 如何根據給定模型計算權值Python模型
- vue el-image 顯示圖片Vue
- CSS圖片的灰色顯示效果CSS
- 小程式button背景顯示圖片
- 圖片上傳顯示替換
- 堆糖網爬蟲(根據關鍵字下載圖片)爬蟲
- html如何根據檔案路徑顯示檔案內容(pdf)HTML
- 根據設計稿,計算出網頁REM的大小,有那麼難嗎?網頁REM
- cv2.imshow顯示圖片不全
- 大頭針顯示多張圖片
- 如何在終端中顯示圖片
- 記一次ios下h5頁面圖片顯示問題iOSH5
- elementui 如果變數為1 顯示 開啟,2顯示關閉。表格怎麼根據狀態碼顯示狀態值UI變數
- iOS 大圖顯示解決辦法iOS
- Flutter之根據執行的platform顯示對應風格的widgetFlutterPlatform
- 根據子元素數量顯示不同樣式-純css解決方案CSS
- 機器學習根據文字生成圖片教程(附python程式碼)機器學習Python
- 根據時間經緯度高程計算天頂角
- 仿釘釘頭像(有頭像顯示圖片拼接,無圖顯示暱稱)
- 微信小程式根據本地快取圖片路徑,生成縮圖的方法微信小程式快取
- vue迴圈顯示base64圖片Vue