当前位置:知识库 / VB开发 / 详情
如何直接打印,不出现打印对话框?
如何直接打印,不出现打印对话框?
VB开发|黄洪辉|2018-06-11 15:15
回答:

主要用到函数说明:


MxDrawXCustomFunction::Mx_Print


直接打印,不出现打印对话框,详细说明如下:


参数 说明

double ptLBx

打印的范围左下角x

double ptLBy

打印的范围左下角y

double ptRTx

打印的范围右上角x

double ptRTy

打印的范围右上角y

LPCTSTR pszPrintName

打印机名,如果传为空,取系统默认打印机

LPCTSTR pszPaperName

打印的图纸名,如果传为空,取系统默认打印机设置

LONG iPrintDirection

打印的方向,2 为横向,1为纵向,默认取1

LONG iLeftMargin

打印的页边的左边距离,如果为-1,取打印机默认的页边距

LONG iRightMargin

打印的页边的右边距离,如果为-1,取打印机默认的页边距

LONG iTopMargin

打印的页边的上边距离,如果为-1,取打印机默认的页边距

LONG iBottomMargin

打印的页边的下边距离,如果为-1,取打印机默认的页边距

LPCTSTR pszLayoutName

打印的布局,为NULL就是模型Model中的内容

LPCTSTR pszPrintConfig

打印配制,暂没有使用

LPCTSTR pszDocName

打印的文档名称,在用pdf虚拟打印机时,指定打印的pdf文件的缺省文件名

LONG lIsPrintLineWdith

是否打印线宽,默认值为1,表示打印,传0表示不打印

iFlag

pRectPageMargin参数的含义,iFlag = 0表示页边距,iFlag = 1表示打印区域矩形框位置


VB代码实现如下:


            '打印10,10,100,100范围的图纸到当前系统默认设置打印机
            Dim printParam As MxDrawResbuf
            Set printParam = New MxDrawResbuf
            ' 打印的左下角10,10
            printParam.AddDouble 10
            printParam.AddDouble 10

            ' 打印的右上角100,100
            printParam.AddDouble 100
            printParam.AddDouble 100

            ' 开始打印
            MxDrawX1.CallEx "Mx_Print", printParam
相关问题
如何向控件注册一个命令?
如何绘制一个线型标注?
如何绘制一个半径标注?
如何绘制一个直径标注?
如何绘制一个角度标注?
如何绘制一个对齐标注?
如何得到多行文本?
如何得到0层上的所有实体?
如何把自定义实体,变成普通实体?
如何与用户交互在图面上选择一个实体?
梦想CAD是专业的CAD插件(控件),可轻松在网页、手机及BS/CS程序中浏览编辑DWG文件,不需安装AutoCAD即可运行。经十余年累积已非常稳定可靠,有关键的空间搜索算法,并使用汇编优化,可同时处理50万级实体,有非常高的图形显示和处理效率。
联系我们
技术TEL:400-888-5703
185-8173-1060
客服I QQ: 3570505660
技术I QQ: 827867134
技术II QQ:6884123
VIP服务购买
销售TEL:156-8136-8971
销售QQ:710714273
用户交流
控件QQ交流群1:73281982
控件QQ交流群2:112199959
MxCAD软件群 1:515771658
技术I:QQ
827867134
客服I:QQ
3570505660
销售QQ
710714273
联系电话400-888-5703