Как установить высококачественную иконку OSX для приложения Java SWT - PullRequest
3 голосов
/ 06 июня 2011

Я написал Java-приложение SWT и хотел бы настроить его для использования высококачественного значка в док-станции OSX. Это мой текущий код:

// Prepare window
final Shell window = new Shell();

// Load icons
Display display = window.getDisplay();
ClassLoader loader = InTraceStandaloneUI.class.getClassLoader();
InputStream is16 = loader.getResourceAsStream(
                 "org/intrace/icons/intrace16.gif");
Image icon16 = new Image(display, is16);
is16.close();
InputStream is32 = loader.getResourceAsStream(
                 "org/intrace/icons/intrace32.gif");
Image icon32 = new Image(display, is32);
is32.close();
window.setImages(new Image[] {icon16, icon32});

https://github.com/mchr3k/org.intrace/blob/master/org.intrace/src/org/intrace/client/gui/InTraceStandaloneUI.java

Это работает для загрузки логотипов 16x16 и 32x32, которые выглядят хорошо в Windows, но логотип, используемый OSX, все еще выглядит действительно пиксельным. Мне просто нужно указать третью версию с более высоким разрешением или я должен использовать другой формат изображения или API?

Ответы [ 3 ]

5 голосов
/ 13 июня 2011

На самом деле, если вы позвоните в Shell.setImages (...) и включите значок 128x128, это будет выбрано OSX, и вы получите высококачественную иконку стыковки без использования классов расширения Apple.

3 голосов
/ 06 июня 2011

Вы можете обнаружить OSX и использовать Apple Java Extensions и вызвать Application.setDockIconImage (...)

1 голос
/ 14 июля 2011

Не следует ли ссылаться на значок дока в Info.plist с помощью

<key>CFBundleIconFile</key>
<string>icon.icns</string>

линии

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...