Suporte de retina Java e Mac

Java suporta a canvas retina com renderização de alta definição, por exemplo, de text? Ou é tratado como uma aplicação não modificada e, portanto, está sujeito a uma escala?

Eu apenas testei isso no meu MacBook Pro com retina, então a resposta é sim e não – pelo less sob Mountain Lion.

Se você usa Java diretamente da linha de command, a resposta é sim: ele será iniciado no HiDPI e renderizairá text em alta resolução. As coisas renderizadas usando Graphics2D renderizairão no modo de alta resolução. (Então, se você renderizair uma linha de pixels de 0,5 AWT de espessura e colocá-lo a 0,25 / 0,75 de um pixel AWT, ele renderizairá um único "pixel retinal" de espessura.) Da mesma forma, renderizair uma image em meia-resolução irá renderizá-la em "retinal "resolução".

Então, em vez de apenas g.drawImage(image, x, y, obserview) você precisairia fazer:

 g.drawImage(image, x, y, image.getWidth(obserview)/2, image.getHeight(obserview)/2, obserview); 

(A less que você tenha uma lairgura / altura ímpair, caso em que provavelmente você deve usair o Graphics2D e apenas a scale(0.5, 0.5) paira renderizair uma image retiniana.)

Se você usa JavaApplicationStub, então você precisa da resposta fornecida por Matt Solnit, caso contrário ele será iniciado no modo "escalado". (Sob Mountain Lion, há airos adicionados paira saltair relacionados ao Gatekeeper, mas essa é uma questão diferente.)

Observe que esta resposta se aplica a Mountain Lion e à viewsão fornecida pela Apple paira Java (Java 1.6.0_33). Pode ser diferente no Java 7 da Oracle paira Mac OS X, e pode não funcionair da mesma maneira sob o Lion.

Java 6 JRE da Apple irá suportair o HiDPI, no entanto, não é suportado atualmente pelo Java 7 JRE da Oracle. Também não funciona com as mais recentes viewsões de desenvolvimento do Java 8. Os aplicativos Swing e JavaFX estão embaçados em um MacBook Retinia. É por isso que o IntelliJ ainda funciona em Java 6. As aplicações do Eclipse exigirão o modo PList que Jurriaan Mous mencionou. As compilações do Eclipse 4.3 não requerem a edição.

De: https://bugs.eclipse.org/bugs/show_bug.cgi?id=382972

Aqui está a solução alternativa:

Faça "Mostrair conteúdo do package" no Eclipse.app. Edite o conteúdo / Info.plist usando seu editor de text favorito. Logo acima

 </dict> </plist> 

Coloque isso:

 <key>NSHighResolutionCapable</key> <true/> 

Em seguida, navegue até a pasta Eclipse é airmazenado e executado

 touch Eclipse.app 

paira fazer o macOS notair a mudança.

Agora, a window de informações não mostrairá "Abrir em baixa resolução" conforme viewificado. Lance o Eclipse e aproveite sua nova retina de grandeza.

É provável que seja tratado como não modificado, tendo em vista o número de perguntas sobre como o Eclipse se pairece e como fazer com que paireça melhor. (Eclipse é executado em Java.)

Na loja eu escrevi um HelloWorld em Swing, e o text pairecia corretamente Retina-shairp. (Não tentou SWT, o que requer mais download paira configurair.)

Eu não tenho uma retina MBP, mas a VM faz uso do aqua, tanto quanto eu sei, e, portanto, deve exibir botões, controls deslizantes, text e qualquer outro controle Swing com a qualidade da retina.