CAD在网页中如何实现嵌套打印?

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

实现嵌套打印功能,首先将两个控件放入网页中,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();

}

原文地址:https://www.cnblogs.com/yzy0224/p/10966479.html

时间: 2024-11-11 04:30:35

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

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

在网页中绘图,并为新绘的对象写扩展数据和读取扩展数据.下面帮助的完整例子,在控件安装目录的 Sample\Ie\iedemo.htm 中. 主要用到函数说明: _DMxDrawX::InsertBlock 向数据库中插入一个图块,DWG图块文件可以是本地文件,也可以是网络文件.详细说明如下:函数成功返回1,失败返回0. 参数 说明 BSTR pszDwgFileName 图块定义的dwg 文件,支持http://开头的网络路径 BSTR pszBlockName 新插入的图块名 _DMxDraw

php部分:网页中报表的打印

网页中报表的打印,是通过调用window对象中的print()方法实现打印功能的: 调用浏览器本身的打印功能实现打印 <a href="#" onclick="window.print()">打印</a> 主要页面代码:查询nation表 <body> <table border="1" cellspacing="0" cellpadding="0"> <

网页中如何用 CSS 设置打印分页符

Word 中按 Ctrl + Enter 创建一个分页符,方便打印,其实网页中也可以,用 CSS 的 page-break-after:always;. <p>第 1 页</p><div style="page-break-after:always;"></div><p>第 2 页</p><div style="page-break-after:always;"></div&g

html在网页中嵌套视频

1.avi格式代码片断如下:<object id="video" width="400" height="200" border="0" classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA"><param name="ShowDisplay" value="0"><param name=

在 PHP 网页中包含文件 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;

如果多个文件中有重复的代码,则可以将这部分代码写到一个文件中去,然后在需要的地方把这个文件包含进来即可.注意在这个文件中,只需要这些重复的代码,而不需要其它的格式或者什么的,文件名可以随便起,后缀可要可不要. 通过使用包含文件,您可以在自己的网站中的多个网页上轻松包含相同的内容.所谓包含文件是指当网页在浏览器中呈现时动态地包含在网页中的文件. 包含文件可以简化站点的管理工作.例如,您可以创建网站中多个网页上所要包含的网页横幅.网站信息块或菜单之类的内容.这样,当需要更改这些内容时,只需在单个文件

网页中的框架

 Html中的框架,学习完今天这节,基本的Html的理论知识就告一段落了.  什么是Html框架? 将浏览器窗口,划分为不同的区域,每个区域可以包含不同的网页.以实现,多个网页在一个浏览器窗口中现实的效果. 小结:说白了,就是起到一个整合作用,把其他网页的内容直接嵌套过来利用. Html框架语法 <frameset rows="控制行数及行高" cols="控制列数及列宽" framespacing="框架间距" frameborder

在WebBrowser中通过模拟键盘鼠标操控网页中的文件上传控件

在WebBrowser中通过模拟键盘鼠标操控网页中的文件上传控件 引言 这两天沉迷了Google SketchUp,刚刚玩够,一时兴起,研究了一下WebBrowser. 我在<WebBrowser控件使用技巧分享>一文中曾谈到过"我现在可以通过WebBrowser实现对各种Html元素的操控,唯独无法控制Html的上传控件",出于安全原因,IE没有对上传控件提供操控支持,这使得我们没法像控制其他控件一样用简单的代码进行赋值. 比较实际的解决方案就是模拟操作了,下面我就将演示

关于网页中图片为中文名无法显示的解决办法

转载:http://lofei117.iteye.com/blog/1074182 网页中很多时候要用到图片,通过img标签或者滤镜来显示在页面上.而当文件名为中文名时会遇到图片无法正确加载,导致无法显示. 解决办法如下: 1:改变服务器的配置,使服务器支持utf-8来显示图片.这个经过测试是有效的,但是有一点是服务器配置修改了以后,再使用request来获取参数时,中文乱码的问题.通过System.out.print来打印出来的参数是正确的,但是赋值给String对象后却不是正确的值,再通过S

Java使用正则表达式取网页中的一段内容(以取Js方法为例)

关于正则表达式: 表1.常用的元字符 代码 说明 . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字 \s 匹配任意的空白符 \d 匹配数字 \b 匹配单词的开始或结束 ^ 匹配字符串的开始 $ 匹配字符串的结束 表2.常用的限定符 代码/语法 说明 * 重复零次或更多次 + 重复一次或更多次 ? 重复零次或一次 {n} 重复n次 {n,} 重复n次或更多次 {n,m} 重复n到m次 表3.常用的反义代码 代码/语法 说明 \W 匹配任意不是字母,数字,下划线,汉字的字符 \S