以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  窗口保存为pdf文档  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=104055)

--  作者:zhsenchzhi
--  发布时间:2017/7/21 22:21:00
--  窗口保存为pdf文档
一个窗口中,有很多内容,包括表格,label,button等等,能不能将窗口显示的内容,直接保存为一个 word文档,或者excel  ,pdf文档呢?

主要不是保存窗口的  模板,而是他显示出具体的内容之后,保存为文件

--  作者:有点蓝
--  发布时间:2017/7/21 22:39:00
--  
利用窗口打印直接输出即可http://www.foxtable.com/webhelp/scr/1590.htm

Dim doc As PrintDoc = e.Form.GernatePrintDoc()
doc.SavePDF("d:\\ff.pdf")

--  作者:zhsenchzhi
--  发布时间:2017/7/21 23:04:00
--  
多谢,不过我试了一下,保存的pdf文件,都是乱码,请问该怎么样设置才行呢?
--  作者:有点蓝
--  发布时间:2017/7/21 23:17:00
--  
不需要设置什么,可能是字体问题http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=78008&skin=0
--  作者:zhsenchzhi
--  发布时间:2017/7/23 18:26:00
--  
目前 窗口打印 和输出存在的问题及代码

1 打印 时  表的行数较多时,  上边的表和下面的 数据 发生重叠

代码如下:

Dim p As WinForm.Panel = Forms("会议_季报编辑窗口").Controls("PanelMiddle")

Forms("会议_季报编辑窗口").Page.PaperKind = 9 \'纸张类型改为A4

Forms("会议_季报编辑窗口").Page.LeftMargin = 1 \'设置左边距
Forms("会议_季报编辑窗口").Page.RightMargin = 1 \'设置右边距
Forms("会议_季报编辑窗口").Page.TopMargin = 30 \'设置上边距
Forms("会议_季报编辑窗口").Page.BottomMargin = 20 \'设置下边距

Dim doc As PrintDoc = Forms("会议_季报编辑窗口").GernatePrintDoc(p)
doc.Preview()

2  保存为  pdf  中文 为乱码   ,保存为  htm  和 image   居然数据 为空,啥也没有

代码如下:

Dim p As WinForm.Panel = Forms("会议_季报编辑窗口").Controls("PanelMiddle")

Forms("会议_季报编辑窗口").Page.PaperKind = 9 \'纸张类型改为A4

Forms("会议_季报编辑窗口").Page.LeftMargin = 1 \'设置左边距
Forms("会议_季报编辑窗口").Page.RightMargin = 1 \'设置右边距
Forms("会议_季报编辑窗口").Page.TopMargin = 30 \'设置上边距
Forms("会议_季报编辑窗口").Page.BottomMargin = 20 \'设置下边距

Dim doc As PrintDoc = Forms("会议_季报编辑窗口").GernatePrintDoc(p)
doc.SavePDF("c:\\aaa.pdf")
doc.SaveHTM("c:\\aaa.htm")
doc.SaveImage("c:\\aaa.jpg")


请各位老师指点一下, 上面的代码问题出在什么地方

多谢

--  作者:有点甜
--  发布时间:2017/7/23 18:37:00
--  

1、动态设置表格的最大行数

 

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

 

2、乱码问题,是你窗口字体问题。你窗口的控件换一种字体

 

    不能一次保存为三种,一次只能保存一种。


--  作者:zhsenchzhi
--  发布时间:2017/7/23 20:17:00
--  
1  不能设置最大行数, 只能设置最小行数,因为我们是要  打印出所有的数据的,设置最大行数,就会造成数据丢失

2  请问, 窗口控件应该设置成什么字体?我现在用的 字体 都是  宋体  12pt, 如下图所示, 另外, table 无法在界面设置字体,该怎样设置?


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


--  作者:有点甜
--  发布时间:2017/7/23 21:24:00
--  

1、哦,写错了,你可以设置最小行数,动态的设置就好。

 

2、如果你设置成黑体行不行?table的字体设置,参考 http://www.foxtable.com/webhelp/scr/0497.htm

 


--  作者:zhsenchzhi
--  发布时间:2017/7/24 2:14:00
--  
1  我就是 设置最小行数 为 20, 才出现的上下重叠现象,实际中,可能出现 超过20的情况更多
--  作者:有点甜
--  发布时间:2017/7/24 8:53:00
--  
以下是引用zhsenchzhi在2017/7/24 2:14:00的发言:
1  我就是 设置最小行数 为 20, 才出现的上下重叠现象,实际中,可能出现 超过20的情况更多

 

最小行数,根据你表格的行数设置,在打印之前用代码设置,赋值为动态的值;