У меня проблема с кодировкой iText (http://www.lowagie.com/iText/). Я загружаю данные из базы данных и вставляю их в виде html в pdf с iText, по какой-то причине мои неанглийские (финские, ö и т. Д.) Символы не отображаются правильно. Следующий пример показывает, как вставить текст в HTML:
text = "<p>" + data + "</p>";
HTMLWorker htmlWorker = new HTMLWorker(doc);
InputStream is = new ByteArrayInputStream(text.getBytes());
InputStreamReader isr = new InputStreamReader(is);
htmlWorker.parse(isr);
ОБНОВЛЕНИЕ: Если нужно добавить, что он работает в моей системе Windows Vista, но не в системе Linux.