c# 打印的问题总结

       近期 做了一个打印的类,有一下功能:

     /// <summary>
    /// 打印数据表格的类
    /// 2016/05/19 @佳序
    /// 功能:
    /// 01、自动计算总页数,当前打印页数,信息记录页面右下角
    /// 02、每页自动打印列标题,并且带背景色
    /// 03、设置打印信息属性FMemoString,默认值为空,打印在页面左下角
    /// 04、自动实现横纵打印:如果数据列总宽度
    ///    大于可打印区域宽度的1.1倍,那么自动调整打印样式为横版打印
    /// 05、自动按照列宽等比例放大缩小每列的宽度,使得数据列布满可打印区域
    /// 06、设置是否合并单元格属性FIsMergeCell,默认不合并
    /// 07、设置按某个列头名称合并单元格,将列头名称赋值给属性FMergeHeaderName属性,
    ///    自动校验赋值正确与否
    /// 08、只打印DataGridView的可见列
    /// 09、可设置打印区域的上下左右页边距,不设置时取默认值
    /// 10、允许单元格文字换行
    /// 11、分页处不合并单元格

  过程中使用了g.MeasureText()方法来测试字符串的大小,今天网上浏览到,可以使用

TextRenderer.MeasureText()方法,来测试字符串大小,因为这个函数不需要new  Graphics

就能正常使用。

原文地址:https://www.cnblogs.com/hanjiaxu/p/5545310.html