洪水永不结冰 发表于 2014-11-14 14:51:00

spread 在线打印到处功能

iceman版主您好:
       因为查不到相关帮助文档,想找一个asp.net实现在线打印、导出excel、pdf 、word 功能的demo;非常感谢。这些功能都是通过button 调用
补充: 开发环境Vs2012 +spread 7.4

iceman 发表于 2014-11-14 17:41:00

回复 1楼洪水永不结冰的帖子

导出 Excel:http://www.gcpowertools.com.cn/LiveSamples/Spread/ASPNET/sampleexplorer/samples/ExcelCompatibility/Overview.aspx

PDF:
http://www.gcpowertools.com.cn/LiveSamples/Spread/ASPNET/sampleexplorer/samples/PrintToPDF/Overview.aspx

打印:
使用工具条上的打印按钮即可直接打印。
如果希望通过代码打印方法,可以通过前台方法,如下:

<SCRIPT language=javascript>
   function onPrintButtonClick() {
       FpSpread1.Print();
   }
</SCRIPT>


目前还无法保存到 Word 文件。

洪水永不结冰 发表于 2014-11-14 19:18:00

回复 2楼iceman的帖子

如果我想后台调用打印,打印设置的时候默认为横向打印,我设置属性Orientation 为Portrait,不起作用,请问是什么原因。并去掉http://   ......的下标。 再问如果要在一个单元格行换显示,请问怎么设置;另外打印时需要去掉如下图红色框内的文字,请问怎么去掉,其中左下角的打印的时候会显示http://.....aspx页面

洪水永不结冰 发表于 2014-11-15 15:32:00

回复 2楼iceman的帖子

版主您好,对上面关于打印时需要去掉如下图红色框内的文字,请问怎么去掉,其中左下角的打印的时候会显示http://.....aspx页面我已经找到方法

关于下图,打印出来四周的边框怎么去掉,如下图红色框标记所示

洪水永不结冰 发表于 2014-11-16 14:00:00

回复 4楼洪水永不结冰的帖子

关于边框的设置我已经找到了 需要设置 BorderWidth=&quot;0px&quot;

iceman 发表于 2014-11-17 11:18:00

回复 3楼洪水永不结冰的帖子

你好,

3# 打印方向问题,您的意思是打印机的默认设置为横向,而需要设置为纵向吗?
Spread目前还无法控件打印方向,提供的内置PrintInfo 类用于设置打印到 PDF效果,测试代码如下:

FarPoint.Web.Spread.PrintInfo prinf = new FarPoint.Web.Spread.PrintInfo();
            prinf.BestFitCols = true;
            prinf.BestFitRows = true;
            prinf.Centering = FarPoint.Web.Spread.Centering.Both;
            prinf.ColEnd = 10;
            prinf.Colors = new System.Drawing.Color[] {
      System.Drawing.Color.Green,
      System.Drawing.Color.Yellow,
      System.Drawing.Color.Gold,
      System.Drawing.Color.Indigo,
      System.Drawing.Color.Brown};
            prinf.ColStart = 0;
            prinf.FirstPageNumber = 1;
            prinf.Footer = &quot;/g\&quot;1\&quot;/cl\&quot;4\&quot;This is Page /p of /pc Pages&quot;;
            prinf.FooterHeight = 40;
            prinf.Header = &quot;/cl\&quot;0\&quot;Print Job For FarPoint Inc./n /n &quot;;
            prinf.HeaderHeight = 40;
            prinf.Margin = new FarPoint.Web.Spread.PrintMargin(10, 10, 10, 10, 20, 20);
            prinf.Opacity = 50;
            prinf.Orientation = FarPoint.Web.Spread.PrintOrientation.Landscape;
            FpSpread1.ActiveSheetView.PrintInfo = prinf;
            FpSpread1.SavePdfToResponse(&quot;test.pdf&quot;);

关于 3# 问题红色框问题,目前没有内置属性来控制,需要询问产品组,看是否有合适的解决方案。

如果有其他问题,欢迎继续沟通。

洪水永不结冰 发表于 2014-11-18 11:01:00

回复 6楼iceman的帖子

在用spread在线打印时,怎么代码设置IE去掉页眉页脚.

iceman 发表于 2014-11-18 14:01:00

回复 7楼洪水永不结冰的帖子

你好,

图片中选项为 IE 功能,附件在网页打印页面中的,Spread 无法控制这部分:


Spread 可以控制如图所示部分:



代码:
      protected override void Render(HtmlTextWriter writer)
      {
            Control vp;
            LiteralControl header;
            LiteralControl footer;

            if (FpSpread1.IsPrint)
            {
                vp = this.Controls.Controls.Controls;
                //The Viewport consits of three children
                //Controls(0) is a LiteralControl and holds the sheet name for text
                //Controls(1) is a Table and is the downlevel Spread control
                //Controls(2) is another LiteralControl to force some more line breaks.
                header = ((LiteralControl)(vp.Controls));
                header.Text = "<DIV ALIGN=center>页头设置测试</DIV><BR>";
                footer = ((LiteralControl)(vp.Controls));
                footer.Text = "<BR><DIV>页脚设置测试</DIV><BR><BR>";
            }
            base.Render(writer);
      }

谢谢
页: [1]
查看完整版本: spread 在线打印到处功能