当用户需要打印两个控件的图纸时,可以采用嵌套打印实现。点击此处在线演示

实现嵌套打印功能,首先将两个控件放入网页中,js代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<p align="center">
 
  <object classid="clsid:74A777F8-7A8F-4e7c-AF47-7074828086E2" id="MxDrawXCtrl1"  codebase="http://www.mxdraw.com/MxDrawX52.CAB#version=7.0.0.1" width=48% height=85% align="left">
    <param name="_Version" value="65536">
    <param name="_ExtentX" value="24262">
    <param name="_ExtentY" value="16219">
    <param name="_StockProps" value="0">
    <param name="IsRuningAtIE" value="1">
    <param name="EnablePrintCmd" value="1">
    <param name="ShowStatusBar" value="1">
    <param name="ShowMenuBar" value="1">
    <param name="ShowToolBars"  value="1">
    <param name="ShowCommandWindow" value="1">
    <param name="ShowModelBar" value="1">
    <param name="Iniset" value="AutoActive=N,LoadMrx=PropertyEditor">
 
    <param name="ToolBarFiles" value="MxDraw-ToolBar.mxt,MxDraw-ToolBar-DrawParam.mxt,MxDraw-ToolBar-Draw.mxt,MxDraw-ToolBar-Edit.mxt">
    <SPAN STYLE="color:red">不能装载CAD控件。请确认你可以连接网络或者检查浏览器的选项中安全设置。<a href="http://www.mxdraw.com/MxDrawX52.msi">http://www.mxdraw.com/MxDrawX52.msi 安载CAD控件</a></SPAN>
  </object>
  <object classid="clsid:74A777F8-7A8F-4e7c-AF47-7074828086E2" id="MxDrawXCtrl2"  codebase="http://www.mxdraw.com/MxDrawX52.CAB#version=7.0.0.1"width=48% height=85% align="right">
    <param name="_Version" value="65536">
    <param name="_ExtentX" value="24262">
    <param name="_ExtentY" value="16219">
    <param name="_StockProps" value="0">
    <param name="IsRuningAtIE" value="1">
    <param name="EnablePrintCmd" value="1">
    <param name="ShowStatusBar" value="1">
    <param name="ShowMenuBar" value="1">
    <param name="ShowToolBars"  value="1">
    <param name="ShowCommandWindow" value="1">
    <param name="ShowModelBar" value="1">
    <param name="Iniset" value="AutoActive=N,LoadMrx=PropertyEditor">
 
    <param name="ToolBarFiles" value="MxDraw-ToolBar.mxt,MxDraw-ToolBar-DrawParam.mxt,MxDraw-ToolBar-Draw.mxt,MxDraw-ToolBar-Edit.mxt">
    <SPAN STYLE="color:red">不能装载CAD控件。请确认你可以连接网络或者检查浏览器的选项中安全设置。<a href="http://www.mxdraw.com/MxDrawX52.msi">http://www.mxdraw.com/MxDrawX52.msi 安载CAD控件</a></SPAN>
  </object>

首先通过id得到两个控件,新建一个COM组件对象,设置打印的位置等常规设置,具体实现js代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
function BatchPrintDialog() {
    var ocx1 = document.getElementById("MxDrawXCtrl1");
    var ocx2 = document.getElementById("MxDrawXCtrl2");
    var print = ocx1.NewComObject("IMxDrawPrint");
    // 开始打印.
    print.BeginNestedPrint();
    //iFlag = 0表示页边距,iFlag = 1表示打印区域矩形框位置
    print.Flag = 1;
    // 打印区位置(10,10,200,100),坐标系统是,X从左到右,Y从上到下.
    //打印的页边距的左边距离
    print.dLeftPageMargin = 10;
    //打印的页边距的上边距离
    print.dTopPageMargin = 10;
    //打印的页边距的右边距离
    print.dRightPageMargin = 200;
    //打印的页边距的下边距离
    print.dBottomPageMargin = 100;
    // 把屏幕显示内容进行的打印,打印第一个控件。
    ocx1.MakeCurrentOcx();
    print.PrintScreen();
    ocx2.MakeCurrentOcx();
    // 打印区位置(10,110,200,210),坐标系统是,X从左到右,Y从上到下.
    //打印的页边距的上边距离
    print.dTopPageMargin = 110;
    //打印的页边距的下边距离
    print.dBottomPageMargin = 210;
    // 把屏幕显示内容进行的打印,打印第二个控件。
    print.PrintScreen();
    //结束嵌套打印
    print.EndNestedPrint();
}

CAD在网页中如何实现嵌套打印?的更多相关文章

  1. CAD在网页中绘图,并为新绘的对象写扩展数据和读取扩展数据

    在网页中绘图,并为新绘的对象写扩展数据和读取扩展数据.下面帮助的完整例子,在控件安装目录的 Sample\Ie\iedemo.htm 中. 主要用到函数说明: _DMxDrawX::InsertBlo ...

  2. CAD在网页中打印的图纸里面添加页眉及页脚

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...

  3. CAD在网页中增加一个射线

    主要用到函数说明: IMxDrawBlockTableRecord::AddRay 向记录中增加一个射线,详细说明如下: 参数 说明 point1 射线上的点1 point2 射线上的点2 js代码实 ...

  4. CAD在网页中如何设置实体闪烁?

    主要用到函数说明: MxDrawXCustomFunction::Mx_TwinkeEnt 闪烁实体.详细说明如下: 参数 说明 McDbObjectId id 被闪烁的实体对象id LONG lCo ...

  5. CAD在网页中返回当前图纸的最小外包矩形框

    主要用到函数说明: _DMxDrawX::GetMcDbDatabaseBound 返回当前图纸的最小外包矩形框,详细说明如下: 参数 说明 DOUBLE* pLbx 返回最小外包矩形框左下角X值 D ...

  6. CAD在网页中得到批注信息

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...

  7. CAD在网页中绘制批注

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...

  8. CAD在网页中如何得到用户自定义事件的参数?

    主要用到函数说明: _DMxDrawX::CustomEventParam 得到用户自定义事件的参数. js代码实现如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ...

  9. CAD嵌套打印(网页版)

    当用户需要打印两个CAD控件的图纸时,可以采用嵌套打印实现.点击此处在线演示. 实现嵌套打印功能,首先将两个CAD控件放入网页中,js代码如下: <p align="center&qu ...

随机推荐

  1. FineUI之使用SQL脚本从数据库表中生成对应的输入控件

    在WEB开发时.常常须要根据数据库表中的字段建立对应的输入控件,来获取输入的数据.每次都须要按字段来敲,显然太低效.并且easy出错.这里提供一个SQL脚本生成对应输入控件的方法. USE DBDem ...

  2. Linux下的文件夹创建命令使用实践

    [文章摘要] 本文以实际的C源程序为样例,介绍了Linux下的文件夹创建命令(mkdir)的用法.为相关开发工作的开展提供了故意的參考. [关键词] C语言  Linux  文件夹创建  makefi ...

  3. uva 10452 Marcus

    Problem I Marcus, help! Input: standard input Output: standard output Time Limit: 2 Seconds "Fi ...

  4. JPA測试实例

    依赖架包 实体 import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.G ...

  5. beego2---入门

    package main //beego既可以建立web应用也可以建立api应用 //beego是一个gohttp服务器的高层封装, import ( _ "beego1/routers&q ...

  6. [Android 编译(一)] Ubuntu 16.04 LTS 成功编译 Android 6.0 源码教程

    本文转载自:[Android 编译(一)] Ubuntu 16.04 LTS 成功编译 Android 6.0 源码教程 1 前言 经过3天奋战,终于在Ubuntu 16.04上把Android 6. ...

  7. Android 修改开机动画(bootanimation)【转】

    本文转载自:http://blog.csdn.net/u012301841/article/details/51598115 Android 系统自带的开机动画,是一个白色的 “android” 文字 ...

  8. easyui 生成tas方式

    1.采用<a>标签形式 <div id="tabs" style="width:100%;"> <ul> <li id ...

  9. Python 私有化类的属性

    class MandgerSec: def __init__(self,name,gender,level): self.type=("fire",None) self.name= ...

  10. ionic安卓打包apk--安卓签名

    上周项目上线,在网上看了看打包的博客,感觉不是很清晰我自己来总结下 首先,我们在项目的根目录下 build android apk 的时候执行的命令一定要是 ionic build android - ...