Преобразуйте строку с html-кодом в формат PDF, чтобы заполнить элемент itext, такой как абзац документа, с помощью itext5, xmlworker

Мне нужно преобразовать строку, чтобы заполнить элемент itext, как абзац. Я не хочу создавать новый документ о преобразовании, я просто хочу, чтобы он получил строку и возвратил что-то, что я мог бы добавить как часть документа PDF. Пример ввода, который мне нужно преобразовать:

<h1>Hello<h1></br>
<h3>This is a test to demonstrate a simple html code I just need to convert</h3>

1 ответ

Вы можете проанализировать вашу HTML-строку по элементам и добавить эти элементы в абзац (кстати, я восстановил вашу HTML-строку для тестов):

String html = "<h1>Hello</h1><br/>\n" + 
        "<h3>This is a test to demonstrate a simple html code I just need to convert</h3>";
String css = null;
ElementList elements = XMLWorkerHelper.parseToElementList(html, css);
Paragraph paragraph = new Paragraph();
for (Element element : elements) {
    paragraph.add(element);
}

(из теста CreatePdftestHtmlToParagraph)

После добавления этогоparagraphна iTextDocumentты получаешь:

С чуть более интереснымcss:

String css = "h1 { background-color: lightblue; font-size: 20pt} h3 {font-family: verdana; text-align: center; color: red;}";

ты получаешь

Другие вопросы по тегам