macOS/iOS API解説

iOS , Mac アプリケーション開発のために使われる主要フレームワークの日本語情報です。2010年代に書かれた内容です。今後更新はありません。

目次

depthLimit

INDEX>AppKit>NSWindow

ウインドウの色深度制限

Objective-C

@property NSWindowDepth depthLimit

Swift

var depthLimit: NSWindowDepth

解説

ウインドウの色深度*1制限を返します。
【NSWindowDepth】
● NSPlanarFromDepth
● NSColorSpaceFromDepth
● NSBitsPerSampleFromDepth
Appkit関数(NSPlanarFromDepth, NSColorSpaceFromDepth, NSBitsPerSampleFromDepthNSBitsPerPixelFromDepth)で調べることができます。

設定値

Objective-C

NSWindowDepth depthLimit

Swift

depthLimit: NSWindowDepth

色深度制限

フレームワーク

ApplicationKit

クラス

NSWindow

使用可能

10.0

参照

defaultDepthLimit
setDynamicDepthLimit

NSPlanarFromDepth()
NSColorSpaceFromDepth()
NSBitsPerSampleFromDepth()
NSBitsPerPixelFromDepth()

ビットマスクの判定法[Swift] - Cocoa API解説(iOS/OS X)

関連記事(外部リンク)

例文

Objective-C

#import "Controller.h"

@implementation Controller

- (IBAction)pushButton:(id)sender
{
NSWindowDepth *dpt = [myWindow depthLimit];
NSLog([NSString stringWithFormat:@"depth = %d",NSBitsPerPixelFromDepth(dpt)]);

}

@end

Swift

    //NSWindow depthLimit
    @IBAction func function031(sender: AnyObject) {
        var aWindow : NSWindow = NSWindow(contentRect: NSMakeRect(0.0, 0.0, 300, 200), styleMask: NSTitledWindowMask | NSClosableWindowMask | NSMiniaturizableWindowMask | NSResizableWindowMask, backing: .Buffered, defer: false)
        windowArray.addObject(aWindow) //ウインドウを保持するための配列に追加。アプリ終了時に配列は破棄
        aWindow.center()//ウインドウをスクリーンの中心に
        aWindow.title = "ウインドウタイトル"//タイトル設定
        aWindow.orderFront(self)//前面に
        aWindow.makeKeyAndOrderFront(self)//表示
        var windowDepthLimit : NSWindowDepth = aWindow.depthLimit
        
        if (NSPlanarFromDepth(windowDepthLimit)){
            NSLog("NSPlanarFromDepth YES")
        }else{
            NSLog("NSPlanarFromDepth NO")
        }
        //NSPlanarFromDepth NO
        NSLog("name = %@",NSColorSpaceFromDepth(windowDepthLimit))
        //name = NSCalibratedBlackColorSpace
        NSLog("ビット/サンプル = %d",NSBitsPerSampleFromDepth(windowDepthLimit))
        //ビット/サンプル = 0
    }

編集時のバージョン

10.10