macOS/iOS API解説

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

目次

TIFFRepresentationOfImageRepsInArray:usingCompression:factor:

圧縮タイプと要素を使って圧縮して、TIFFファイルフォーマットのデータを返します
+(NSData *)TIFFRepresentationOfImageRepsInArray:(NSArray *)array:
            usingCompression:(NSTIFFCompression)compression:
            factor:(float)factor:

解説

指定した圧縮タイプと要素を使って圧縮して、TIFFファイルフォーマットのDataを返します。
【NSTIFFCompression】圧縮方法
適用できない場合は圧縮しません。
● NSTIFFCompressionNone 圧縮なし
● NSTIFFCompressionCCITTFAX3
● NSTIFFCompressionCCITTFAX4
● NSTIFFCompressionLZW
● NSTIFFCompressionJPEG
● NSTIFFCompressionNEXT
● NSTIFFCompressionPackBits
● NSTIFFCompressionOldJPEG
【圧縮比率】圧縮したくない場合は0.0をセットします。

作成中に問題があればNSTIFFExceptionかNSBadBitmapParametersExceptionを起こします。

返り値

( NSData * )

TIFFファイルフォーマットのデータ

引数

( NSArray * )array

配列

( NSTIFFCompression )compression

圧縮

( float )factor

圧縮比率

フレームワーク

ApplicationKit

クラス

NSBitmapImageRep

Class Methods

使用可能

10.0

参照

- TIFFRepresentationUsingCompression:factor:

例文

#import "SetImage.h"

@implementation SetImage

- (IBAction)set:(id)sender
{
    //開けるファイル拡張子の配列
    NSArray      *imgTypes    = [ NSArray arrayWithObject : @"tiff" ];
    //OpenPanelを作る
    NSOpenPanel  *opImage       = [ NSOpenPanel openPanel ];
    //Imageを作る
    NSImage      *img = [[[NSImage alloc] initWithSize:NSMakeSize(100,100)] autorelease];
    NSBitmapImageRep *bmpRep;
    NSData *dat;
    //OpenPanelの結果のボタン番号
    int		  opRet;
    NSData *dat2;
    NSArray* currentReps;
     
        //OpenPanelでファイル選択   
    opRet = [ opImage runModalForDirectory : NSHomeDirectory() //どこのディレクトリを出すか
                                     file : @"Pictures" //どのどのファイルを選択しておくか
                                    types : imgTypes ];//選べるファイルタイプ

    if ( opRet == NSOKButton ) {  // OPENPanelのボタンがOKなら
        

        //NSDataを作ってファイルから読み込む
        dat = [NSData dataWithContentsOfFile: [ opImage filename ] ];
         bmpRep =[[[NSBitmapImageRep alloc] autorelease] initWithData:dat];
        [img addRepresentation:bmpRep];
 
        [image setImage:img];
        
        currentReps=[img representations]; 
        dat2=[NSBitmapImageRep TIFFRepresentationOfImageRepsInArray:currentReps 
                                        usingCompression:NSTIFFCompressionNone
                                        factor:0.5
                                                    ];


    }
}

@end