Estou fazendo um programa em java, só que porem estou percebendo que a qualidade das fontes do java não são tão boas, mais a da idea que eu uso (IntellJ) as fonts são desenhadas perfeitamente, mesmo com o anti-lias ativado não obtive grande qualidade, pareçe que os Glyph estão muito, finos, ai executei meu programa com o jre presente no intellJ, e as fontes desenharam perfeitamente, observe:
Segundo oq vc observa não é tanta diferença, mais para algumas letras, como D, M, P, e os numeros a diferença, é bem notavel, existe alguma maneira de configurar o jre no meu programa para que a qualidade fique semelhante ao das letras do IntellJ, (estou sitando ele como exemplo, pois a fonte deles é muito boa), se alguem puder me ajudar, agradeço.
Obs: Ambas as letras foram escriata com a typeface Ubuntu em tamanho 18. (Estou carregando a .ttf dessa fonte, mais tambem tentei com a SansSerif)
Se você ler toda a documentação da classe Font, vai descobrir que o Java usa o conceito de fonte física e fonte lógica.
Às vezes a implementação da máquina virtual pode não conter exatamente a fonte que você quer e o Java acaba carregando uma “parecida”.
Por isso, se você quer usar fontes específicas, é melhor disponibilizar uma cópia do arquivo da fonte, junto com sua aplicação.
O JRE utilizado pelo seu IntelliJ é o mesmo do seu sistema operacional?
Já experimentou usar o Look and Feel nativo do sistema operacional?
Experimenta colocar a seguinte instrução no seu método main antes de instanciar qualquer classe de GUI:
Percebi algumas fontes, na vdd meu jdk, e meu jre, nem tem o diretorio fonts, (Obs: estou usando linux, provavelmente eles usam as fonts do sistemas), você acha que poderia ser isso?
No passado eu tive problemas numa aplicação rodando no WebSphere que foi atualizada do Java 6 pro 8, os fontes também tinham um glyph diferente, na época eu resolvi copiando os ttf do Java 6 pra dentro da aplicação que foi atualizada pro Java 8.
Acho mais provável que o InteliJ esteja fazendo alguma maracutaia.
Seu IntelliJ usa uma jre ou um jdk próprio dele?
Ele tem um jdk proprio, ou jre, não sei o serto kkkkk, mais provavel que seja o jdk, (pois usei por um tempo como jdk, mais tambem consigo usar o jre como jdk, então fica confuso), como vc instalou os ttf, onde eu jogo as fontes, pois tentetei jogar em /lib/fonts, e não mudou.
ai fui comparar os bin deles com os do meu jdk, e percebi que mesmo que anbos são as mesmas, versões os binarios deles tem tamanho diferente, e existe alguns, arquivos que tem no jdk (e no jre) e não tem no deles como existe arquivos que existe no deles e no meu não existe, kkk, esquisito isso, mais provavelmente, não deve ter um jeito, eu acho, a não ser, que eu crie um binario em C++ para ler ele e passar as vertices e trabalhar com os pontos de uma ttf, e depois (talvez na baze da gambiarra field.setAcessible(true) [Entendores entenderam lkkk] ), ai talvez eu consiga criar uma font ou um Glyph, com qualidade boa.
Consegui usar a fonte ao convertela de .ttf para .ps (FONT_TYPE_1), não melhorou 100% mais ficou melhor, não entendi direito o bug do java com .ttf,mais ficou assim:
usei um site para converter, a ttf (Obs: observem a fonte que vcs usarem para ver se a licença dela permite você a fazer isso )
Agradeço ao @staroski pelo desenpenho em tentar me ajudar.
Site usado para fazer a conversão: Convertio.