我想从我的 ASP.NET Web 窗体应用程序中使用 iTextSharp 生成一个 pdf,该应用程序包含一个包含 2 列和所需行数以及其中的图像和文本的表。但目前,我可以在一个单元格中添加图像或文本,而不是两者。下面是我想要的格式的 HTML 标记示例:
<table align="center" style="border-spacing:20px;">
<tr>
<td>
<label style="display:block;text-align:center;">Corvette</label>
<br />
<img src="QrCodes/Ibrahim.jpg" />
</td>
<td>
<label style="display:block;text-align:center;">Mercedes</label>
<br />
<img src="QrCodes/Amazon.jpg" />
</td>
</tr>
</table>
如何从我的代码后面创建这种格式?它可以来自 HTML 字符串或使用 iTextSharp 对象。无论哪个让它工作。任何建议表示赞赏。
当前代码:
PdfWriter.GetInstance(doc, new FileStream(filePath, FileMode.Create));
doc.Open();
PdfPTable table = new PdfPTable(2);
System.Drawing.Image image = System.Drawing.Image.FromFile(Server.MapPath(@item.ItemQrCode));
iTextSharp.text.Image pdfImage = iTextSharp.text.Image.GetInstance(image, ImageFormat.Jpeg);
pdfImage.Alignment = iTextSharp.text.Image.UNDERLYING;
Phrase phrase = new Phrase(item.ItemName);
PdfPCell cellText = new PdfPCell(phrase);
cellText.HorizontalAlignment = Element.ALIGN_CENTER;
cellText.VerticalAlignment = Element.ALIGN_MIDDLE;
PdfPCell cellImage = new PdfPCell(pdfImage);
cellImage.HorizontalAlignment = Element.ALIGN_CENTER;
cellImage.VerticalAlignment = Element.ALIGN_MIDDLE;
table.AddCell(cellImage);
doc.Add(table);
doc.Close();