добавить закрывающий тег в HtmlElement (HtmlUnit) - PullRequest
0 голосов
/ 27 декабря 2011

Я хочу преобразовать HTML-страницу в PDF.Но в HtmlPage есть много тегов, которые не были закрыты как:

< hr >
< br >

Поэтому я не смог создать PDFКак я могу закрыть эти теги с помощью HtmlUnit на Java.То, что я хочу, это:

<hr />
<br /> 

Спасибо

Ответы [ 3 ]

0 голосов
/ 28 декабря 2011

На самом деле эти теги не должны иметь закрывающий тег. Взгляните на это:

http://www.w3schools.com/html5/tag_br.asp

http://www.w3schools.com/html5/tag_hr.asp

0 голосов
/ 29 декабря 2011

Спасибо за ответы, я был не прав.Проблема была не в этих HTML-тегах.Поскольку html-страница, которую я хотел преобразовать, содержала недопустимые символы xml, поэтому я не смог ее преобразовать.

Я нашел решение, используя XMLChar.isValid метод библиотеки Xerces.Кроме того, мне пришлось удалить все теги script и style htmlpage с этим кодом:

final DomNodeList<HtmlElement> scriptElements = html.getElementsByTagName("script");
if (!scriptElements.isEmpty()){
    for (HtmlElement scriptElement : scriptElements){   
        scriptElement.removeAllChildren();
    }
}
0 голосов
/ 27 декабря 2011

Вы можете использовать HTML Tidy для исправления HTML. Библиотека Java: JTidy . JTidy может быть настроен для производства XHTML.

...