Foxtable(狐表)用户栏目专家坐堂 → 专业报表打印标签的方向问题


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

主题:专业报表打印标签的方向问题

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


加好友 发短信
等级:幼狐 帖子:192 积分:1670 威望:0 精华:1 注册:2012/2/8 22:07:00
专业报表打印标签的方向问题  发帖心情 Post By:2013/8/4 17:28:00 [只看该作者]

标签预览正常(预览的效果就是最终想要的),但打印后与标签呈90度角,且横跨两个标签

代码:

Dim doc As New PrintDoc '定义一个新报表

doc.PageSetting.Height = 32  '标签纸高
doc.PageSetting.Width = 52  '标签纸宽
doc.PageSetting.Landscape = True   ‘调整过
doc.PageSetting.LeftMargin = 1 '设置左边距
doc.PageSetting.RightMargin = 1 '设置右边距
doc.PageSetting.TopMargin = 1 '设置上边距
doc.PageSetting.BottomMargin = 1 '设置下边距
doc.AutoRotate = False  '调整过

Dim rx As prt.RenderText
Dim rm As prt.RenderEmpty '定一个空对象


rm = new prt.RenderEmpty '定义一个新的空对象
rm.BreakBefore = prt.BreakEnum.Page '打印前换页
doc.Body.Children.Add(rm) '加入到报表中

rx = New prt.RenderText
rx.Text = "同协制造"
rx.Style.Font = New Font("黑体",14)
rx.X = 2
rx.Y = 3
Doc.Body.Children.Add(rx)

rx = New prt.RenderText
rx.Text = "  No:513070001"
rx.Style.Font = New Font("宋体",12)
rx.X = 2
rx.Y = 9
Doc.Body.Children.Add(rx)

rx = New prt.RenderText
rx.Text = "用户:用户姓名"
rx.Style.Font = New Font("宋体",12)
rx.X = 2
rx.Y = 14
Doc.Body.Children.Add(rx)

rx = New prt.RenderText
rx.Text = "衣柜"
rx.Style.Font = New Font("宋体",12)
rx.X = 2
rx.Y = 22

Doc.Body.Children.Add(rx)
doc.Preview()

条码打印机用的是TDP-245驱动程序。使用 BarTender 条码打印软件时,一切正常,但在专业报表中,文字方向总是不对,请高手看下,还有哪些地方需要调整。
图片点击可在新窗口打开查看此主题相关图片如下:bq.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2013-8-4 17:29:12编辑过]

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


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/8/4 19:06:00 [只看该作者]

把:doc.AutoRotate = False 上移到代码的第二行试试:

 

 

Dim doc As New PrintDoc '定义一个新报表
doc.AutoRotate = False
……

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/8/4 19:25:00 [只看该作者]

 doc.AutoRotate = False 涉及到硬件问题,的稳定性不太好。

 如果你是在预览窗口点的打印,应该就是不旋转的;如果你是直接print的话,可能会不旋转。

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


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/8/5 13:40:00 [只看该作者]

我的理解不一样:

 

      1、当定义完一个报表,首先要禁止自动旋转,然后再定义报表宽、高度;

      2、相反,如果先定义了报表宽、高度,当报表宽度大于报表高度时,代码执行到这里就已经自动旋转了,在后续的代码再用doc.AutoRotate = False 来禁止自动旋转时,实际报表已经自动旋转了,后面的禁止是在当前的报表(已经旋转后的基础上)形成的,所以,这个禁止将无效;

      3、由于预览不涉及到硬件,故:预览没有问题,而在打印机驱动程序中执行会出现错误。


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


加好友 发短信
等级:幼狐 帖子:192 积分:1670 威望:0 精华:1 注册:2012/2/8 22:07:00
  发帖心情 Post By:2013/8/19 21:42:00 [只看该作者]

谢谢大家的指导!
今天试了调整代码,仍然和原来一样的结果:打印预览正常,打印出来的文字与预览相比,还是转了90度(标签纸的方向与预览是一样的)。
报表内容宽、高度好像也没走出报表尺寸,自动旋转会起作用吗?求解

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/8/19 21:55:00 [只看该作者]

以下是引用whoami2012在2013-8-19 21:42:00的发言:
谢谢大家的指导!
今天试了调整代码,仍然和原来一样的结果:打印预览正常,打印出来的文字与预览相比,还是转了90度(标签纸的方向与预览是一样的)。
报表内容宽、高度好像也没走出报表尺寸,自动旋转会起作用吗?求解


直接设置打印机成横向打印看是否可以吧。

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


加好友 发短信
等级:二尾狐 帖子:509 积分:3547 威望:0 精华:3 注册:2012/11/13 15:49:00
  发帖心情 Post By:2013/8/20 2:37:00 [只看该作者]

在c1控件中
 
doc.PageSetting.Landscape = True   doc.AutoRotate = False 
 
全部是即时生效的属性,即设置后,即时引发调整页面属性的方法或函数
 
你只设一个属性试试,不要两个同时设置 

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/8/20 8:27:00 [只看该作者]

1、doc.PageSetting.Landscape = True doc.AutoRotate = False  只设置一个

2、不要预览,直接打印

3、只设置页面宽度,不设置高度看看。


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


加好友 发短信
等级:三尾狐 帖子:604 积分:6988 威望:0 精华:0 注册:2012/5/30 16:01:00
  发帖心情 Post By:2013/12/9 12:40:00 [只看该作者]

顶贴一下,我也打印机是tsc ttp-245 plus 也遇到同样无法解决的问题,怎么处理?

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


加好友 发短信
等级:狐精 帖子:3313 积分:23146 威望:0 精华:1 注册:2009/3/31 11:25:00
  发帖心情 Post By:2013/12/9 12:59:00 [只看该作者]

要在打印机服务器设置打印标签的实际纸张大小,在打印机设置纸张类型中选中自定义的纸张大小。在代码设置旋转无效。


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