J'essaie de rendre une page Web contenant des images dans un document pdf en utilisant ABCpdf. Ceci est fait à partir d'une application web.ABCpdf ne restitue pas les images dans une application Web sous IIS6
Lorsque j'exécute l'application sur mon ordinateur de développement dans IIS5, tout va bien. Lorsque je déploie l'application sur IIS6, les images n'apparaissent pas dans le pdf.
Pour reproduire le problème, j'ai fait une simple application web pour rendre un fichier pdf à partir d'une simple page web et j'ai découvert que les images qui ne sont pas locales sont celles qui n'apparaissent pas dans le pdf.
Le code correspondant qui interagit avec ABCpdf est:
Doc theDoc = new Doc();
theDoc.Rect.Inset(18, 18);
theDoc.HtmlOptions.PageCacheEnabled = false;
theDoc.HtmlOptions.PageCacheClear();
theDoc.HtmlOptions.UseNoCache = true;
theDoc.HtmlOptions.Timeout = 60000;
int theID = theDoc.AddImageUrl(theUrl);
while (true)
{
if (!theDoc.Chainable(theID)) break;
theDoc.Page = theDoc.AddPage();
theID = theDoc.AddImageToChain(theID);
}
for (int i = 1; i <= theDoc.PageCount; i++)
{
theDoc.PageNumber = i;
theDoc.Flatten();
}
theDoc.Save(location);
theDoc.Clear();
La page html que j'utilise pour le test est la suivante:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>Test page</title></head>
<body>
<p>This is a local image</p>
<img src="http://myserver/test/images/testimage.gif" />
<p>This is a remote image</p>
<img src="http://l.yimg.com/a/i/ww/beta/y3.gif" />
</body>
</html>
Je suis en train de rendre la page à cet url: http://myserver/test/testpage.html (le code ci-dessus) dans un pdf.
Dans IIS6, la deuxième image (qui n'est pas locale pour le serveur) n'apparaît pas dans le pdf.
Il semble que ce soit un problème avec les droits d'accès, mais je ne pouvais pas le comprendre.
Merci.
Avez-vous trouvé une solution à votre problème? – sptremblay
Non. Le projet a été abandonné quand même ... – Paul