0

XCode の文字列から TIFF 画像を描画してドックに表示しようとしています。TIFF イメージは、Spotify と対話する AppleScript を介して取得されます。

tell application "Spotify"
set aTrackArtwork to artwork of current track
end tell

受け取る文字列は次のようなものです。

TIFF4D4D002A00041EB821585D22595E215..

このバイナリ コードから画像を描画するにはどうすればよいですか? 私の現在のコード(これは概念実証です)は次のようになります。

NSImage *myImage = [[NSImage alloc] init];
myImage = [NSImage imageNamed:@"ikoner"];
[NSApp setApplicationIconImage:myImage];

myImage オブジェクト内に画像を描画する方法はありますか?

また、AppleScript に依存せずに Xcode プロジェクトでこの情報を直接取得する簡単な方法はありますか?

私の目標は、現在再生中の曲を取得し、そのアルバム アートをドックに表示する単純なアプリケーションを作成することです。

答えに近づくかもしれないし、そうでないかもしれないすべての答えに感謝します!

4

2 に答える 2

1

これは、Scripting Bridge の場合はかなり単純です。

まず、Spotify.hターミナルで生成します。

sdef /Applications/Spotify.app | sdp -fh --basename Spotify

次に、ヘッダー ファイルをプロジェクトにインポートしてから、 にリンクしScriptingBridge.frameworkます。

最後に、画像を取得して Dock に入れます。基本的な例を次に示します。

#import "Spotify.h"

// Get the image from Spotify
SpotifyApplication *spotify = [SBApplication applicationWithBundleIdentifier:@"com.spotify.client"];
NSImage *coverArt = spotify.currentTrack.artwork;

// Create an image view and put it in the Dock
NSImageView *imageView = [[NSImageView alloc] initWithFrame:NSZeroRect];
imageView.image = coverArt;

NSDockTile *dock = [[NSApplication sharedApplication] dockTile];
dock.contentView = imageView;
[dock display];
于 2013-03-20T11:33:40.120 に答える
-1

私はSpotify APIに精通していませんが、次のようなものがうまくいくようです(文字列をNSDataオブジェクトに変換します:

[[NSImage alloc] initWithData:]
于 2013-03-19T22:39:06.763 に答える