通常我们是通过程序操作打印机打印我们设置好的内容,但基本都是打印机默认进纸口打印;最近有一个通过C#程序控制两个进纸口分别进一张纸进行打印的需求,通过偿失找到了解决方案如下:

关于C#调用打印机打印的方法,网上相关资料很多,这里不做介绍,这里仅介绍如何控制通过不同纸盒进纸打印

 PrintDocument pdDocument = new PrintDocument();
/*
**打印的一些基础设置,这里不做多的介绍
*/

设置纸张来源,比如如下我这里设置通过纸盒1进纸,注意不同的型号打印机纸盒的名称不同

 pdDocument.DefaultPageSettings.PaperSource = GetPaperSource("纸盒 1");

如下为通过纸盒名称查找纸张来源的方法

         /// <summary>
/// 通过名称查找纸盒
/// </summary>
/// <param name="sorceName"></param>
/// <returns></returns>
private PaperSource GetPaperSource(string sorceName)
{
PaperSource pageSorce = new PaperSource();
PrinterSettings ps = new PrinterSettings();
for (int i = ; i < ps.PaperSources.Count; i++)
{
if (ps.PaperSources[i].SourceName == sorceName)
{
return ps.PaperSources[i];
}
}
return null;
}

上述的纸盒设置完成后就可以调用打印了,如果要通过不同进纸盒分别进纸打印,重复设置纸张来源然后再调用打印即可;

最新文章

  1. Python学习--Python基础语法
  2. Hello Blog
  3. SecureCRT 使用 rz 和 sz 命令
  4. vm centos 添加网卡 无配置文件
  5. HDU 5821 Ball (贪心排序) -2016杭电多校联合第8场
  6. Uva 10976 Fractions Again?!
  7. 【狼】unity3d point light 个数限制更改
  8. django admin.py settings 操作
  9. linux视频学习(简单介绍)20160405
  10. 24. leetcode 409. Longest Palindrome
  11. 变量值a交换b,b交换a....
  12. VS2013装扩展RazorGenerator
  13. JAVA之旅(十三)——线程的安全性,synchronized关键字,多线程同步代码块,同步函数,同步函数的锁是this
  14. ASP.Net MVC 在控制器中获取View中的form表单值的方法
  15. Oracle 关键字、高级函数的使用
  16. XE 使用记录
  17. c#线程池ThreadPool实例详解
  18. Redis 再牛逼,也得设置密码!!
  19. 关于PID的如何修改的FAQ
  20. python os模块常用方法总结

热门文章

  1. ESP8266开发之旅 网络篇③ Soft-AP——ESP8266WiFiAP库的使用
  2. ThingJS和传统3D开发的区别
  3. git jenkins 基本部署之git远程仓库
  4. vue系列---snabbdom.js使用及源码分析(九)
  5. Java并发入门之FutureTask
  6. [随机化算法] 听天由命?浅谈Simulate Anneal模拟退火算法
  7. Java基础(42)AbstractSet类
  8. TCP UDP基本编程(一)
  9. JAVA基础知识注意事项
  10. SOLID原则、设计模式适用于Python语言吗