gpt4 book ai didi

c# - itextsharp pdfpcell垂直对齐问题

转载 作者:行者123 更新时间:2023-11-30 12:52:17 27 4
gpt4 key购买 nike

如何使两个单元格垂直对齐在一起。目前,第二个单元格呈现在第一个单元格下方。第一个单元格是图像,第二个单元格是文本。这是我的代码。

    private Document pdoc;
Font font99 = FontFactory.GetFont("HELVETICA", 60);
PdfPTable pdfRatingTable = new PdfPTable(2);
PdfPCell pRatCell = null;
pdfRatingTable.WidthPercentage = 100;
pdfRatingTable.SetWidths(new int[] { 75, 25 });

hImage = iTextSharp.text.Image.GetInstance(MapPath("~/Images/fyler3_Rating.jpg"));
NewWidth = 338;
MaxHeight = 18;
if (hImage.Width <= NewWidth)
{
NewWidth = hImage.Width;
}
NewHeight = hImage.Height * NewWidth / hImage.Width;
if (NewHeight > MaxHeight)
{
NewWidth = hImage.Width * MaxHeight / hImage.Height;
NewHeight = MaxHeight;
}

ratio = hImage.Width / hImage.Height;
hImage.ScaleAbsolute(NewWidth, NewHeight);
pRatCell = new PdfPCell(hImage);
pRatCell.Border = 0;
pRatCell.PaddingLeft = 20f;
pRatCell.HorizontalAlignment = Element.ALIGN_LEFT;
pdfRatingTable.AddCell(pRatCell);

pRatCell = new PdfPCell(new Phrase(new Chunk("405", font99)));
pRatCell.HorizontalAlignment = Element.ALIGN_LEFT;
pRatCell.Border = 0;
pRatCell2.VerticalAlignment = Element.ALIGN_TOP;
pdfRatingTable.AddCell(pRatCell);
pdoc.Add(pdfRatingTable);

最佳答案

看起来您的图像比表格中单元格的最大宽度宽(加上相当大的填充),因此下一个单元格出现在下一行。

我建议用小得多的图像(或较小比例的相同图像)试试这个,看看我是否正确。


或者说“下方”是指它们都在同一行,但文本出现在单元格的底部,而图像位于中间,周围有一个 20 磅的填充,因此文本完全图片下方?

IIRC,Paragraph 将占据整个单元格,但 Chunk 将遵循单元格的垂直和水平对齐设置。查看 my answer here 中的评论.

关于c# - itextsharp pdfpcell垂直对齐问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4888877/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com