работа с itextsharp XMLWorkerHelper.ParseXHTML строгое поведение - PullRequest
0 голосов
/ 24 марта 2012

При попытке использовать XMLWorkerHelper.GetInstance (). ParseXHTML () я обнаружил, что это действительно строго.Любой неправильный порядок тегов или закрытые теги приведут к возникновению исключения.

Я конвертирую HTML, который не могу контролировать.

Существуют ли какие-либо флаги, чтобы сделать его менее строгим?Входной интерфейс обратного вызова для обработки забавной разметки?Что-нибудь в itextsharp.tools.xml.html?Или совершенно новая библиотека, совместимая с itextsharp.text.IElement?

1 Ответ

1 голос
/ 26 марта 2012

Название класса и тот метод в значительной степени суммируют его - вы не можете.Весь конвейер основан на предположении, что будет передан действительный XML-документ, все остальное вызовет исключение.Вы можете настроить конвейер и добавить свои собственные обработчики для таких вещей, как разрешение ссылок, пользовательские свойства CSS и новые теги HTML, но ядро ​​процессора документов по-прежнему нуждается в корректном HTML.

Я бы порекомендовал изучить запуск вашегоHTML через библиотеку, которая может конвертировать его в XHTML .

EDIT

Также ознакомьтесь с wkhtmltopdf .Он использует webkit для рендеринга HTML и выполняет (по-видимому) довольно хорошую работу.

...