以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助] 专业报表图片设置  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=128023)

--  作者:zcgmxf
--  发布时间:2018/11/27 11:23:00
--  [求助] 专业报表图片设置
老师,下面的代码对单元格里图片太小设置没有作用?谢谢!

    Dim rm As New prt.RenderImage \'定义一个图片对象
    rm.Width = 30 
    rm.Height = 20
    rm.Image = GetImage("cdc.png") \'设置图片
    rm.Style.ImageAlign.KeepAspectRatio = False \'取消保持原有比例
    rt.Cells(1,0).Image = rm.Image
    rt.Cells(1,0).Style.ImageAlign.AlignHorz = prt.ImageAlignHorzEnum.Center
    rt.Cells(1,0).Style.ImageAlign.AlignVert = prt.ImageAlignHorzEnum.Center
    rt.Cells(1,0).Style.Padding.Top = 20
    rt.Rows(1).Height = 40
    doc.AutoRotate = False

--  作者:有点甜
--  发布时间:2018/11/27 12:13:00
--  

测试没问题,请贴出可以测试代码

 

Dim doc As New PrintDoc \'定义一个报表
Dim rt As New prt.RenderTable() \'定义一个表格对象
Dim rm As New prt.RenderImage() \'定义一个图片对象
rm.Image = GetImage("d:\\test.jpg") \'请改为实际的图标名称和路径
rm.Style.ImageAlign.AlignHorz = prt.ImageAlignHorzEnum.Center \'图片水平居中
rm.Style.ImageAlign.AlignVert = prt.ImageAlignVertEnum.Center \'图片垂直居中
\'rm.Style.ImageAlign.StretchHorz = False \'禁止水平方向扩展图片
\'rm.Style.ImageAlign.StretchVert = False \'禁止垂直方向扩展图片
doc.Body.Children.Add(rt) \'将表格对象加入到报表中
rt.Style.GridLines.All = New prt.Linedef(Color.DarkGray) \'将表格的颜色设为深灰色
rt.Rows.Count = 3 \'设置行数
rt.Cols.Count = 3 \'设置列数
rt.Width = 60 \'设置表格的宽度
rt.Height = 60 \'设置表格的高度
rt.Cells(1,1).RenderObject = rm \'将单元格内容设置为图片对象rm
Doc.Preview() \'预览报表


--  作者:zcgmxf
--  发布时间:2018/11/28 6:46:00
--  
If Tables("职业健康检查表_table1").Current Is Nothing Then
    MessageBox.Show("当前没有加载数据!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    Return
Else
    Dim r As Row = Tables("职业健康检查表_table1").Current
    Dim doc As New Printdoc
    Dim rt As prt.RenderTable
    rt = New prt.RenderTable
    rt.Style.GridLines.All = New Prt.LineDef(0.2, Color.Black)
    rt.Rows.Count = 200
    rt.Cols.Count = 10
    rt.Cells(0,0).SpanCols = 10
    rt.Cells(0,0).Text = "XX市XXX疾病预防控制中心职业健康" & vbcrlf & "检查报告"
    rt.Rows(0).Style.Font = New Font("宋体", 18, FontStyle.Bold)
    rt.Rows(0).Height = 30
    rt.Rows(0).Style.TextAlignVert = prt.AlignVertEnum.bottom
    rt.Rows(0).Style.TextAlignHorz = prt.AlignHorzEnum.Center
    rt.Style.LineSpacing = 200
    rt.Cells(1,0).SpanCols = 10
    Dim rm As New prt.RenderImage \'定义一个图片对象
    rm.Width = 30 
    rm.Height = 20
    rm.Image = GetImage("cdc.png") \'设置图片
 \'    rm.Style.ImageAlign.KeepAspectRatio = False \'取消保持原有比例
    rt.Cells(1,0).Image = rm.Image
    rt.Cells(1,0).Style.ImageAlign.AlignHorz = prt.ImageAlignHorzEnum.Center
    rt.Cells(1,0).Style.ImageAlign.AlignVert = prt.ImageAlignHorzEnum.Center
  \'   rt.Cells(1,0).Style.ImageAlign.KeepAspectRatio = False \'取消保持原有比例
    rt.Cells(1,0).Style.Padding.Top = 20
    rt.Rows(1).Height = 40
    doc.AutoRotate = False

    doc.Body.Children.Add(rt)    
    doc.Preview
end if
[此贴子已经被作者于2018/11/28 6:48:02编辑过]

--  作者:有点甜
--  发布时间:2018/11/28 10:01:00
--  

你要设置的是单元格宽高,比如

 

rt.Rows(1).Height = 100


--  作者:zcgmxf
--  发布时间:2018/12/3 11:36:00
--  
老师,专业报表引用 服务器上的图片该如何处理?先下载吗?有么有简单的办法。谢谢!
[此贴子已经被作者于2018/12/3 11:36:01编辑过]

--  作者:有点甜
--  发布时间:2018/12/3 13:08:00
--  
以下是引用zcgmxf在2018/12/3 11:36:00的发言:
老师,专业报表引用 服务器上的图片该如何处理?先下载吗?有么有简单的办法。谢谢!
[此贴子已经被作者于2018/12/3 11:36:01编辑过]

 

必须先下载,才能引用。

 

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