convertRectToBacking:
デバイスピクセルとディスプレイの座標システムとの変換
- (NSRect)convertRectToBacking:(NSRect)aRectSwift
func convertRectToBacking(_ aRect: NSRect) -> NSRect
返り値
NSRect
Swift
NSRect
引数
(NSRect)aRect
Swift
(_ rect: NSRect)
フレームワーク
ApplicationKit
クラス
NSScreen
使用可能
10.7-
更新時のバージョン
OS X 10.14.5
SWIFT4.0
参照
関連記事(外部サイト)
例文
Swift4.0
@IBAction func function010(_ sender: Any) { let screenArray : [NSScreen] = NSScreen.screens for value in screenArray { let rect : NSRect = value.convertRectToBacking(NSMakeRect(0.0, 0.0,100.0, 100.0)) print("rect = (\(rect.origin.x) ,\(rect.origin.y)(\(rect.size.width),\(rect.size.height)))") } //rect = (0.0 ,0.0(100.0,100.0)) //<- Normal Display //rect = (0.0 ,0.0(200.0,200.0)) //<- MacBooK retina Display //rect = (0.0 ,0.0(100.0,100.0)) //<- Normal Display }
Swift//NSScreen convertRectToBacking @IBAction func function006(sender: AnyObject) { let theScreen : NSScreen = NSScreen.mainScreen()! let newRect : NSRect = theScreen.convertRectToBacking(NSMakeRect(0.3, 0.0, 100.3, 123.5)) NSLog("newRect = (x=%.2f,y=%.2f,w=%.2f,h=%.2f)", Float(newRect.origin.x), Float(newRect.origin.y), Float(newRect.size.width), Float(newRect.size.height) ) //通常ディスプレイの場合(倍率1.0) -> newRect = (x=0.30,y=0.00,w=100.30,h=123.50) }