Foxtable(狐表)用户栏目专家坐堂 → 自定义纸张预览后打印方向就不正确了(基本解决)


  共有5027人关注过本帖树形打印复制链接

主题:自定义纸张预览后打印方向就不正确了(基本解决)

帅哥哟,离线,有人找我吗?
scott518
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
自定义纸张预览后打印方向就不正确了(基本解决)  发帖心情 Post By:2014/6/5 20:53:00 [显示全部帖子]

下面是专业报表打印的代码,类似A5的纸张,但打印机的进纸方向是按宽度210mm进入。所以我设置是否横向打印为false

Dim doc As New PrintDoc '定义一个报表
doc.AutoRotate = False '禁止自动旋转打印内容

'---设置打印纸张
doc.PageSetting.Width = 210
doc.PageSetting.Height = 145
doc.PageSetting.Landscape = False  '是否横向打印
Doc.PageSetting.LeftMargin = 10  '设置左边距
Doc.PageSetting.RightMargin = 10  '设置右边距
Doc.PageSetting.TopMargin = 10  '设置上边距
Doc.PageSetting.BottomMargin 10  '设置下边距

 

打印出来的结果是方向正确,但只能显示一半的数据。即纸的右侧还空着却没打印出来。

 

若将doc.PageSetting.Landscape = true 则打印预览时好象显示正确,但打印出来是按横向打印的,抬头变成了和210mm宽度垂直的了,也不正确。请问哪里错了。

谢谢!


[此贴子已经被作者于2014-6-12 17:28:02编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
scott518
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/6/5 21:04:00 [显示全部帖子]

前面3点我是照着设置了,但我的打印机是喷墨的,没有第四项类似的选择纸张的设置,所以怎么都没弄好。是不是针式打印机一定会有啊?


 回到顶部
帅哥哟,离线,有人找我吗?
scott518
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/6/5 21:06:00 [显示全部帖子]

有没有直接写在代码里就生效的方法?因为我的专业报表的代码是直接写在函数里面的。

 回到顶部
帅哥哟,离线,有人找我吗?
scott518
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/6/5 21:32:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:360截图20140605212907310.jpg
图片点击可在新窗口打开查看

设置自定义纸张的是可以,但是打印首选项里没有帮助类似的选择自定义纸张的地方,我只好将方向那里选择纵向和横向都试过了,还是和以前打印的一样,不正确,没有任何改变


 回到顶部
帅哥哟,离线,有人找我吗?
scott518
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/6/6 8:57:00 [显示全部帖子]

弄了很久,发现原来我的打印机不用前面的设置,直接在打印首选项内设置自定义纸张就可以了,但是有个奇怪的问题设置了自定义纸张后,如果专业报表直接用Doc.Print() 就可以,但想用Doc.Preview() 预览一下再打印就和前面一样不正确了,这种情况要怎么处理,谢谢!


 回到顶部
帅哥哟,离线,有人找我吗?
scott518
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/6/6 10:57:00 [显示全部帖子]

唉,各种方式都试过了,去掉横向打印的代码及禁止旋转等都不可以,不管怎么样设置,报表最后用

Doc.Print() 都正确打印出来

Doc.Preview()再选择打印出来就不对。


 回到顶部
帅哥哟,离线,有人找我吗?
scott518
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/6/6 14:31:00 [显示全部帖子]

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=14873&skin=0

 

原来很早就有人反映过这个问题,但是怎么到现在都没解决呢?


 回到顶部
帅哥哟,离线,有人找我吗?
scott518
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/6/9 15:56:00 [显示全部帖子]

客户用的是爱普生针式连续打印机,因为用的是215X140mm的自定义纸张,现在如果预览后再打印就会不正确了,如果不预览下,多页连续打印时有时因为内容刚好多一点因为不能预览也不知道,导致每一页的后面都会增多只有一点点内容的另一页,造成了大量的浪费和不美观,如果可以用预览再打印的话用户可以人为的将行高或字体调整小点就避免了这个问题。  这个有没有办法解决啊,请教大家。谢谢了!

 回到顶部
帅哥哟,离线,有人找我吗?
scott518
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/6/9 16:22:00 [显示全部帖子]

是啊,但是不预览经常会出现我说的那个问题,用户很多表单都是这一种自定义的纸张,有没有办法解决呢?


 回到顶部
帅哥哟,离线,有人找我吗?
scott518
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:292 积分:2488 威望:0 精华:0 注册:2011/11/4 17:32:00
  发帖心情 Post By:2014/6/9 17:40:00 [显示全部帖子]

不太明白有点甜老师的意思,分开两个按钮设置,难道用户先按预览按钮预览后先关掉;再重新按打印按钮打印吗?因为预览后是界面上有个打印按钮用户直接点击就打印了。预览那个界面可以增加上用户自己设定的按钮吗?


 回到顶部
总数 15 1 2 下一页