Foxtable(狐表)用户栏目专家坐堂 → [求助] 打印时出现一道白线


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

主题:[求助] 打印时出现一道白线

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


加好友 发短信
等级:三尾狐 帖子:712 积分:5553 威望:0 精华:0 注册:2019/11/14 9:36:00
[求助] 打印时出现一道白线  发帖心情 Post By:2020/11/13 16:09:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20201113160650_爱奇艺.jpg
图片点击可在新窗口打开查看

打印时出现一道白线,导出PDF时却没有,如果导出PDF打印又会出现各种边距的问题,增加很大工作量,能否解决这个白线的问题


With Tables(e.Form.name & "_table1")
    If .Count > 0 Then
        Dim i As Integer
        Dim ii As Integer
        Dim i1 As Integer = .TopRow                                    '最上行位置
        Dim i2 As Integer = .BottomRow                                 '最末行位置
        Dim s As Integer
        s = i2 - i1 +1   '选择的行数
        '定义报表
        Dim doc As New PrintDoc '定义一个报表
        doc.PageSetting.PaperKind = 11 '纸张类型改为A4
        doc.PageSetting.Landscape = True '横向打印
        Doc.PageSetting.LeftMargin = 57 '设置左边距
        Doc.PageSetting.RightMargin = 10 '设置右边距
        Doc.PageSetting.TopMargin = 10 '设置上边距
        Doc.PageSetting.BottomMargin = 3 '设置下边距
        Dim ra As prt.RenderEmpty '定一个空对象
        Dim drs As List(Of DataRow)
        drs = .DataTable.Select("[选] = True")
        For Each dr As DataRow In drs
            ra = new prt.RenderEmpty '定义一个新的空对象
            ra.BreakBefore = prt.BreakEnum.Page '打印前换页
            doc.Body.Children.Add(ra) '加入到报表中
            '表格
            Dim rt As New prt.RenderTable() '定义一个表格对象
            rt = New prt.RenderTable() '定义一个表格对象
            rt.Rows.Count = 1 '设置行数
            rt.Cols.Count = 1 '设置列数
            rt.Style.GridLines.All = New prt.Linedef(Color.Transparent) '将表格的颜色设为无色Transparent,red,
            rt.Width = 140
            'rt.Height = 150
            Dim h As Integer
            h = Round2(140 * dr("高长比例"),1)    '第一行高度
            rt.rows(0).Height = h
            rt.Style.Padding.Bottom = 1 '左边距5毫米
            
            doc.Body.Children.Add(rt) '将表格对象加入到报表中
            '图片
            Dim rm As New prt.RenderImage() '定义一个图片对象
            rm = New prt.RenderImage() '定义一个图片对象
            Dim txt As String
            txt = dr("路径")
            rm.Image = GetImage(txt) '请改为实际的图标名称和路径
            rm.Style.ImageAlign.AlignHorz = prt.ImageAlignHorzEnum.Center '图片水平居中
            rm.Style.ImageAlign.AlignVert = prt.ImageAlignVertEnum.Top '图片垂直居下
            rm.Style.ImageAlign.StretchHorz = True '禁止水平方向扩展图片
            rm.Style.ImageAlign.StretchVert = True '禁止垂直方向扩展图片
            rt.Cells(0,0).RenderObject = rm '将单元格内容设置为图片对象rm
            '题名
            Dim rx As New prt.RenderText '创建一个文本
            rx.Text = dr("题名") '设置文本对象的内容
            rx.Text = dr("档案号") & ". " & dr("题名") '设置文本对象的内容
            rx.Width = 140
            rx.Style.Font = New Font("宋体", 11, FontStyle.Bold) '设置字体如果不设置字体,会出现导出PDF乱码
            rx.Style.LineSpacing = 120 '1.3倍行距
            rx.Style.TextAlignHorz = prt.AlignHorzEnum.Left '水平居左
            rx.Style.TextAlignVert = prt.AlignVertEnum.Top '垂直居上
            doc.Body.Children.Add(rx) '将文本对象加入到报表
            
            rx = New prt.RenderText '创建一个文本
            rx.text = "- " & dr("页码") & " -"
            rx.Style.Font = New Font("宋体", 11, FontStyle.Bold) '设置字体如果不设置字体,会出现导出PDF乱码
            rx.x = 65
            rx.Y = 137
            doc.Body.Children.Add(rx) '将文本对象加入到报表
        Next
        Doc.Preview() '预览报表
    End If
End With

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107812 积分:548411 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/13 16:26:00 [只看该作者]

我测试没有这种问题,换个图片也这样?上传实例看看

 回到顶部