以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]打印后左上角有一个点?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=158245)

--  作者:2425004926
--  发布时间:2020/11/12 16:39:00
--  [求助]打印后左上角有一个点?
打印空白数据时,左上角出现一个点?怎么能不出现这个点?(这一页我只是想打印一个页码)


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

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() \'预览报表
        Dim dlg As New FolderBrowserDialog  \'保存目录
        If dlg.ShowDialog = DialogResult.Ok Then
            Dim t As Integer
            For t = 1 To 1000
                If FileSys.FileExists(dlg.SelectedPath & "\\手绘西安" & t & ".pdf") Then
                    Continue For
                Else
                    Dim fl As String = dlg.SelectedPath & "\\手绘西安" & t & ".pdf"
                    doc.SavePDF(fl) \'保存为PDF文件
                    Dim Proc As New Process \'打开PDF文件
                    Proc.File = fl
                    Proc.Start()
                    Exit For
                End If
            Next
        End If
    End If
End With

--  作者:有点蓝
--  发布时间:2020/11/12 16:52:00
--  
rx.Text = dr("档案号") & ". " & dr("题名")

改为

if dr.isnull("档案号") = false
rx.Text = dr("档案号") & ". " & dr("题名")
end if

--  作者:2425004926
--  发布时间:2020/11/12 17:02:00
--  
谢谢!取掉那个点了