2008-11-05 3 views
3

Я хотел бы сделать приложение Java/Swing совместимым с меню «Службы», доступным в Mac OS X. Например, чтобы пользователь мог выбрать текст в JTextArea и преобразовать его в речь Услуги -> Речь -> Начало текста Текст. Есть ли простой способ достичь этого? (Приложение должно по-прежнему работать на платформах, отличных от Mac OS X.)Использование меню служб Mac OS X из приложения Java/Swing

ответ

0

Это похоже на работу с Mac OS X Leopard, без изменить первоначальное приложение. Поэтому я потерял интерес к ответу (как заставить его работать на Tiger). Спасибо за ваш вклад.

1

Я склонен сказать «нет». Если я правильно помню, службы доступны только для приложений Cocoa, а приложения Java не являются приложениями Cocoa.

3

Посмотрите на яблоко OSXAdapter package (для связи требуется бесплатный вход разработчика яблока) для разработки java. Образцы, включенные в пакет, показывают вам, как хорошо интегрироваться в меню приложений OS X таким образом, который активируется только тогда, когда ваше приложение работает под OS X.

0

Если все, что вы хотите, это конечный результат текста преобразуется в речь, вы можете попробовать призывая «сказать» команду, используя ProcessBuilder, что-то вроде этого:

String stuffYouWantToSay = "StackOverflow Rocks!"; 
Process p = null; 
try { 
    ProcessBuilder pb = new ProcessBuilder("/usr/bin/say", stuffYouWantToSay); 
    p = pb.start(); 
} catch (Exception e) { 
    // handle the error 
    return; 
} 

Это не добавит это в меню сервисов, но вы все равно можете получить тот же эффект.

Обязательно зайдите на страницу руководства для «say», поскольку вы можете изменить голос.

Смежные вопросы