3

我的应用程序需要使用 Open xml Sdk 2.0 将自定义报告导出到 Word 文档

我的导出功能工作正常,但我需要增加页面大小才能正确显示。(否则自动换行将是一个问题,并且报告看起来不太好)。

谁能建议我如何根据报告的宽度调整页面大小。

我还需要另一个帮助来对齐 word 文档。帖子链接是Word 中使用 OpenXml Sdk 2.0 的水平文本对齐

4

2 回答 2

9

嗯..终于找到答案了..我将发布用于设置页面大小的C#代码。

using Word = DocumentFormat.OpenXml.Wordprocessing;

WordprocessingDocument WordDoc = WordprocessingDocument.Create(SavePath, WordprocessingDocumentType.Document);
MainDocumentPart mainDocument = WordDoc.AddMainDocumentPart();
mainDocument.Document = new Word.Document();
Word.Body body = new Word.Body();

Word.SectionProperties SecPro = new Word.SectionProperties();
Word.PageSize PSize = new Word.PageSize();
PSize.Width = 15000;
PSize.Height = 11000;
SecPro.Append(PSize);
body.Append(SecPro);

body.Append(WordTable);
mainDocument.Document.Append(body);
mainDocument.Document.Save();
WordDoc.Close();

鲁本斯感谢您的回复。但我知道 PageSize。我正在寻找如何以及在何处插入它。我使用您在另一个问题中指定的方法找到了它(通过使用存档管理器打开 Word 文档)。

这里唯一的问题是像素和 Twips 之间的转换。(我的测量值以像素为单位)嗯,我必须为此做点别的事情。(我使用尝试和错误方法找到了 10 的乘法因子,它应该与像素测量一起使用转换为 Twips。不知道这是正确的。但对我来说很好。)

于 2009-11-25T15:49:55.300 回答
3

你应该和PageSize财产一起去。请注意,您需要twips用作单位。

于 2009-11-25T09:17:22.517 回答