zoukankan      html  css  js  c++  java
  • C# 打印多页tif

    注意点:

    1.计算image对象总页数

    image.GetFrameCount(FrameDimension.Page);

    2.初始化当前页,并获取指定页内容

    image.SelectActiveFrame(FrameDimension.Page, m_CurrentPage);
    

    3.设置PrintPage时间PrintPageEventArgs参数值,判断是否有额外页打印(次数是打印多页关键)

    e.HasMorePages = (m_CurrentPage < m_PageCount);
    

      

    基本DEMO(转载)

    private Image m_Image;
    private Int32 m_CurrentPage;
    private Int32 m_PageCount;
    
    private void Form1_Load(object sender, EventArgs e)
    {
        m_Image = Image.FromFile(".\Test-2-Page-Image.tif");
        m_PageCount = m_Image.GetFrameCount(FrameDimension.Page);
    }
    
    private void printDocument_BeginPrint(object sender, PrintEventArgs e)
    {
        m_CurrentPage = 0;
        m_PageCount = m_Image.GetFrameCount(FrameDimension.Page);
    }
    
    private void printDocument_PrintPage(object sender, PrintPageEventArgs e)
    {
        m_Image.SelectActiveFrame(FrameDimension.Page, m_CurrentPage);
        e.Graphics.DrawImage(m_Image, 0, 0);
        ++m_CurrentPage;
        e.HasMorePages = (m_CurrentPage < m_PageCount);
    }
    
    private void btnPrint_Click(object sender, EventArgs e)
    {
        printDocument.Print();
    }
    

      

  • 相关阅读:
    OI 复赛注意事项整理
    U138415 堆箱子 | 扩展欧几里得 扩欧
    扩欧-扩展欧几里得 | 数论学习笔记
    U138097 小鱼吃大鱼 埃氏筛
    牛客1029A 袜子分配
    U137971 公司搬迁
    初赛知识点整理
    SQL注入技术
    写出易于调试的SQL
    dos命令大全
  • 原文地址:https://www.cnblogs.com/ericyi/p/4577306.html
Copyright © 2011-2022 走看看