CGColorSpace

2011. 10. 30
●概要

CGColorSpaceRef不透過型は、Quartzの色情報をどのように解釈するかを指定するために使用する、色空間情報をカプセル化します。

色空間は、色値がどのように解釈されるかを指定します。

色空間は多次元であり、各次元は特定の色成分を表します。

例えば、RGB色空間の色は三次元、あるいは赤、緑、青の成分を持っています。

各成分の明度は浮動小数点値で表され、その範囲と意味は当該の色空間に依存します。

様々な種類のデバイス(スキャナ、モニタ、プリンタ)では、様々な色空間(RGB、CMYK、グレースケール)で動作します。

更に、同じタイプの2つのデバイス(例えば異なるメーカのカラーディスプレイ)はある程度同じ色空間で動作しますが、それでも異なる色の範囲が生じます。

正確に指定された色空間は、出力デバイスに関係無く一貫した外観の画像を表示することを保証します。

Quartzはいくつかの色空間をサポートします。

  • 校正された色空間は、異なるデバイス上で表示する時に同じ色に見えることを保証します。
    色の視覚的な外観は、デバイスの能力が許す限り保持されます。

  • デバイス依存の色空間は、特定のデバイスでの色再現性のシステムに関連付けられています。
    デバイスの色空間は、高度な忠実度の色の保存が重要な場合には推奨されません。

  • 特殊な色空間(インデックスとパターン)
    インデックス色空間は、最大256エントリまでの色テーブルが含まれ、基盤となる色空間に色テーブルのエントリがマッピングされています。
    色テーブルの各エントリには、基盤となる色空間の1つの色が指定されます。
    パターン色空間は、ストロークやパターンの塗りつぶしに使用されます。
    パターン色空間はMac OS X v10.1以降でサポートされています。



●タスク別の関数

●デバイスに依存しない色空間の生成

CGColorSpaceCreateCalibratedGray
CGColorSpaceCreateCalibratedRGB
CGColorSpaceCreateICCBased
CGColorSpaceCreateWithICCProfile
CGColorSpaceCreateLab

●汎用またはデバイス依存の色空間の生成

Mac OS X v10.4以降では、これらの関数によって返される色空間はもはやデバイスに依存せず、汎用的なものに置換されています。

CGColorSpaceCreateDeviceCMYK
CGColorSpaceCreateDeviceGray
CGColorSpaceCreateDeviceRGB

●特殊色空間の生成

CGColorSpaceCreateIndexed
CGColorSpaceCreatePattern
CGColorSpaceCreateWithName

●色空間に関する情報の取得

CGColorSpaceGetNumberOfComponents
CGColorSpaceGetTypeID
CGColorSpaceGetModel
CGColorSpaceGetBaseColorSpace
CGColorSpaceGetColorTableCount
CGColorSpaceGetColorTable

●色空間の保持と解放

CGColorSpaceRelease
CGColorSpaceRetain



●関数

CGColorSpaceCreateDeviceGray

CGColorSpaceRef CGColorSpaceCreateDeviceGray(
    void
);

デバイス依存のグレースケール色空間を生成します。

戻り値はデバイス依存のグレースケール色空間です。

このオブジェクトは、CGColorSpaceReleaseを呼び出すことによって解放する責任があります。

失敗した場合はNULLを返します。

Mac OS X v10.4以降では、この色空間はもはやデバイスに依存せず、『色空間名』で説明されている汎用的なもの(kCGColorSpaceGenericGray)に置換されています。

Mac OS X v10.4以降でこの関数を使用する場合、色は汎用的な色空間にマッピングされます。

カラーマッチングをバイパスする場合は、対象となるコンテキストの色空間を使用してください。

デバイスでの色は、出力デバイス上で表示する時に依存している色空間への変換、ないしは他の方法での変更はされず、色の視覚的な外観を保持しようとはしません。

したがって、デバイスの色空間の色は異なる出力デバイス上で表示する時に、しばしば異なって表示されます。

この理由から、デバイス色空間は色の保存が重要な場合には推奨されません。


CGColorSpaceCreateDeviceRGB

CGColorSpaceRef CGColorSpaceCreateDeviceRGB(
    void
);

デバイス依存のRGB色空間を生成します。

戻り値はデバイス依存のRGB色空間です。

このオブジェクトは、CGColorSpaceReleaseを呼び出すことによって解放する責任があります。

失敗した場合はNULLを返します。

Mac OS X v10.4以降では、この色空間はもはやデバイスに依存せず、『色空間名』で説明されている汎用的なもの(kCGColorSpaceGenericRGB)に置換されています。

Mac OS X v10.4以降でこの関数を使用する場合、色は汎用的な色空間にマッピングされます。

カラーマッチングをバイパスする場合は、対象となるコンテキストの色空間を使用してください。

デバイスでの色は、出力デバイス上で表示する時に依存している色空間への変換、ないしは他の方法での変更はされず、色の視覚的な外観を保持しようとはしません。

したがって、デバイスの色空間の色は異なる出力デバイス上で表示する時に、しばしば異なって表示されます。

この理由から、デバイス色空間は色の保存が重要な場合には推奨されません。


CGColorSpaceRelease

void CGColorSpaceRelease(
    CGColorSpaceRef cs
);

色空間の保持カウントを減らします。

この関数はCFReleaseと同等で、csパラメータがNULLの場合以外ではエラーは発生しません。

cs:解放するQuartzの色空間を指定します。



●データ型

CGColorSpaceRef

typedef struct CGColorSpace *CGColorSpaceRef;

色空間情報をカプセル化した不透過型です。



定数



参考文献

CGColorSpace Reference






Bose QuietComfort 20
0 Comments
Leave a comment
管理者にだけ表示を許可する
Top
0 Trackbacks
Top
Calendar
08 | 2017/09 | 10
Sun Mon Tue Wed Thu Fri Sat
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Recent Articles
iTunes


Swift
Categories
Tips
Profile

水月杏香

Author:水月杏香
永遠の初心者プログラマ。

Wish List
WACOM


ARC
Technical Q&A
情報プロパティリストキー
Start Developing iOS Apps Today
BOSE

Bose QuietComfort 20
Reference
NSApplicationDelegateプロトコル
NSArrayクラス
NSAutoreleasePoolクラス
NSBundleクラス
NSBundle UIKit追加分
NSCalendarクラス
NSCoderクラス
NSCodingプロトコル
NSCopyingプロトコル
NSDataクラス
NSDateクラス
NSDateFormatterクラス
NSDictionaryクラス
NSEntityDescriptionクラス
NSEnumeratorクラス
NSErrorクラス
NSExceptionクラス
NSFetchRequestクラス
NSFileHandleクラス
NSFileManagerクラス
NSIndexPathクラス
NSIndexPath UIKit追加分
NSKeyedArchiverクラス
NSKeyedUnarchiverクラス
NSKeyValueCodingプロトコル
NSLocaleクラス
NSManagedObjectクラス
NSManagedObjectContextクラス
NSManagedObjectModelクラス
NSMutableArrayクラス
NSMutableCopyingプロトコル
NSMutableDictionaryクラス
NSMutableSetクラス
NSNotificationクラス
NSNotificationCenterクラス
NSNullクラス
NSNumberクラス
NSObjectクラス
NSObject UIKit追加分
NSObjectプロトコル
NSPersistentStoreクラス
NSPersistentStoreCoordinatorクラス
NSPredicateクラス
NSPropertyListSerializationクラス
NSRunLoopクラス
NSSetクラス
NSStringクラス
NSString UIKit追加分
NSTimerクラス
NSTimeZoneクラス
NSURLクラス
NSURLProtectionSpaceクラス
NSURLRequestクラス
NSUserDefaultsクラス
NSValueクラス

UIActionSheetクラス
UIActionSheetDelegateプロトコル
UIActivityIndicatorViewクラス
UIAlertViewクラス
UIAlertViewDelegateプロトコル
UIApplicationクラス
UIApplicationDelegateプロトコル
UIBarButtonItemクラス
UIBarItemクラス
UIButtonクラス
UIColorクラス
UIControlクラス
UIDatePickerクラス
UIDeviceクラス
UIEventクラス
UIFontクラス
UIGestureRecognizerクラス
UIImageクラス
UIImageViewクラス
UIKit Function
UILabelクラス
UINavigationControllerクラス
UINavigationItemクラス
UIPickerViewクラス
UIPickerViewDataSourceプロトコル
UIPickerViewDelegateプロトコル
UIPinchGestureRecognizerクラス
UIResponderクラス
UIScreenクラス
UIScrollViewクラス
UISearchBarクラス
UISearchBarDelegateプロトコル
UISegmentedControlクラス
UISliderクラス
UISwipeGestureRecognizerクラス
UISwitchクラス
UITableViewクラス
UITableViewCellクラス
UITableViewControllerクラス
UITableViewDataSourceプロトコル
UITableViewDelegateプロトコル
UITapGestureRecognizerクラス
UITextFieldクラス
UITextFieldDelegateプロトコル
UITextInputTraitsプロトコル
UITextViewクラス
UITextViewDelegateプロトコル
UIToolbarクラス
UITouchクラス
UIViewクラス
UIViewControllerクラス
UIWebViewクラス
UIWebViewDelegateプロトコル
UIWindowクラス

AVAudioPlayerクラス
AVAudioPlayerDelegateプロトコル

CADisplayLinkクラス
CAEAGLLayerクラス
CALayerクラス

CGAffineTransform
CGBitmapContext
CGColor
CGColorSpace
CGContext
CGGeometry
CGImage
CGPath

EAGLContextクラス
EAGLDrawableプロトコル

Foundation Constants
Foundation Data Types
Foundation Functions

MPMediaItemクラス
MPMediaItemArtworkクラス
MPMediaPlaylistクラス
MPMediaPropertyPredicateクラス
MPMediaQueryクラス
MPMusicPlayerControllerクラス

Randomization Services

System Sound Services
Amazon


OpenGL ES
SQLite
Monthly Archives
Recent Comments
Recent TrackBacks
RSS Link
Visitors
QR Code
QR