簡體   English   中英

使用Java / Swing應用程序中的Mac OS X Services菜單

[英]Using Mac OS X Services-menu from a Java/Swing application

我想讓我的Java / Swing應用程序與Mac OS X上提供的服務菜單兼容。例如,這樣用戶可以在JTextArea中選擇一些文本並通過服務將其轉換為語音- >語音 - >開始講話文字 有沒有一種簡單的方法來實現這一目標? (該應用程序仍應能夠在Mac OS X以外的平台上運行。)

看看apple的OSXAdapter包 (鏈接需要免費的蘋果開發人員登錄)進行java開發。 包中包含的示例向您展示了如何以僅在應用程序在OS X下運行時激活的方式很好地集成到OS X應用程序菜單。

我傾向於拒絕。 如果我沒記錯的話,服務只適用於Cocoa應用程序,Java應用程序不是Cocoa應用程序。

如果您想要的只是文本轉換為語音的最終結果,您可以嘗試使用ProcessBuilder調用“ say ”命令,如下所示:

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;
}

這不會將其添加到服務菜單中,但您仍然可以獲得相同的效果。

請務必查看“說”的手冊頁,因為您可以更改語音。

這似乎適用於Mac OS X Leopard,原始應用程序沒有任何變化。 所以我對答案失去了興趣(如何使它適用於Tiger)。 謝謝你的貢獻。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM