如何使用OpenXMLSDK从c#更改页面方向

如何使用OpenXMLSDK从c#更改页面方向,c#,openxml,export-to-word,C#,Openxml,Export To Word,我正在创建word文档 using (WordprocessingDocument myDoc = WordprocessingDocument.Create(@"c:\generate\export.docx", WordprocessingDocumentType.Document)) { MainDocumentPart mainPart = myDoc.AddMainDocumentPart(); mainPart.Document = new Do

我正在创建word文档

using (WordprocessingDocument myDoc = WordprocessingDocument.Create(@"c:\generate\export.docx", WordprocessingDocumentType.Document))          
{
    MainDocumentPart mainPart = myDoc.AddMainDocumentPart(); 
    mainPart.Document = new Document();               
    var body = new Body();               
    var p = new Paragraph(
        new ParagraphProperties(
            new Justification()
            {
                Val = JustificationValues.Center
            }
        ),
        new Run(new Text("test"))
    ); 
    body.Append(p);                
    mainPart.Document.Append(body);                
    // Save changes to the main document part.                 
    mainPart.Document.Save();
}

如何将页面方向设置为横向?

您必须创建一个新的分区属性

WordprocessingDocument wd = someDoc;

wd.MainDocumentPart.Document.Body.Append(
    new Paragraph(
        new ParagraphProperties(
            new SectionProperties(
                new PageSize() { Width = (UInt32Value)15840U, Height = (UInt32Value)12240U, Orient = PageOrientationValues.Landscape },
                new PageMargin() { Top = 720, Right = Convert.ToUInt32(right * 1440.0), Bottom = 360, Left = Convert.ToUInt32(left * 1440.0), Header = (UInt32Value)450U, Footer = (UInt32Value)720U, Gutter = (UInt32Value)0U }))));
其中left==左边距,right==右边距(双倍)