我正在尝试向pdf文档添加新页面,但由于某种原因,这种情况并未发生。也许我的另一个问题https://stackoverflow.com/questions/11428878/itextsharp-splitlate-not-working与此有关,因为此问题中的表不会中断并且不会创建新页面。 这是我添加新页面的代码:
Document doc = new iTextSharp.text.Document(iTextSharp.text.PageSize.A4.Rotate(),20,20,20,40);
string rep1Name; // variable to hold the file name of the first part of the report
rep1Name = Guid.NewGuid().ToString() + ".pdf";
FileStream output = new FileStream(System.Web.HttpContext.Current.Server.MapPath("~/ReportGeneratedFiles/reports/" + rep1Name), FileMode.Create);
PdfWriter pdfWriter = PdfWriter.GetInstance(doc, output);
doc.Open();
doc.NewPage();
doc.NewPage();
doc.Close();
答案 0 :(得分:3)
只需拨打newPage()
即可添加任何空白页面
你需要让作者知道页面是空的。
示例:请参阅使用Java的NewPage Example。希望同样的方法也适用于C#。
public class PdfNewPageExample
{
// throws DocumentException, FileNotFoundException
public static void main( String ... a ) throws Exception
{
String fileHome = System.getProperty( "user.home" ) + "/Desktop/";
String pdfFileName = "Pdf-NewPage-Example.pdf";
// step 1
Document document = new Document();
// step 2
FileOutputStream fos = new FileOutputStream( fileHome + pdfFileName );
PdfWriter writer = PdfWriter.getInstance( document, FileOutputStream );
// step 3
document.open();
// step 4
document.add( new Paragraph( "This page will NOT be followed by a blank page!" ) );
document.newPage();
// we don't add anything to this page: newPage() will be ignored
document.newPage();
document.add( new Paragraph( "This page will be followed by a blank page!" ) );
document.newPage();
writer.setPageEmpty( false );
document.newPage();
document.add( new Paragraph( "The previous page was a blank page!" ) );
// step 5
document.close();
System.out.println( "Done ..." );
} // psvm( .. )
} // class PdfNewPageExample