Как я могу использовать iText для преобразования HTML с изображениями и гиперссылками в PDF?

Я пытаюсь конвертироватьHTML вPDF используя iTextSharp вASP.NET веб-приложение, которое использует обаMVC, а также веб-формы,<img> а также<a> элементы имеют абсолютное иродственник URL-адреса и некоторые из<img> элементыbase64, Типичные ответы здесь в SO и результатах поиска Google используют общиеHTML вPDF код сXMLWorkerHelper это выглядит примерно так:

using (var stringReader = new StringReader(xHtml))
{
    using (Document document = new Document())
    {
        PdfWriter writer = PdfWriter.GetInstance(document, stream);
        document.Open();
        XMLWorkerHelper.GetInstance().ParseXHtml(
            writer, document, stringReader
        );
    }
}

Так с образцомHTML как это:

<div>
    <h3>HTML Works, but Broken in Converted PDF</h3>
    <div>Relative local <img>: <img src='./../content/images/kuujinbo_320-30.gif' /></div>
    <div>
        Base64 <img>:
        <img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==' />
    </div>
    <div><a href='/somePage.html'>Relative local hyperlink, broken in PDF</a></div>
<div>

Полученный PDF:(1) отсутствует все изображения, и(2) все гиперссылки с относительными URL не работают и используютсхема URI файла (file///XXX...) вместо того, чтобы указывать на правильный веб-сайт.

Некоторые ответы здесь в SO и другие из поиска Google рекомендуют заменять относительные URL-адреса абсолютными URL-адресами, чтовполне приемлемо для разовых случаев. Тем не менее, глобально заменяя все<img src> а также<a href> атрибуты с жестко закодированной строкойнеприемлемый на этот вопрос, поэтому, пожалуйста, не размещайте ответ, подобный этому, потому что он будет соответственно понижен.

Ищу решение, которое работает длямного различные веб-приложения, находящиеся в среде тестирования, разработки и производства.

Ответы на вопрос(2)

Ваш ответ на вопрос