Я пытаюсь создать PDF-файл, используя iText.
Файл создается очень хорошо, но я могу использовать специальные символы, такие как немецкий ä, ö, ...
Предложение, которое я хочу написать (например)
■ ... ä ... ö ...
но вывод
â– ... ä ... ¶¶ ...
(Мне нужно было как-то размыть предложения, но я думаю, вы понимаете, о чем я говорю ...)
Каким-то образом этот черный блок-блок и все "Умляут" не могут быть сгенерированы ...
Используется следующий шрифт:
private static Font smallBold = new Font(Font.FontFamily.TIMES_ROMAN, 12,
Font.BOLD);
Так что не должно быть проблем с шрифтом, не имеющим этих символов ...
Я использую IntelliJ Idea для разработки, кодировка файла .java установлена в UTF-8, поэтому проблем тоже не должно быть ...
Я как бы потерялся здесь; Кто-нибудь знает, что я могу сделать, чтобы заставить его работать?
Заранее спасибо и приветствую
gilaras
--------------- UPDATE ---------------
Так вот (часть) код:
@Controller
public class Generator {
...
Font font = new Font(Font.FontFamily.TIMES_ROMAN, 9f, Font.BOLD);
...
Paragraph intro = new Paragraph("Ich interessiere mich für ...!", font_12_bold);
Paragraph wantContact = new Paragraph("■ Ich hätte gerne ... ", font);
...
Phrase south = new Phrase("■ Süden □ Ost-West ...");
...
@RequestMapping(value = "/generatePdf", method = RequestMethod.POST)
@ResponseBody
public String generatePdf(HttpServletRequest request) throws IOException, DocumentException, com.lowagie.text.DocumentException {
Document document = new Document();
PdfWriter.getInstance(document, new FileOutputStream(FILE));
addMetaData(document);
document.open();
addContent(document, request);
document.add(new Paragraph("äöü"));
document.close();
return "";
}
private void addContent(Document document, HttpServletRequest request)
throws DocumentException {
Paragraph preface = new Paragraph();
preface.setAlignment(Element.ALIGN_JUSTIFIED);
addEmptyLine(preface, 1);
preface.add(new Paragraph("Rückantwort", catFont));
addEmptyLine(preface, 2);
preface.add(intro);
addEmptyLine(preface, 1);
if (request.getParameter("dec1").equals("wantContact")) {
preface.add(wantContact);
} else {
...
}
document.add(preface);
}
private static void addEmptyLine(Paragraph paragraph, int number) {
for (int i = 0; i < number; i++) {
paragraph.add(new Paragraph(" "));
}
}
private static void addMetaData(Document document) {
document.addTitle("...");
document.addSubject("...");
document.addKeywords("...");
document.addAuthor("...");
document.addCreator("...");
}
}
Мне пришлось кое-что взять, но я сохранил некоторые умлаут-символы и другие специальные символы, чтобы вы могли видеть, где возникает проблема ...: -)