2017-08-29 5 views
0

Je crée un document avec Aspose.Word. J'essaie d'ajouter le numéro de page dans la marge de droite. Image mieux expliquer:Aspose.Numéro de page dans la marge de droite

My result pdf preview

Comment le faire?

Mon code actuel:

var document = new Document(); 
     _builder = new DocumentBuilder(document) 
     { 
      PageSetup = 
      { 
       Orientation = Orientation.Portrait, 
       PaperSize = PaperSize.A4, 
       RightMargin = ConvertUtil.MillimeterToPoint(20), 
       BottomMargin = ConvertUtil.MillimeterToPoint(35), 
       LeftMargin = ConvertUtil.MillimeterToPoint(35), 
       TopMargin = ConvertUtil.MillimeterToPoint(35) 
      } 
     }; 

     _builder.StartTable(); 
     _builder.InsertCell(); 
     _builder.Write("Test test test"); 
     _builder.EndTable(); 

     _builder.MoveToHeaderFooter(HeaderFooterType.FooterPrimary); 
     _builder.Write("Pages: "); 
     _builder.InsertField("PAGE", ""); 
     _builder.Write("/"); 
     _builder.InsertField("NUMPAGES"); 
     document.Save(stream, SaveFormat.Pdf); 

Répondre

0

Dans votre cas, vous devez ajouter zone de texte dans le pied de page du document, insérez champ du numéro de page, et définir sa position. Veuillez utiliser l'exemple de code modifié suivant pour obtenir la sortie désirée.

var document = new Document(); 
DocumentBuilder _builder = new DocumentBuilder(document) 
{ 
    PageSetup = 
    { 
     Orientation = Orientation.Portrait, 
     PaperSize = Aspose.Words.PaperSize.A4, 
     RightMargin = ConvertUtil.MillimeterToPoint(20), 
     BottomMargin = ConvertUtil.MillimeterToPoint(35), 
     LeftMargin = ConvertUtil.MillimeterToPoint(35), 
     TopMargin = ConvertUtil.MillimeterToPoint(35) 
    } 
     }; 

_builder.StartTable(); 
_builder.InsertCell(); 
_builder.Write("Test test test"); 
_builder.EndTable(); 

_builder.MoveToHeaderFooter(HeaderFooterType.FooterPrimary); 

Shape shape = new Shape(document, ShapeType.TextBox); 
shape.Stroked = false; 
shape.Width = _builder.CurrentSection.PageSetup.PageWidth; 
shape.Height = 50; 
shape.Left = 0; 
shape.Left = - _builder.CurrentSection.PageSetup.LeftMargin; 
shape.Top = 0; 

Paragraph paragraph = new Paragraph(document); 
shape.AppendChild(paragraph); 

_builder.InsertNode(shape); 
_builder.MoveTo(paragraph); 
_builder.ParagraphFormat.Alignment = ParagraphAlignment.Right; 
_builder.Write("Pages: "); 
_builder.InsertField("PAGE", ""); 
_builder.Write("/"); 
_builder.InsertField("NUMPAGES"); 
document.Save(MyDir + "output.pdf", SaveFormat.Pdf); 

Je travaille avec Aspose en tant qu'évangélisateur développeur.