Magick.NET-Q16-AnyCPU和iis服务器



我有这个问题:

1) 我已经在VS2010中通过NUGET下载了Magick.NET-Q16-AnyCPU。2) 我为读取远程svg创建了这个函数,并将其转换为itextSharp.text.Image对象,如下所示:

iTextSharp.text.Image headeImage = null;
using (MagickImage image= new MagickImage(linksvgremote))
{ 
   Percentage percent = new Percentage(55);
   image.Resize(percent);
   headeImage = iTextSharp.text.Image.GetInstance(image.ToByteArray(MagickFormat.Png));
}

Javascript函数是:

 ApriDialogCaricamento();  
  var datiInput = {};
    datiInput.idTipo = idtipo;
    datiInput.clearEngine = clearengine;
    datiInput.nomeFileSvg = numfile;
    var jsonData = JSON.stringify(datiInput);
    var xhr = new XMLHttpRequest();
    xhr.onreadystatechange = function () {
        if (this.readyState == 4 && this.status == 200) {
            ChiudiDialogCaricamento();
            var url = window.URL || window.webkitURL;
            window.open(url.createObjectURL(this.response));
        }
    }
    xhr.open('POST', 'handlers/generaDatiTecniciPDF.ashx');
    xhr.responseType = 'blob';
    xhr.setRequestHeader('Content-Type', 'application/pdf');
    xhr.send(jsonData); 

它在本地运行良好,但当我上传到iis服务器上时,javascript函数会返回以下字符串:

加载资源失败服务器响应状态为500(内部服务器错误)

也就是说,问题出在上面描述的函数中。。。。我知道它,因为如果我评论它,它可以工作,但不能生成svg转换的图像。

如何在服务器上解决此问题?

感谢

Mike

您很可能会出现此异常,因为您没有对用于存储嵌入dll的目录的写入权限。根据运行Magick.NET的平台,它会将x86或x64 dll写入临时目录。目录的位置为MagickAnyCPU.CacheDirectory将此属性设置为应用程序可以写入的文件夹可能会解决此问题。

相关内容

  • 没有找到相关文章

最新更新