FTGL и права на левые языки [дубликат]

new BigDecimal(String.valueOf(double)).setScale(yourScale, BigDecimal.ROUND_HALF_UP);

доставит вам BigDecimal. Чтобы получить строку из нее, просто вызовите этот метод BigDecimal toString или метод toPlainString для Java 5+ для строки простого формата.

Пример программы:

package trials;
import java.math.BigDecimal;

public class Trials {

    public static void main(String[] args) {
        int yourScale = 10;
        System.out.println(BigDecimal.valueOf(0.42344534534553453453-0.42324534524553453453).setScale(yourScale, BigDecimal.ROUND_HALF_UP));
    }
2
задан Nikolai Ruhe 27 October 2009 в 14:54
поделиться

1 ответ

В отличие от латинских символов, каждая из которых имеет одно визуальное представление, каждый арабский персонаж может иметь много разных видов в зависимости от окружающих персонажей. Логические символы в арабской строке необходимо преобразовать в последовательность визуальных глифов, чтобы их можно было правильно отобразить. OpenGL не выполняет эту обработку для вас, поэтому вы видите обработанные логические символы без этой обработки.

Чтобы обойти это, вам нужно будет использовать библиотеку, такую ​​как Uniscribe чтобы преобразовать логическую строку в визуальную строку, которую вы затем передаете OpenGL для рендеринга. Здесь есть несколько образцов .

5
ответ дан GraemeF 22 August 2018 в 11:14
поделиться
  • 1
    очень информативный - спасибо – philsquared 27 October 2009 в 15:58
  • 2
    Спасибо за подсказки. Думаю, я смогу немного поработать над этим. – user 27 October 2009 в 16:19
Другие вопросы по тегам:

Похожие вопросы: