在设置为我的MVC3应用程序动态生成PDF的方法时,我引用了this blog post。
我想一切正常,直到我想要将图像添加到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时,当应用尝试解析(Exception Occurred
)xml以生成pdf时,我收到textHandler.Parse(xmldoc);
错误。错误的内部异常状态:"The network path was not found.\r\n"
。我假设我遇到了这个问题,因为我不知道如何将图像包含在这个iTextSharpXML页面中,我无法找到有关如何操作的正确文档。
我只是想将图像置于PDF顶部 - 我应该如何正确地格式化?
更新
如果我将'image'标记更改为如下所示:
<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相同。
答案 0 :(得分:1)
您需要为图片标记
提供绝对网址<image url="http://myserver/Content/images/myImage.jpg"/>
答案 1 :(得分:1)
我有同样的问题,我能够使用此代码设置查看图像:
<image url="@Context.Server.MapPath("/Content/images/myImage.jpg")" />