【问题标题】:Print a header on set page using Abc PDF使用 Abc PDF 在设置页面上打印页眉
【发布时间】:2023-03-28 15:37:01
【问题描述】:

我已经使用 Abc PDF 从 HTML 页面创建了 pdf,现在我的问题是我想在下一页打印表格标题,但前提是表格数据显示在另一个页面中,如果不在不同页面上显示标题,任何有人知道我们如何使用 Abc pdf 来做到这一点。

【问题讨论】:

    标签: pdf-generation abcpdf


    【解决方案1】:

    您需要做的是创建顶部有一些空间的页面,然后在您的文档在 abc PDF 中构建后,循环浏览页面并添加页眉。

    下面的代码是我用来添加标题的代码,在这种情况下,标题在顶部有三个位的图像和两个带有文本的框。

    请记住 abc pdf 中的绳索是从右下角而不是左上角。

    private static Doc AddHeader(Doc theDoc, Core.Property propertyDetails)
    {
        int theCount = theDoc.PageCount;
        int i = 0;
    
        //Image header 
        for (i = 1; i <= theCount; i++)
        {
            theDoc.Rect.Width = 590;
            theDoc.Rect.Height = 140;
    
            theDoc.Rect.Position(0, 712);
    
            theDoc.PageNumber = i;
    
            //Check Which office to use. 
            string imagefilePath = HttpContext.Current.Server.MapPath("/images/pdf/pdf-header.png");
    
    
            Bitmap myBmp = (Bitmap)Bitmap.FromFile(imagefilePath);
    
            theDoc.AddImage(myBmp);
        }
    
        //page header boxes. 
        //Grey header box 
        theDoc.Rect.String = "20 15 590 50";
        theDoc.Rect.Position(13, 672);
        System.Drawing.Color colour = System.Drawing.ColorTranslator.FromHtml("#CCCCCC");
        theDoc.Color.Color = colour;
        theDoc.PageNumber = 1;
        theDoc.FillRect();
    
        theDoc.Rect.String = "20 15 586 50";
        theDoc.Rect.Position(30, 660);
        System.Drawing.Color pageoneText = System.Drawing.ColorTranslator.FromHtml("#50474A");
        theDoc.Color.Color = pageoneText;
        string thePageFont = "Century Gothic";
        theDoc.Font = theDoc.AddFont(thePageFont);
        theDoc.FontSize = 16;
        theDoc.PageNumber = 1;
        theDoc.AddText("My Text!!!!!");
    
    
        theDoc.Rect.String = "20 15 590 50";
        theDoc.Rect.Position(13, 630);
        System.Drawing.Color greyBox = System.Drawing.ColorTranslator.FromHtml("#468DCB");
        theDoc.Color.Color = greyBox;
        theDoc.PageNumber = 1;
        theDoc.FillRect();
    
        theDoc.Rect.String = "20 15 586 50";
        theDoc.Rect.Position(30, 620);
        System.Drawing.Color greyText = System.Drawing.ColorTranslator.FromHtml("#ffffff");
        theDoc.Color.Color = greyText;
        string thePageFontTwo = "Century Gothic";
        theDoc.Font = theDoc.AddFont(thePageFontTwo);
        theDoc.FontSize = 14;
        theDoc.PageNumber = 1;
        theDoc.AddText("This is more text");
    
        return theDoc;
    }
    

    然后,一旦创建了 pdf 文件,只需调用

    var theDoc = new Doc();
    
    /// Your document creation stuff!!!
    theDoc = AddHeader(theDoc, propertyDetails);
    

    【讨论】:

      猜你喜欢
      • 2012-01-11
      • 1970-01-01
      • 2011-01-08
      • 2013-12-01
      • 2011-12-08
      • 2019-03-22
      • 2016-01-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多