itextsharp: rowspan не работает - PullRequest
1 голос
/ 03 марта 2010

У меня есть некоторые проблемы с rowspan:

var doc1 = new Document();
        doc1.SetPageSize(PageSize.A4.Rotate());
        string path = Server.MapPath("PDFs");
        PdfWriter.GetInstance(doc1, new FileStream(path + "/Doc1.pdf", FileMode.Create));
        doc1.Open();
        PdfPTable table = new PdfPTable(17);
        PdfPCell cell = new PdfPCell(new Phrase("Missioni aggregato per macro causali"));
        cell.Colspan = 17;
        cell.HorizontalAlignment = 1; //0=Left, 1=Centre, 2=Right
        table.AddCell(cell);
        cell = new PdfPCell(new Phrase("Matricola"));
        cell.Rowspan = 2;
        cell.Rotation = 90;
        table.AddCell(cell);

        cell = new PdfPCell(new Phrase("Nominativo"));
        cell.Rowspan = 2;
        table.AddCell(cell);

        cell = new PdfPCell(new Phrase("Assegnazione"));            
        cell.Colspan = 2;
        table.AddCell(cell);            

        cell = new PdfPCell(new Phrase("Riepilogo missioni valori dal "));
        cell.Colspan = 13;
        cell.Rowspan = 2; 
        table.AddCell(cell);

        cell = new PdfPCell(new Phrase("Struttura"));            
        table.AddCell(cell);

        cell = new PdfPCell(new Phrase("Ufficio"));
        table.AddCell(cell);

ячейка "Riepilogo missioni valori dal" находится в одном ряду ячейки "struttura" и ячейки "ufficio" Почему?

как мне это сделать?

спасибо

1 Ответ

3 голосов
/ 04 марта 2010

Ваша ячейка "Riepilogo missioni valori dal" охватывает всего 13 столбцов. PdfPTable требует, чтобы вы заполнили оставшиеся столбцы (4) в конце текущей строки, прежде чем она перейдет к следующей строке из 17 столбцов.

Чтобы заполнить конец строки, вы можете добавить 4 пустых ячейки или использовать метод CompleteRow.

table.AddCell("")
table.AddCell("")
table.AddCell("")
table.AddCell("")

или

table.CompleteRow()
...