Archive for the ‘NSImage’ Category

今回は、任意ファイル(フォルダ含む)のアイコンを取得する方法。

NSWorkspaseのメソッドを使用することで簡単に取得することができる。

  1. NSImage * img = [ [ NSWorkspace sharedWorkspace ] iconForFile:@"/a.txt"];

NSImageのある部分を切り抜いて表示したいと考えた。

ケースとしては、画像の真ん中部分だけを切り抜いて表示するといったところですかね。。。

実装は、こんな感じ

  1. -(NSImage *)imageSetSizeForOriInfo:(NSImage *)image{
  2. NSSize imageSize = [ image size ];
  3. float imgHeghit = imageSize.height;
  4. float imgWidth = imageSize.width;
  5.  
  6.  
  7. NSImage * img = [ [ NSImage alloc ] init ];
  8. [ img setSize:NSMakeSize(imgWidth-90,imgHeghit-90) ];
  9. [ img lockFocus ];
  10.  
  11. [ image compositeToPoint:NSZeroPoint fromRect:NSMakeRect(50,30,imgWidth-90,imgHeghit-90) operation:NSCompositeCopy ];
  12.  
  13. [ img unlockFocus ];
  14.  
  15. return img;
  16. }

いい加減な実装ですが、これで切り抜き画像が取得できる。