ABCPdf Microsoft XPS-принтер

Я использую ABCPdf, чтобы получить PDF-файл из некоторого HTML-кода. Пока разрабатывал все отлично работало, сейчас устанавливаю на сервер не работает. Это исключение

WebSupergoo.ABCpdf8.Internal.PDFException: ABCpdf не может обнаружить принтеры. Для работы Gecko Engine в системе должен быть установлен принтер. Обычно достаточно XPS Document Writer. Попробуйте также запустить службу в качестве интерактивного пользователя.

У меня на компе установлен MS Office, на сервере нет.

Итак, мои вопросы:

  • Можно ли в любом случае (с ABCpdf) создать PDF-файл с использованием метода Doc.AddImageHtml без принтера MS XPS?
  • Если нет, можно ли как-нибудь установить принтер XPS без установки офиса?

Спасибо!


person Diego    schedule 24.06.2011    source источник


Ответы (3)


Я обнаружил, что если я перейду на использование MSHtml Engine для рендеринга HTML, у меня не будет проблем с сервером.

Этот механизм рендеринга не работает с IE9 + .NET framework 4 + ASP.NET и не работает с веб-формами. (собственно мой случай). К счастью, на сервере стоит Windows Server 2003, поэтому на нем нет IE9. Обратите внимание, что по ссылке нужно перейти в раздел

ABCpdf

а потом к вопросу

6.29 - Преобразование HTML с установленным IE9, я вижу исключение: «ABCpdf не удалось запустить механизм MSHtml для этой установленной версии Internet Explorer».

Это единственное решение, которое у меня есть прямо сейчас, но если у кого-то есть решение, которое заставляет ABCPdf работать без Microsoft XPS Printer и не имеет проблем с IE9, это будет очень ценно.

person Diego    schedule 24.06.2011
comment
Последняя версия ABCpdf сняла требования к принтеру для механизма Gecko, и поддержка IE9 для MSHtml теперь должна просто работать. (Полное раскрытие: бла-бла-бла;) - person kizzx2; 26.10.2011

Пакет XPS Essentials Pack для сервера 2003, который включает драйвер XPS, можно загрузить с сайта http://www.microsoft.com/download/en/details.aspx?id=11816

Если ваш сервер 2000, он не будет работать, однако сообщение об ошибке намекает, что любой драйвер будет работать. Откройте папку «Принтеры» и в меню «Файл» выберите «Свойства сервера», перейдите на вкладку «Драйверы» и добавьте любой драйвер PostScript. Я предполагаю, что компонент полагается на установленный драйвер принтера для получения ширины шрифта.

person Tony Edgecombe    schedule 25.06.2011

В последних версиях Windows и .NET XPS Document Writer будет автоматически установлен. Вы можете попробовать переустановить его: http://forums.techarena.in/vista-help/782555.htm

person kizzx2    schedule 27.07.2011