0

私はデスクトップイメージを変更するプロジェクトに取り組んでいます。これは次のように実行しています。

[[NSWorkspace sharedWorkspace] setDesktopImageURL:fileURL forScreen:[NSScreen mainScreen] options:[NSDictionary dictionary] error:&error];

これは機能しますが、スケーリングを制御できません。UIでできるようにプログラムでスケーリングオプション(画面の塗りつぶし、画面に合わせる、画面の塗りつぶしに拡大、中央揃え、タイル)を選択できるようにしたいのですが、その方法を説明するドキュメントが見つかりません。さらに悪いことに、上記のメソッドを呼び出すと、常にスケーリングが「画面いっぱい」にリセットされます。

どんな援助でも大歓迎です。お時間を割いてご協力いただきありがとうございます。

4

1 に答える 1

2

NSWorkspaceDesktopImageScalingKeyパラメータでを設定できoptionます。可能な値は次のとおりです。

NSImageScaleProportionallyDown

目的地に対して大きすぎる場合は、アスペクト比を維持しながら画像を縮小します。

NSImageScaleAxesIndependently

目的地に正確に合うように各ディメンションをスケーリングします。この設定では、画像のアスペクト比は保持されません。

NSImageScaleNone

画像を拡大縮小しないでください。

NSImageScaleProportionallyUpOrDown

目的の領域内にとどまり、アスペクト比を維持しながら、画像を可能な最大サイズに拡大縮小します。

NSCell.hで宣言されています。

于 2013-03-25T06:21:43.500 に答える