2016-11-13 39 views
0

我尝试下面的代码如何在ConvertToXpsDocument中设置页面大小(SaveOptions.XpsDefault);

  XpsDocument xpsDocument = ef.ConvertToXpsDocument(SaveOptions.XpsDefault); 

      documentViewer.Tag = xpsDocument; 

      documentViewer.Document = xpsDocument.GetFixedDocumentSequence(); 

,到目前为止,工程加载xpsdocument观众一个Excel文件并显示。问题是在转换过程中页面尺寸发生了变化。似乎假设页面大小为8乘11英寸,并且文档被拉伸。 Excel文档是为A4纸设计的。这意味着宽度增加,最后一列移动到下一页。

如何影响SaveOptions.XpsDefault的纸张大小和边框宽度?

回答

0

A4格式是8.267“x 11.692”,因此看起来假设是正确的。不过,您可以更改类似下面的纸张尺寸:

ExcelWorksheet ws = ef.Worksheets.ActiveWorksheet; 
ws.PrintOptions.PaperType = PaperType.A4; 

然而,关于内容被移动到下一个页面,这将需要调查您的Excel文件的内容。
但如果你有兴趣,你可以明确指定内容的宽度(和/或高度)应符合在单页上,如下所示:

ws.PrintOptions.FitWorksheetWidthToPages = 1; 

末关于边界,你可以指定宽度通过使用LineStyle

+0

感谢您的回答。但是,Excel文件是完全正确的,并在发送到打印机时打印完整。只有转换到xpsdoc导致问题。我正在与gembox联系并获得解决部分问题的错误修复。他们告诉我最新版本正确地完成了这项工作。 – user1230268

+1

与最新版本4.1的问题得到解决。这只是3.7版本中的一个错误 – user1230268

相关问题