#c# #pdf
Вопрос:
Я работал над приложением, которое создает pdf-файл с отображаемой на нем таблицей. Проблема в том, что я могу создавать ячейки и ячейки заголовка, но они не выровнены по горизонтальной оси, что вызывает проблемы при чтении. Таблица в формате PDF с неправильным форматированием
это код на C#. PS Я использую пакет Nuget PDF Quest
void ComposeTable(IContainer container) { var headerStyle = TextStyle.Default.SemiBold(); container.Decoration(decoration =gt; { // header decoration.Header().BorderBottom(1).Padding(5).Row(row =gt; { row.ConstantColumn(25).Text("#", headerStyle); row.RelativeColumn(3).Text("1", headerStyle); row.RelativeColumn().AlignRight().Text("2", headerStyle); row.RelativeColumn().AlignRight().Text("3", headerStyle); row.RelativeColumn().AlignRight().Text("4", headerStyle); row.RelativeColumn().AlignRight().Text("5", headerStyle); row.RelativeColumn().AlignRight().Text("6", headerStyle); row.RelativeColumn().AlignRight().Text("7", headerStyle); row.RelativeColumn().AlignRight().Text("8", headerStyle); row.RelativeColumn().AlignRight().Text("9", headerStyle); row.RelativeColumn().AlignRight().Text("10", headerStyle); }); // content decoration .Content() .Stack(column =gt; { foreach (var item in Model.Items) { column.Item().ShowEntire().BorderBottom(1).BorderColor(Colors.Grey.Lighten2).Padding(5).Row(row =gt; { row.ConstantColumn(25).Text(Model.Items.IndexOf(item) 1); row.RelativeColumn(3).Text(item.Name); row.RelativeColumn().AlignRight().Text($"{item.Price}$"); row.RelativeColumn().AlignRight().Text(item.Quantity); row.RelativeColumn().AlignRight().Text($"{item.Price * item.Quantity}$"); row.RelativeColumn(3).Text(item.Name); row.RelativeColumn().AlignRight().Text($"{item.Price}$"); row.RelativeColumn().AlignRight().Text(item.Quantity); row.RelativeColumn().AlignRight().Text($"{item.Price * item.Quantity}$"); row.RelativeColumn(3).Text(item.Name); row.RelativeColumn().AlignRight().Text($"{item.Price}$"); }); } }); }); }
Комментарии:
1. Ссылка, которую вы опубликовали, кажется, сломана.
2. Я никогда не использовал PDF Quest , но, читая ваш вопрос, я заметил, что : в вашем заголовке у вас есть только 1 строка,
RelativeColumn(3)
а все остальные естьRelativeColumn()
, но в вашем теле у вас есть 3 строкиRelativeColumn(3)
. Разве не в этом могла быть проблема?3. Да, в этом-то и была проблема! Мой босс дал мне это вот так, и я подумал, что это будет правильно, но на самом деле вы правы, спасибо:)