Foxtable(狐表)用户栏目专家坐堂 → [求助]套打时,横向进纸


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

主题:[求助]套打时,横向进纸

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


加好友 发短信
等级:五尾狐 帖子:1141 积分:11272 威望:0 精华:0 注册:2017/9/26 16:30:00
[求助]套打时,横向进纸  发帖心情 Post By:2019/4/29 21:01:00 [只看该作者]

编写的代码是按照A4竖向,预览是这样的:

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

由于待打印的封皮左侧(装订侧)是折叠的,和右侧相比,要厚一些。因此,想把封皮展开后横向进纸,如下图的方向放入打印机:

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

-----------------------------
文字的定位代码是按照A4竖向编制的:

                    Dim doc As New PrintDoc '定义一个报表
                    doc.PageSetting.Width = 210 '纸张宽度为100毫米
                    doc.PageSetting.Height = 297 '纸张高度为120毫米
                    Dim rx As prt.RenderText '定义一个文本对象
                    Doc.PrinterName = e.Form.Controls("TextBox1").text  '打印机名称
                    
                    Dim rep As New prt.RenderEmpty '定义一个新的空对象
                    rep.BreakBefore = prt.BreakEnum.Page '打印前换页
                    doc.Body.Children.Add(rep ) '加入到报表中
                    
                    rx = new prt.RenderText
                    rx.Text = CurRow("审级")
                    rx.Style.Font = New Font("宋体", 20, FontStyle.Regular)
                    rx.x = 112 + x '设置坐标的时候,注意加上偏移参数
                    rx.y = 62 + y
                    doc.body.Children.Add(rx)
                    
                    rx = new prt.RenderText
                    rx.Text = CurRow("案号_年份尾数")
                    rx.Style.Font = New Font("宋体", 15, FontStyle.Regular)
                    rx.x = 80 + x '设置坐标的时候,注意加上偏移参数
                    rx.y = 86 + y
                    doc.body.Children.Add(rx)
                    .................

我试过这两句代码,但是不行:
doc.PageSetting.Landscape = True '横向打印
rt.Style.TextAngle = -270 '顺时钟旋转度

因此,请老师指教,这种情况如何处理,谢谢!



[此贴子已经被作者于2019/5/1 8:45:24编辑过]

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


加好友 发短信
等级:超级版主 帖子:110333 积分:561507 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/4/29 21:10:00 [只看该作者]

做不到这样的

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


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

旋转绝对是可以的,请认真测试

 

http://www.foxtable.com/webhelp/scr/1168.htm

 


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


加好友 发短信
等级:五尾狐 帖子:1141 积分:11272 威望:0 精华:0 注册:2017/9/26 16:30:00
  发帖心情 Post By:2019/4/30 15:12:00 [只看该作者]

谢谢甜老师!

经测试,存在两个问题:

1、旋转后的定位:

x-左边距;

y-上边距。

如果能定位下边距才行(相当于竖向的左边距),见下图。

2、两处文字块的代码为什么不能同时运行?

 

Dim doc As New PrintDoc '定义一个报表
doc.PageSetting.Width = 297 '纸张宽度为100毫米
doc.PageSetting.Height = 210 '纸张高度为120毫米
'Dim rt As prt.RenderText '定义一个文本对象

 

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

 

Dim rt As New prt.RenderText '定义一个文本对象
rt.Text = "新华网绵阳5月16日电(记者孙承斌)16日上午,在四川抗震救灾的"     '设置文本对象的内容
rt.Style.TextColor = Color.Red '字符颜色设为红色
rt.Style.TextAngle = -270 '顺时钟旋转45度
rt.Height = 100  '宽度------打印宽度,自动换行
rt.Style.Font = New Font("宋体", 20, FontStyle.Regular)
rt.x = 100   '左边距
rt.y = 20     '上边距

 

'rt As New prt.RenderText '定义一个文本对象
'rt.Text = "新华网绵阳5月16日电(记者孙承斌)16日上午,在四川抗震救灾的"     '设置文本对象的内容
'rt.Style.TextColor = Color.Red '字符颜色设为红色
'rt.Style.TextAngle = -270 '顺时钟旋转45度
'rt.Height = 100  '宽度------打印宽度,自动换行
'rt.Style.Font = New Font("宋体", 20, FontStyle.Regular)
'rt.x = 200
'rt.y = 40

 

doc.Body.Children.Add(rt) '将文本对象加入到报表
doc.Preview() '预览

 


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

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


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

1、你的位置的定位,自己根据实际需要填写对应的坐标。

 

2、rt = New prt.RenderText '定义一个文本对象


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


加好友 发短信
等级:五尾狐 帖子:1141 积分:11272 威望:0 精华:0 注册:2017/9/26 16:30:00
  发帖心情 Post By:2019/4/30 17:49:00 [只看该作者]

谢谢甜老师!
用如图的两句代码来定位竖向的起始位置=上边距+文字换行的长度

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


 回到顶部