vb.net报表添加纸张 vb 制作报表并打印

vb.net,水晶报表打印时纸张变为信纸,打印机里面已经自定义好了纸张,用EXCEL,WORD就正常,请高手指点

别的地方转来的!~ 不过我们以前做的时候 都是在打印机里增加一种打印纸 然后就可以选了!~

创新互联建站坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站建设、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的源汇网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

一下转载内容!~~~

水晶报表-强大而成熟,但是多少男儿汉败倒在他的自定义纸张设置上。

1:水晶报表是纸形打印。所以自定义纸张类打印肯定要在电脑上增加对应的纸张才行(手动加还是代码加这个不管)

2:纸张分3种系统内建(不可更改),自定义,打印机自带。很遗憾的是水晶只认系统内建的。

3:打印机一般分2种。1普通喷墨的A4,2有联单的针式

4:注意水晶报表不是所见所得的,预览的纸张是什么不一定打印的就是什么纸张(受3方影响。打印机、报表内设置、PAPERSIZE 属性,三者之间关系不详)。

5:对于第一种A4纸张。没什么好说的系统内建纸型。水晶报表认。直接指定就行

6:对于第二种联单的自定义型一般专机专用,当然是建好纸张让打印机默认自己建的纸张为默认首选了。

7:然后设置水晶报表使用打印机默认的纸张PaperSize = CrystalDecisions.Shared.PaperSize.DefaultPaperSize

以上能保证专机专纸的任何打印。:要注意第4点。如果你是自定义纸而且要预览要保障预览和打印都用指定的纸张,那么预览时你得指定PaperSize=你自定义纸张的索引号。打印的时候又改成CrystalDecisions.Shared.PaperSize.DefaultPaperSize

8:如果你想一个打印机多个自定义纸张那么用API吧动态改变打印机的默认纸张,根据以上拐2弯就能实现了遗憾的是网络打印机的话就没折了。o(︶︿︶)o 唉

vb datareport 自定义纸张的问题

“报表宽度大于纸的宽度”是因为你的datareport宽度实际大于纸张的宽度,设置一下,(最笨的方法就是改变顶上的标尺位置直到,不提示“报表宽度大于纸的宽度”)如下图:(图中的位置我试过了,可以的)

Orientation属性

该值指出文档是以纵向还是横向的方式被打印。在设计时是不可用的。

属性有下列值,及表示的含义:

1    

文档打印以纸的窄边作顶部  

2    

文档打印以纸的宽边作顶部。  

希望对你有帮助!有问题可以给我发邮件qeelin@qq.com

VB.NET中怎么获取当前打印机的纸张类型

我是VB.NET 2010版本

窗体上添加一个按钮,代码如下:

Imports System.Drawing.Printing

Public Class Form1

'采用关键字WithEvents声明一个PrintDocument对象,会引发它的PrintPage事件

Private WithEvents My_PrintDocument As PrintDocument

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

'实例化PrintDocument对象

My_PrintDocument = New PrintDocument

'显示默认的打印机名称

MsgBox(My_PrintDocument.PrinterSettings.PrinterName)

'显示默认的打印机纸张类型名称

MsgBox(My_PrintDocument.DefaultPageSettings.PaperSize.ToString)

End Sub

End Class

VB 设置纸张

首先:

用VB控制针式打印机,这个不是VB功能,控制硬件打印,同时控制纸张,你会用到VC的相关知识,比如接口,DLL调用,以及打印接口控制等等。

其次,

打印纸张控制,类似于报表,需要你深入的了解。


新闻名称:vb.net报表添加纸张 vb 制作报表并打印
网址分享:http://azwzsj.com/article/dooogjd.html