Aspose.Pdf.TextStamp перекрывается с ранее добавленным текстом. Как можно предотвратить это?
Вот код, который я использую для подготовки документа:
StringBuilder htmlPage = new StringBuilder();
//put here the html from https://pastebin.com/c6Hu4nV5
//instead of the `text foo`
htmlPage.Append("text foo");
byte[] bytes = Encoding.UTF8.GetBytes(htmlPage.ToString());
var streamHtml = new MemoryStream(bytes)
var objLoadOptions = new Aspose.Pdf.HtmlLoadOptions(0, 50, 0, 0);
var doc = new Aspose.Pdf.Document(streamHtml, objLoadOptions);
Вот код, который я использую для номеров страниц (которые являются штампами в моем контексте) дополнение:
foreach (var page in doc.Pages)
{
Aspose.Pdf.Facades.FormattedText formattedText = new Aspose.Pdf.Facades.FormattedText(idAndVersion + page.Number + "-" + doc.Pages.Count,
Color.Black, Aspose.Pdf.Facades.FontStyle.Helvetica, Aspose.Pdf.Facades.EncodingType.Identity_h,
true, 12F);
var textStamp = new Aspose.Pdf.TextStamp(formattedText)
{
VerticalAlignment = Aspose.Pdf.VerticalAlignment.Bottom,
HorizontalAlignment = Aspose.Pdf.HorizontalAlignment.Left,
LeftMargin = 50,
BottomMargin = 20
};
page.AddStamp(textStamp);
}
Я использую штампы как способ добавления номеров страниц. Может быть, есть лучший способ сделать это?
Я пытался найти лучший способ для здесь , но безуспешно.
После того, как я добавлю номера страниц, вот что я делаю:
using (var streamPdf = new MemoryStream())
{
doc.Save(streamPdf, Aspose.Pdf.SaveFormat.Pdf);
return streamPdf.GetBuffer();
}