在我看来相当异国情调。我们最近从Windows Server 2003升级/迁移到2008,现在看来在使用Doc.AddImageUrl()时无法呈现图像。 (保存pdf时,图像显示的尺寸正确,但IE8缺失的图像x显示出来。)
如果我理解正确的话,ABCpdf会在内部使用IE渲染来处理这类事情。
我们认为这可能是一个许可问题,但我们已经检查了IE ESC,并且似乎按照他们的建议进行了配置。有没有其他人遇到过类似的问题?也许需要代码配置?
不是整个片段,而是ABCpdf7的内容:
using (Doc doc = new Doc())
{
doc.HtmlOptions.PageCacheEnabled = false;
doc.HtmlOptions.UseNoCache = true;
doc.HtmlOptions.PageCacheClear();
doc.HtmlOptions.PageCachePurge();
doc.HtmlOptions.UseResync = true;
doc.HtmlOptions.ImageQuality = 25;
int pageID = doc.AddImageUrl(url + "&guid=" + url.GetHashCode());
while (true)
{
if (!doc.Chainable(pageID))
break;
doc.Page = doc.AddPage();
pageID = doc.AddImageToChain(pageID);
}
// file saving etc.
}
答案 0 :(得分:0)
从代码中提取单元测试以在多个环境中进行测试。原来我们的dev db服务器(这是唯一一个运行2008的服务器)能够以几乎完全相同的配置运行单元测试。
这些信息在手,我们能够将它缩小到生产中的dll。即使ABCpdf.dll是正确的(32位),64位的核心(ABCpdf7ce.dll)正在生产中。
我想因为组件的核心是COM(iirc),所以我们没有抛出任何错误。此外,我们能够从html,sans图像生成pdf这一事实对我来说很奇怪。
而且,最重要的是,我们的存储库中没有64位dll的记录,32位dll在我们的GAC中。据我所知,核心DLL仅用于构建,因此我们从受影响的环境中删除了这些dll并且似乎状况良好。