c# - 如何使用 itextsharp 并排放置两个表

标签 c# asp.net pdf-generation itextsharp

我必须创建一个包含两个表格的 pdf 文件。并且这两个表应该水平放置在文档中。我已经尝试过这样,

   var doc1 = new Document(PageSize.A4);
   PdfWriter.GetInstance(doc1, new FileStream(path + "/" + pdf_name + "", FileMode.Create));
            doc1.Open();

  var table1 = new PdfPTable(1); //table1
           table1.HorizontalAlignment = Element.ALIGN_LEFT;
           table1.SpacingBefore = 50;
           table1.DefaultCell.Border = 1;
           table1.WidthPercentage = 40;
            PdfPCell cell = new PdfPCell(new Phrase(student_name, boldTableFont));
           // cell.Border = 1;
           // cell.HorizontalAlignment = 1; //0=Left, 1=Centre, 2=Right
              cell.HorizontalAlignment = Element.ALIGN_CENTER;
            table1.AddCell(cell);
            doc1.Add(table1);


           var table2= new PdfPTable(1); //table2

           table2.DefaultCell.Border = 1;
           table2.HorizontalAlignment = 2;

           table2.SpacingBefore = 50;
           table2.WidthPercentage = 40;

              PdfPCell cell21 = new PdfPCell(new Phrase("success", body));
             cell21.HorizontalAlignment = 1; //0=Left, 1=Centre, 2=Right
             table2.AddCell(cell21);
           doc1.Add(table2);
           doc1.Close();

但是第二个表没有出现在 table1 的右侧,spacingbefore=50。请帮助我找出问题

最佳答案

您可能需要考虑更新您的布局以使用列(有关更多详细信息,请参见此处):

http://www.mikesdotnetting.com/Article/89/iTextSharp-Page-Layout-with-Columns

如果没有详细了解您的布局,很难说哪种基于列的布局最好。

或者,您可以完全定位表格并以这种方式编写它们。


作为第三种选择(非常像旧的 html 页面),您可以像这样嵌套表格:

PdfPTable outer = new PdfPTable(2);

outer.AddCell(table1);

outer.AddCell(table2);

document.Add(outer);

关于c# - 如何使用 itextsharp 并排放置两个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20652158/

相关文章:

Android PdfDocument 文件大小

iphone - UIView renderInContex 具体位置

c# - 将数据从 Excel 文件传输到 MySQL 表

ASP.Net HTTP2 PushPromise 很慢

Python:使用 Reportlab Canvas 在 PDF 中打印 Html

c# - 使用 WebDeploy 发布 Web 应用程序时如何在数据库上自动运行 Code First 迁移

c# - 下载并在后台显示来自 URL 的图像

C# foreach 循环 - 顺序*稳定性*得到保证吗?

c# - 如何使用 System.Text.Json 正确反序列化具有 IReadOnlyCollection<T> 的类?

c# - Unity 5 Windows Phone 8 游戏在 wp8 设备中启动时崩溃