Локаль NumberFormat приводит к ошибке в PdfBox / Boxable - PullRequest
0 голосов
/ 16 июня 2020

У меня возникает странная ошибка в PdfBox 2.0.20 (+ Boxable 1.5) при использовании NumberFormat для получения символа € на одном компьютере. Однако на других машинах он работает без проблем.

NumberFormat currencyFormatter = NumberFormat.getCurrencyInstance(Locale.GERMANY);
BaseTable table = new BaseTable(...);
Row<PDPage> row = table.createRow(10f);
row.createCell(20, currencyFormatter.format(9.99));
float rowHeight = row.getHeight();

Это отлично работает на 3+ машинах уже более 2 лет. На новом p c я получаю сообщение об ошибке в последней строке при доступе к высоте:

java .lang.IllegalArgumentException: U + 00A0 ('nbspace') недоступно в кодировка этого шрифта Helvetica: WinAnsiEncoding

Сообщение об ошибке мне кажется странным. Я не использовал символ U + 00A0 и думаю, что проблема связана с символом €. Когда я использую Locale.US на новом p c, он использует $, и ошибка исчезает. Однако я хочу иметь возможность использовать немецкую валюту.

...