HTMLWorker + iText

0

Witam,
mam następujący problem. Z jEditorPane pobieram do bazy html. Wygląda on następująco:

 
<html>
  <head>
    
  </head>
  <body>
    <p style="margin-top: 0">
      &#261;&#347;&#380;&#378;&#263;&#322;&#243;&#281;
    </p>
    <p style="margin-top: 0">
      <i><b>&#261;&#347;&#380;&#378;&#263;&#322;&#243;&#281;&#281;</b></i>
    </p>
  </body>
</html>

Potem mam następującą metodę do której String owego HTMLa przekazuję:

 
private static Paragraph parseHtmlToPdfDescription(String description) {
        try {
            StringReader strReader = new StringReader(description);
            List p = HTMLWorker.parseToList(strReader, null);
            Paragraph paragraph = new Paragraph();
            BaseFont helvetica = BaseFont.createFont(BaseFont.TIMES_ROMAN, BaseFont.CP1250, BaseFont.EMBEDDED);
            for (int k = 0; k < p.size(); ++k) {
                paragraph.add((com.itextpdf.text.Element) p.get(k));
                paragraph.setFont(new Font(helvetica, 8, Font.NORMAL)); //moje próby z ustawianiem czcionki
            }
            return paragraph;
        } catch (DocumentException ex) {
            Logger.getLogger(PrintPdfCompanyTask.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(PrintPdfProjectTask.class.getName()).log(Level.SEVERE, null, ex);
        }
        return null;
    }

Niestety w PDF nie widać znaków > 255, czyli widać tylko ó(&#243).
Jak uzyskać pozostałe polskie znaki? Do tworzenia PDF używam iText.

Byłbym wdzięczny za pomoc.

0

Trzeba zdobyć plik ttf wybranej czcionki, np. z folderu C:\WINDOWS\Fonts

Zarejestrować czcionkę:
FontFactory.register("/WEB-INF/resources/TAHOMABD.TTF");

Stworzyć obiekt czcionki:
BaseFont baseFont = BaseFont.createFont(
"/WEB-INF/resources/TAHOMA.TTF", BaseFont.IDENTITY_H,
BaseFont.NOT_EMBEDDED);

Wpisywać go do Paragraph :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1