如何使用WebMatrix中的图像添加到表格单元格中iTextSharp的(How to add a

2019-09-03 17:31发布

我已经作出了表与细胞和有意在细胞中的一个具有的图像。 下面是我的代码:

doc.Open();
PdfPTable table = new PdfPTable(2);
table.TotalWidth = 570f;
table.LockedWidth = true;
table.HorizontalAlignment = 1; //0=Left, 1=Centre, 2=Right

PdfPCell points = new PdfPCell(new Phrase("and is therefore entitled to 2 points", arialCertify));
points.Colspan = 2;
points.Border = 0;
points.PaddingTop = 40f;
points.HorizontalAlignment = 1;//0=Left, 1=Centre, 2=Right
table.AddCell(points);

 // add a image



doc.Add(table);
Image jpg = Image.GetInstance(imagepath + "/logo.jpg");
doc.Add(jpg);

与上面的代码,图像显示在我的PDF,但我希望它是一个细胞内,这样我可以添加更多的细胞图像的右侧。

Answer 1:

在非常基本的水平,你可以将图像简单地添加到PdfPCell该细胞添加到您的表。

因此,使用你的代码...

PdfPCell points = new PdfPCell(new Phrase("and is therefore entitled to 2 points", arialCertify));
points.Colspan = 2;
points.Border = 0;
points.PaddingTop = 40f;
points.HorizontalAlignment = 1;//0=Left, 1=Centre, 2=Right

 // add a image
iTextSharp.text.Image jpg = iTextSharp.text.Image.GetInstance(imagepath + "/logo.jpg");
PdfPCell imageCell = new PdfPCell(jpg);
imageCell.Colspan = 2; // either 1 if you need to insert one cell
imageCell.Border = 0;
imageCell.setHorizontalAlignment(Element.ALIGN_CENTER);


table.AddCell(points);
 // add a image
table.AddCell(imageCell);

doc.Add(table);

更新

检查您imagepath 。 这应该是对图像的绝对路径,而不是相对就像在一个网站的页面。 此外,你的`/logo.jpg改变”到 '\ logo.jpg'

这是假设imagepath实际上是目录,而不是实际的图像...

IE

Server.MapPath(imagepath) + "\\logo.jpg"


文章来源: How to add an image to a table cell in iTextSharp using webmatrix