|
主题: 打印中碰到的问题,赐教
|
 阿州
职务:普通成员
等级:2
金币:10.0
发贴:447
注册:2002/3/20 14:29:49
|
#12003/10/30 1:44:19
想实现打印屏幕某一区域的功能,看到PRNT.U32正有合适的函数 函数:prntscrn 语法:result = prntscrn(screen left, screen top, screen width,screen height, print left, print top, print width, print height) 功能:该函数将打印指定的部分屏幕区域。其中screen left、screen top、screen width、screen height分别指定了屏幕区域的大小;print left、print top、print width、print height分别指定了打印纸上的具体打印位置。 我在程序中用到的代码如下,打印结果是用白纸,气死我了 ---------------------------------------------------------- prntopen(WindowHandle,4,2,1) prntscrn(4,18,792,533,17,29,792,533) prntclose() ---------------------------------------------------------- 上边那些参数的单位我是按照像素计算的,不知道是否妥当? 帮忙挑挑错,多谢,很少搞精确打印的东西,这是第一次
|
 阿州
职务:普通成员
等级:2
金币:10.0
发贴:447
注册:2002/3/20 14:29:49
|
|
 燕云
职务:普通成员
等级:2
金币:10.0
发贴:600
注册:2001/5/12 1:31:32
|
#32003/10/31 10:31:18
多试用几次多花几张纸应该就知道了,上面的top和width的数值好象应该是根据au中系统位置变量转换的吧.(也没用过)
云网媒体【YZCNET.COM】云网媒体开展软件技术、互联网技术、电子商务技术、多媒体设计等服务; 其中包括 :软件开发、网站建设、手机服务、多媒体设计、 图片及演示文稿服务等;
|
 与人同乐
职务:管理员
等级:6
金币:18.0
发贴:3928
注册:2001/3/11 15:45:42
|
#42003/10/31 13:56:11
不如截屏之后(似乎有这种范例)用jumpoutprint 来打印。
|
 魔岩
职务:版主
等级:6
金币:34.0
发贴:4453
注册:2004/1/13 10:53:31
|
#52003/10/31 15:57:40
方法可行。。。范例就在AW的SHOWME里。。
|
 5D荣誉斑竹
职务:普通成员
等级:3
金币:10.0
发贴:954
注册:2001/5/11 19:19:54
|
#62003/10/31 17:13:48
alpicview.ocx可以截屏!!!!!
真正的光明绝不是永没有黑暗的时间,只是永不被黑暗所湮没罢了;真正的英雄绝不是永没有卑下的情操,只是永不被卑下的情操所屈服罢了。
|
 阿州
职务:普通成员
等级:2
金币:10.0
发贴:447
注册:2002/3/20 14:29:49
|
#72003/11/4 9:59:17
谢谢朋友们,我开发成学的这台电脑没打印机,郁闷~ 来回折腾吧,到别的电脑上测试。 另外我用 JumpPrintReturn("",FileLocation^"map\\FG\\"^CurrentPageNum^".jpg") 打印指定文件。在XP会掉用照片编辑器来进行打印。 在98和2000下面则会出错,有一个shell 31的错误,目前正在查找原因,找一种合适的打印方法
|
 与人同乐
职务:管理员
等级:6
金币:18.0
发贴:3928
注册:2001/3/11 15:45:42
|
#82003/11/4 10:04:05
保险起见存储为BMP格式,然后用mspaint.exe打印,这个程序哪个版本都有。 JumpPrintReturn("mspaint.exe",FileLocation^"map\\FG\\"^CurrentPageNum^".bmp" )
|
 阿州
职务:普通成员
等级:2
金币:10.0
发贴:447
注册:2002/3/20 14:29:49
|
#92003/11/4 10:10:46
谢谢 老 Y 大哥,我试试
|
 阿州
职务:普通成员
等级:2
金币:10.0
发贴:447
注册:2002/3/20 14:29:49
|
#102003/11/4 15:43:56
用了N张纸终于试验出来了 PRNT.U32还是挺不错的
prntscrn(4,18,792,533,17,29,792,533)
后面四个参数是在打印纸上的打印范围,单位是0.1英寸 而前面四个参数是屏幕的范围,单位是像素
调整好就ok了,不要外部软件,打印很方便。
|
 阿州
职务:普通成员
等级:2
金币:10.0
发贴:447
注册:2002/3/20 14:29:49
|
#112003/11/4 17:33:48
Rock ,你小子竟然知道不告诉我,我的N张纸  来你地盘也不照着点~ 见到你一定把你X掉。。。。呵呵~
|
 media2
职务:普通成员
等级:1
金币:0.0
发贴:41
注册:2001/7/21 11:57:54
|
#122005/8/6 10:20:47
我也用这个在打印,能打印出东西来,但有一个问题,就是每一行只能打6个字。字的大小我用的是默认的,没有调整,实在是不明白。
这个里面也没有设置一行的宽度的地方啊,那个open函数只能设定左边距和上边距。
|
 wellzhao
职务:普通成员
等级:1
金币:0.0
发贴:1
注册:2006/2/6 9:17:33
|
#132006/6/6 13:36:07
我也用冷血大哥的方法,怎么打出来的还是白纸啊?您后面的参数跟一开始的参数是一样的啊!??麻烦告诉小弟一下!
|