itextsharp如何添加完整的换行符

时间:2013-11-27 04:00:10

标签: c# itextsharp

我使用itextsharp,我需要从页面的左到右绘制虚线换行符(100%宽度),但不知道如何。 doc总是左边有一个边距。请帮助enter image description here

var pageSize = PageSize.A4;

        if (_pdfSettings.LetterPageSizeEnabled)
        {
            pageSize = PageSize.LETTER;
        }


        var doc = new Document(pageSize);
        PdfWriter.GetInstance(doc, stream);
        doc.Open();

        //fonts

        var titleFont = GetFont();
        titleFont.SetStyle(Font.BOLD);
        titleFont.Color = BaseColor.BLACK;
        titleFont.Size = 16;

        var largeFont = GetFont();
        largeFont.SetStyle(Font.BOLD);
        largeFont.Color = BaseColor.BLACK;
        largeFont.Size = 18;

        int ordCount = orders.Count;
        int ordNum = 0;

        foreach (var order in orders)
        {

            var addressTable = new PdfPTable(3);
            addressTable.WidthPercentage = 100f;
            addressTable.SetWidths(new[] { 25, 37, 37 });


            // sender address

            cell = new PdfPCell();
            //cell.Border = Rectangle.NO_BORDER;
            cell.AddElement(new Paragraph("Người Gửi", titleFont));
            cell.AddElement(new Paragraph(_localizationService.GetResource("admin.orders.pdfinvoice.sender", lang.Id), smallFont));
            cell.AddElement(new Paragraph(_localizationService.GetResource("admin.orders.pdfinvoice.senderaddress", lang.Id), smallFont));
            cell.AddElement(new Paragraph(_localizationService.GetResource("PDFInvoice.Hotline", lang.Id), smallFont));
            cell.AddElement(new Paragraph("TAKARA.VN", largeFont));

            addressTable.AddCell(cell);

            ......
           Chunk linebreak = new Chunk(new DottedLineSeparator());
                doc.Add(linebreak);   

                doc.Add(new Paragraph(""));
           ....
}

1 个答案:

答案 0 :(得分:0)

请查看示例FullDottedLine

您创建的DottedLineSeparator默认宽度百分比为100%。此100%是具有页面边距的完整可用宽度。如果您希望线条超出可用宽度,则需要一个高于100%的百分比。

在该示例中,使用默认页面大小(A4)和默认边距(36)。这意味着页面的宽度为595个用户单位,可用宽度等于595 - (2 x 36)个用户单位。跨越页面整个宽度所需的百分比等于100 x(595/523)。

查看生成的PDF文件full_dotted_line.pdf,您会看到该行现在通过边距。