We have a header that appears in PDF but not sure how many lines the header will have.
So we need to set the page margin in such a way that the header text does not overlap.
is this possible ?
We have a header that appears in PDF but not sure how many lines the header will have.
So we need to set the page margin in such a way that the header text does not overlap.
is this possible ?
Hi there,
Document pdf = new Document();
Page page = pdf.getPages().add();
page.OnBeforePageGenerate.add(new BeforePageGenerate() {
public void invoke(Page page) {
onPageGenerate(page);
}});
TextFragment text = new TextFragment("Aspose.Pdf for Java");
for (int i = 0; i < 400; i++)
{
page.getParagraphs().add(text);
}
pdf.save(myDir+"Headerfooter_DOM.pdf");
-------
public static void onPageGenerate(Page page)
{
if (page.getNumber() == 1)
{
page.setFooter(new com.aspose.pdf.HeaderFooter());
page.getFooter().setMargin (new MarginInfo());
page.getFooter().getMargin().setLeft (50);
page.getFooter().getMargin().setRight (50);
page.getFooter().getMargin().setTop (30);
page.getFooter().getMargin().setBottom (10);
TextFragment footerText = new TextFragment();
TextSegment footerSegment = new TextSegment("First page");
footerSegment.getTextState().setFontSize (12);
footerSegment.getTextState().setHorizontalAlignment (HorizontalAlignment.Center);
footerText.getSegments().add(footerSegment);
footerText.getTextState().setHorizontalAlignment (HorizontalAlignment.Center);
page.getFooter().getParagraphs().add(footerText);
}
else
{
page.setFooter(new com.aspose.pdf.HeaderFooter());
page.getFooter().setMargin (new MarginInfo());
page.getFooter().getMargin().setLeft (50);
page.getFooter().getMargin().setRight (50);
page.getFooter().getMargin().setTop (30);
page.getFooter().getMargin().setBottom (10);
TextFragment footerText = new TextFragment();
TextSegment footerSegment = new TextSegment("Subsequent page $p / $P");
footerSegment.getTextState().setFontSize (12);
footerSegment.getTextState().setHorizontalAlignment (HorizontalAlignment.Center);
footerText.getSegments().add(footerSegment);
footerText.getTextState().setHorizontalAlignment (HorizontalAlignment.Center);
page.getFooter().getParagraphs().add(footerText);
}
}