DevExpress GridControl自定义打印效果

在需要打印GridControl内容时我们有时候需要特定的打印样式,比如纸张方向,边距,水印等等。我们不可能让客户按我们的想法从打印预览去修改打印样式,只能从代码里自己设置,下面记录了我在开发中设置打印样式的一些参数。

if (gridControl1.DataSource != null)
  {
    PrintingSystem ps = new PrintingSystem();
    PrintableComponentLink link = null;
    link = new PrintableComponentLink(ps);
    ps.Links.Add(link);
    link.Component = gridControl1;
    link.CreateDocument();
    ps.PageSettings.PaperKind = PaperKind.A4;                        //纸张大小
    ps.PageSettings.Landscape = true;                                   //是否为横向打印
    ps.PageSettings.TopMargin = 76;                                     //上边距
    ps.PageSettings.BottomMargin = 76;                                //下边距
    ps.PageSettings.LeftMargin = 44;                                   //左边距
    ps.PageSettings.RightMargin = 44;                                     //右边距
    ps.Watermark.Image = Bitmap.FromFile("dabiao.png");              //设置水印图片
    ps.Watermark.ImageAlign = ContentAlignment.MiddleCenter;      //水印对齐方式
    ps.Watermark.ImageTiling = false;                                            //是否平铺图片
    ps.Watermark.ImageViewMode = ImageViewMode.Stretch;         //设置图片显示方式
    ps.Watermark.ImageTransparency = 200;                                  //设置水印图片的深浅度
    ps.Watermark.ShowBehind = false;                                           //设置水印在打印内容的前面显示
    ps.Print();                                       //直接打印,不显示打印预览
  }

posted @ 2016-01-20 09:51  天罡北斗  阅读(1848)  评论(0)    收藏  举报