Как проверить, что в документе нет страниц - PullRequest
3 голосов
/ 23 марта 2012

Я пытаюсь использовать iTextSharp для преобразования некоторых HTML-писем из Outlook в PDF.Некоторые письма создают проблемы для HTMLWorker, генерируя исключения.

В случае, если это произойдет, я хочу перехватить исключение и отказаться от создания PDF.Но я не могу.Что мне нужно сделать, чтобы проверить и правильно закрыть открытый Document?

Ответы [ 2 ]

3 голосов
/ 23 марта 2012

Непосредственно перед вызовом Close() вы можете проверить свойство PageNumber вашего Document, чтобы увидеть, есть ли какие-либо страницы.

if (doc.PageNumber == 0) {
    //Do something here
}
doc.Close();

Также, класс HTMLWorker не активно развивается больше .Вместо этого почти весь новый код синтаксического анализа HTML выполняется в отдельной библиотеке под названием XMLWorker.См. пример кода @ kuujinbo здесь .

0 голосов
/ 12 апреля 2013

Начните с новой страницы и добавьте свои абзацы:

Document document = new Document();

document.Open();

foreach (var item in List)
{
   document.NewPage();
   AddParagraph(item, document);
}

document.Close();
...