zoukankan      html  css  js  c++  java
  • DevExpress Winform 通用控件打印方法(允许可自定义边距) z

    DevExpress Winform 通用控件打印方法,包括gridcontrol,treelist,pivotGridControl,ChartControl,LayoutControl...(所有支持打印功能的控件) ,同时允许用户自定义报表标题,报表纸张类型(A4,A3...),报表边距

    /// <summary>
    
            /// 打印功能
    
            /// </summary>
    
            /// <param name="panel">打印控件</param>
    
            /// <param name="title">标题</param>
    
            /// <param name="pageSize">纸张类型</param>
    
            /// <param name="margins">边距</param>
    
            protected virtual void Print(IPrintable panel, string title = null, PaperKind pageSize = PaperKind.A4, System.Drawing.Printing.Margins margins = null)
    
            {
    
                PrintingSystem ps = new PrintingSystem();
    
                CompositeLink link = new CompositeLink(ps);                       PrintableComponentLink printableLink = new PrintableComponentLink() { Component = panel };
    
                ps.Links.Add(link);
    
                link.Links.Add(printableLink);
    
                link.Landscape = true;//横向
    
                link.PaperKind = pageSize;//设置纸张大小
    
                if (margins == null)
    
                    margins = new System.Drawing.Printing.Margins(10, 10, 50, 50);
    
                link.Margins = margins;
    
                //判断是否有标题,有则设置
    
                if (!string.IsNullOrEmpty(title))
    
                {
    
    
    
                    PageHeaderFooter phf = link.PageHeaderFooter as PageHeaderFooter;
    
                    phf.Header.Content.Clear();
    
                    phf.Header.Content.AddRange(new string[] { "", title, "" });
    
                    phf.Header.Font = new System.Drawing.Font("宋体", 14, System.Drawing.FontStyle.Bold);
    
                    phf.Header.LineAlignment = BrickAlignment.Center;
    
    
    
                    phf.Footer.Content.AddRange(new string[] { "", String.Format("打印时间: {0:g}", DateTime.Now), "" });
    
                }
    
                link.CreateDocument(); //建立文档
    
                ps.PreviewRibbonFormEx.Show();//进行预览 
    
            }
    
  • 相关阅读:
    Focal loss and weighted loss学习记录
    学习记录之Focal loss
    caffe学习记录(八) shufflenet学习记录
    caffe学习记录(七) Windows下基于Inter训练的核心加速技术,MKL
    caffe学习记录(六) MobileNet fine tune
    caffe学习记录(五) SSD训练+SSDpelee测试
    caffe学习记录(四) solver
    caffe学习记录(三) Blob,layer Net, solver配置文件的编写
    caffe学习记录(二)
    HTML meta viewport属性说明
  • 原文地址:https://www.cnblogs.com/zeroone/p/6275400.html
Copyright © 2011-2022 走看看