gpt4 book ai didi

itextsharp - 使用 iTextSharp.ShowTextAligned() 添加水印

转载 作者:行者123 更新时间:2023-12-01 11:44:34 31 4
gpt4 key购买 nike

我们想在发送之前在我们的 pdf 顶部添加一个带有用户电子邮件和名称的水印。我已经编写了执行此操作的代码,并且运行良好。我想检查这是否是最好的方法。我们希望在 pdf 的顶部将水印分成两行。

,我使用了两次具有不同“y”坐标的“ShowTextAligned()”来实现这一点。

    private MemoryStream StampPdf(string pdfPath, string name, string email)
{
var memoryStream = new MemoryStream();
var reader = new PdfReader(pdfPath);
var pageCount = reader.NumberOfPages;
var stamper = new PdfStamper(reader, memoryStream);

var textAngle = 0;
var fontSize = 14;
var font = BaseFont.CreateFont(BaseFont.TIMES_ROMAN, BaseFont.WINANSI, BaseFont.EMBEDDED);

var watermarkLine1 = "Personal use only for " + name;
var watermarkLine2 = "at " + email;


using (stamper)
{
for (var i = 1; i <= pageCount; i++)
{
var mediaBox = reader.GetPageSize(i);
var overContent = stamper.GetOverContent(i);
overContent.BeginText();
overContent.SetColorFill(BaseColor.RED);
overContent.SetFontAndSize(font, fontSize);
overContent.ShowTextAligned(PdfContentByte.ALIGN_LEFT, watermarkLine1, 10, mediaBox.Top - 20, textAngle);
overContent.ShowTextAligned(PdfContentByte.ALIGN_LEFT, watermarkLine2, 10, mediaBox.Top - 40, textAngle);
overContent.EndText();
}
}
reader.Close();
stamper.Close();
return memoryStream;
}

我想确认两件事:

  1. “是否可以使用 ShowTextAligned() 来换行到达行尾的文本?”

  2. “ShowTextAligned() 是否支持回车/换行?”

谢谢,

-萨玛

最佳答案

问题 1 的答案:不,您需要 ColumnText 对象来做到这一点。

问题 2 的答案:不,showTextAligned() 会忽略换行符。

关于itextsharp - 使用 iTextSharp.ShowTextAligned() 添加水印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16575404/

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