标签: pdfptable

如何在ItextSharp中设置PdfPCell的宽度

我想在表中设置PdfpCell的宽度,我想设计一下

在此输入图像描述
我写这段代码

  PdfPCell cell;
            PdfGrid tableHeader;
            PdfGrid tmpTable;
            PdfGrid table = new PdfGrid(numColumns: 1) { WidthPercentage = 100, RunDirection = PdfWriter.RUN_DIRECTION_LTR, ExtendLastRow = false };

            string imagepath2 = HttpRuntime.AppDomainAppPath + "Header.JPG";
            cell = new PdfPCell() { Border = 0, RunDirection = PdfWriter.RUN_DIRECTION_RTL };
            cell.Image = iTextSharp.text.Image.GetInstance(imagepath2);
            table.AddCell(cell);


            tableHeader = new PdfGrid(numColumns: 10);
            tableHeader.RunDirection = PdfWriter.RUN_DIRECTION_LTR;

            tmpTable = new PdfGrid(numColumns: 1);
            tmpTable.TotalWidth = 10f;
            tmpTable.LockedWidth = true;
            cell = new PdfPCell() {Rotation =-90,VerticalAlignment =Element.ALIGN_MIDDLE, HorizontalAlignment =Element.ALIGN_CENTER, BorderWidth = 1};
            cell.Phrase = …
Run Code Online (Sandbox Code Playgroud)

c# itextsharp pdfptable

21
推荐指数
1
解决办法
9万
查看次数

iTextSharp:SplitLate/SplitRows?

我有一个问题,我有一个表(PdfPTable)可能会超出页面的长度.我试过查找如何将一个表"拆分"到一个以上的页面,但iTextSharp在这方面的记录非常糟糕.有没有人知道如何做到这一点,而不是在页面上选择一个任意的Y位置并告诉它如果在那里分开?

我查看了SplitLateSplitRows属性,但没有关于这些做什么的文档.编辑他们什么都不做.

谢谢!

编辑

我希望在宽度方向上将桌子切成两半,因为桌子总是适合页面的宽度.这就是说我希望垂直不适合的行延伸到它下面的下一页.

EDIT2

这是一些代码:

Public Sub BuildPrintableDocument
    Dim doc As New Document(PageSize.LETTER, 0, 0, 0, BOTTOM_MARGIN)
    Dim writer As PdfWriter = PdfWriter.GetInstance(doc, _
        New FileStream("invoice.pdf", FileMode.Create)

    Dim footer As New HeaderFooter(New Phrase("www.columbussupply.com", _
        footerFont), False)
    footer.Border = Rectangle.NO_BORDER
    footer.Alignment = HeaderFooter.ALIGN_CENTER
    doc.Footer = footer

    doc.Open()

....

Dim items As PdfPTable = NewItemTable()
Dim count As Integer = 0
    For Each oi As OrderItem In TheInvoice.Items
        If oi.Status <> OrderItem.OrderItemStatus.Cancelled Then
            Dim …
Run Code Online (Sandbox Code Playgroud)

split page-break itextsharp pdfptable

13
推荐指数
2
解决办法
2万
查看次数

13
推荐指数
1
解决办法
2万
查看次数

如何在iTextSharp中设置PdfPTable的高度

我下载了iTextSharp dll的最新版本.我生成了一个PdfPTable对象,我必须设置它的高度.尽管设置了PdfPTable的宽度,但我无法设置它的高度.一些作者建议使用'setFixedHeight'方法.但是最后一个版本的iTextSharp.dll没有'setFixedHeight'方法.它的版本是5.5.2.我该怎么做?

height itextsharp pdfptable

8
推荐指数
2
解决办法
4万
查看次数

如何使用iTextSharp使表格无破坏

我有一张桌子

  PdfPTable tblSummary = new PdfPTable(1);  
Run Code Online (Sandbox Code Playgroud)

它确实有2个嵌套在其中的表.如何使tblSummary整个表格显示(行不得中断到另一个页面),或者如果整个表格不适合当前页面,则将其移动到另一个页面.

我曾尝试SplitLateSplitRows

我的代码是这样的

PdfPTable tblSummary = new PdfPTable(1);
PdfPCell csummarycell = new PdfPCell();  
PdfPTable tblSummaryFirst = new PdfPTable(3);
.
.
csummarycell.AddElement(tblSummaryFirst);
.
.
tblSummary.AddCell(csummarycell);
tblSummary.SplitLate = true;
tblSummary.SplitRows = false;
Run Code Online (Sandbox Code Playgroud)

像这样我向tblSummary添加了一个表,而得到的表高度总是小于pagesize的表,所以可以确定表的内容不会超过页面高度.

任何建议都会有所帮助.

c# itextsharp pdfptable

7
推荐指数
1
解决办法
9327
查看次数

表行是从itext pdf中的新页面开始的

我正在使用PdfPTable在pdf中创建一个表.我在表中有一行.在我的行中,最后一列的数据高度超过页面的剩余高度.所以行从下一页开始,而表头在上一页上,第一页的标题下方有一个大的空白区域.

任何人都可以建议我如何在多个页面上拆分行.

谢谢

pdf itext pdfptable

7
推荐指数
1
解决办法
6696
查看次数

如何在itextsharp中给表留下余量

我正在使用这些代码...我的表格贴在文档的左侧,因为我没有在文档中给出任何填充...

Document document = new Document(PageSize.A4, 0, 0, 0, 0);
Run Code Online (Sandbox Code Playgroud)

但现在我想给我的桌子留下保证金和保证金......我用了

outerTable.SpacingBefore = 20f;
Run Code Online (Sandbox Code Playgroud)

它不起作用然后我试图给我的细胞留下填充它也没有工作..

outerCell.PaddingLeft = 20f;
Run Code Online (Sandbox Code Playgroud)

现在我的桌子贴在左侧......我会怎样移动它们?如果你在itextsharp中尝试移动表,请帮助...

请查看附加屏幕以供参考

在此输入图像描述

c# itextsharp pdfptable

7
推荐指数
2
解决办法
1万
查看次数

在为PdfPDocument文档创建一个时,跳转到iTextSharp PdfPtable中的下一页

我正在构建一个iTextSharp PdfPTable对象,稍后将传递给Document.Add()以填充为PDF文件.

我在试图弄清楚如何跳到下一页时会发疯.任何人都可以建议如何格式化表格并使文本从填充到DPF文档后的下一页开始?

提前致谢!

c# pdf report itextsharp pdfptable

5
推荐指数
1
解决办法
6450
查看次数

iTextSharp - 将Colspan与PdfPRow一起使用

如果它们包含相同数量的列,我可以创建多个行:

table = new PdfPTable(3);

var firstRowCell1 = new PdfPCell( new Phrase ("Row 1 - Column 1"));
var firstRowCell2 = new PdfPCell( new Phrase ("Row 2 - Column 2"));
var firstRowCell3 = new PdfPCell( new Phrase ("Row 3 - Column 3"));
PdfPCell[] row1Cells = { firstRowCell1, firstLineRow2, firstRowCell3 };
var row1 = new PdfPRow(row1Cells);
table.Rows.Add(row1);

var nextRowCell1 = new PdfPCell( new Phrase ("Row 2 - Column 1"));
var nextRowCell2 = new PdfPCell( new Phrase ("Row 2 - Column 2"));
var …
Run Code Online (Sandbox Code Playgroud)

pdf-generation rows itextsharp pdfptable

5
推荐指数
1
解决办法
2万
查看次数

如何使用iText逐列而不是逐行填充PdfPTable

我将Java与iText结合使用,以生成一些PDF。我需要将文本放在列中,因此我正在尝试使用PdfPTable。我用以下方法创建它:

myTable = new PdfPTable(n);
Run Code Online (Sandbox Code Playgroud)

n是列数。问题是PdfPTable逐行填充表,也就是说,您首先在第1行的第1列中指定单元格,然后在第1行的第2列中指定单元格,依此类推,但是我需要逐列进行操作,因为是如何将数据提供给我的。

我将使用http://stderr.org/doc/libitext-java-doc/www/tutorial/ch05.html中Table(允许您指定位置),但是出现“无法解析为类型” ,而我的Eclipse找不到正确的导入。

编辑:如果我以前的解释令人困惑,我想要的是按以下顺序填写表格:

1  3  5
2  4  6
Run Code Online (Sandbox Code Playgroud)

代替这个:

1  2  3
4  5  6
Run Code Online (Sandbox Code Playgroud)

java itext pdfptable

4
推荐指数
1
解决办法
5405
查看次数

标签 统计

pdfptable ×10

itextsharp ×8

c# ×4

itext ×2

pdf ×2

height ×1

java ×1

page-break ×1

pdf-generation ×1

repeat ×1

report ×1

row ×1

rows ×1

split ×1

tableheader ×1