2012-06-27 56 views
1

当我设置了一种为我的MVC3应用程序动态生成PDF的方法时,我引用了this blog post在使用iTextSharp时插入图像到PDF中很困难

我得到了一切工作正常,直到我想添加图像到PDF。

这是我确切认为,功能正常,不带图像:

@model MyApp.Models.Student 

@{ 
    Layout = null; 
} 


<?xml version="1.0" encoding="UTF-8" ?> 
<itext creationdate="2/4/2013 5:49:07 PM" producer="iTextSharpXML"> 
    <paragraph leading="18.0" font="unknown" size="16.0" align="Center"> 
     <chunk>Orders in PDF</chunk> 
    </paragraph> 
    <paragraph leading="18.0" font="unknown" size="10.0" align="Center"> 
     <chunk>First Name: @Html.DisplayFor(model => model.FirstMidName) </chunk><newline /> 
     <chunk>Last Name: @Html.DisplayFor(model => model.LastName)</chunk><newline /> 
    </paragraph> 
    <paragraph leading="18.0" font="unknown" size="10.0" align="Default"> 
    <chunk font="unknown" size="12.0">Orders:</chunk><newline /> 
    </paragraph> 
</itext> 

这是我在尝试使用包括图像:

<?xml version="1.0" encoding="UTF-8" ?> 
<itext creationdate="2/4/2013 5:49:07 PM" producer="iTextSharpXML"> 
    <paragraph leading="18.0" font="unknown" size="16.0" align="Default"> 
     <chunk>Orders in PDF</chunk> 
     <image url="/Content/images/myImage.jpg" plainwidth="194.0" plainheight="202.0" /> 
    </paragraph> 
    <paragraph leading="18.0" font="unknown" size="10.0" align="Default"> 
     <chunk>First Name: @Html.DisplayFor(model => model.FirstMidName) </chunk><newline /> 
     <chunk>Last Name: @Html.DisplayFor(model => model.LastName)</chunk><newline /> 
    </paragraph> 
    <paragraph leading="18.0" font="unknown" size="10.0" align="Default"> 
    <chunk font="unknown" size="12.0">Orders:</chunk><newline /> 
    </paragraph> 
</itext> 

当试图生成的PDF图像,当应用程序尝试解析(textHandler.Parse(xmldoc);)xml以生成PDF时,我得到一个Exception Occurred错误。错误的内部异常状态:"The network path was not found.\r\n"。我假设我遇到了这个问题,因为我不知道如何将图像包含到iTextSharpXML页面中,并且无法找到有关如何操作的适当文档。

我只想将图像置于PDF的顶部 - 我应该如何正确地格式化它?

更新

如果我改变我的“形象”的标签,看起来像这样:

<paragraph leading="18.0" font="unknown" size="16.0" align="Center"> 
    <chunk>Orders in PDF</chunk> 
    <img src="/Content/images/myImage.jpg" /> 
</paragraph> 

我可以生成PDF,但似乎没有图像 - 没有错误,但它看起来相同作为没有图像的第一个pdf。

回答

1

你需要给的绝对URL图像标签

<image url="http://myserver/Content/images/myImage.jpg"/> 
1

我有同样的问题,我能够看到使用此代码建立了一个形象:

<image url="@Context.Server.MapPath("/Content/images/myImage.jpg")" /> 
相关问题