高度な検索
Developer Connection
Member Login ログイン | ご入会 ADC連絡先

Technical Q&A QA1369
Setting the ColorSync profile for a NSBitmapImageRep object

Q: ColorSync プロファイルと特定の NSBitmapImageRep オブジェクトを、カラーマッチングの目的で関連付けたいと考えています。これを行う簡単な方法はありますか。

A: -setProperty: メソッドと NSImageColorSyncProfileData プロパティを使って、ColorSync プロファイルと、TIFF、JPEG、GIF または PNG ファイルをデコードすることによって生成されたピクセルデータの入った NSBitmapImageRep を関連付けることができます。

以下は、この方法を示した短いコードの例です。

リスト 1. NSBitmapImageRep オブジェクトのための ColorSync プロファイルの設定

//
// imageRepWithProfileAtPath
//
// 特定のファイルベースの ColorSync プロファイルと
//  NSBitmapImageRep オブジェクトを関連付ける
//
// 入力:
//
//    aPath    -  ColorSync プロファイルのファイルパス
//
// 出力:
//
//    -   レシーバをコピーし、ColorSync プロファイルを適用することによって作成された、
//    新しい NSBitmapImageRep オブジェクトが返される
@implementation NSBitmapImageRep (MoreColorMethods)

- (NSBitmapImageRep *) imageRepWithProfileAtPath:(NSString *) pathToProfile
{
    id result = [self copy];
    
        // ColorSync プロファイルファイルの NSData オブジェクトを作成
    id profile = [NSData dataWithContentsOfFile: pathToProfile];
    
        // 次にこのオブジェクトに ColorSync プロファイルを設定
    [result setProperty:NSImageColorSyncProfileData withValue:profile];
    
    return [result autorelease];
}

@end

ドキュメントの改訂履歴

日付メモ
2004-09-08最初のバージョン

掲載日: 2004-09-08