Я должен реализовать в c# с библиотекой iText7 что-то вроде этого:
И я понял это, используя следующий код:
// doc is the document created in the Main function
public static void CreatePdf(Document doc) {
// Initialize document
Document document = doc;
// a float array for columns width
float[] colwidths = { 1, 3 };
// creates table with a number of col equals to how many numbers are in float array
Table table = new Table(UnitValue.CreatePercentArray(colwidths) );
table.SetWidth(523);
table.AddCell(new Cell(1,2).Add(new Paragraph("The table title goes here")));
// creates a cell that is 3rows and 1col large; vertically centers the text
table.AddCell(new Cell(3, 1).Add(new Paragraph("here goes the Text1"))
.SetVerticalAlignment(VerticalAlignment.MIDDLE) );
// adds 3 rows in the 2nd column
table.AddCell("row 1");
table.AddCell("row 2");
table.AddCell("row 3");
document.Add(table);
document.Close();
}
Таким образом, я решил, что второй столбец имеет ширину в 3 раза больше первого.
Но я хочу сделать это с абсолютными значениями, чтобы я мог добавлять столбцы и строки с большей точностью, То есть я знаю, что общая ширина составляет 523 точки, поэтому я хочу, чтобы первый столбец имел ширину 123 точки, а второй - ширину 400 точек.
- Как я могу это сделать?
- Если я поместил первый столбец шириной 100 пунктов, а второй шириной 300 пунктов, оставит ли он пустое пространство справа?