2

我想在使用 C# 中的代码自动化创建的 Word 文档上设置边距。

我已经开始使用该过程,ActiveDocument.TopMargin =但我找不到类似于 vb 的 C# 代码Word.InchesToPoint(.5) 任何帮助将不胜感激

4

3 回答 3

8

有时最简单的方法是有效的。这行代码解决了问题

oWord.ActiveDocument.PageSetup.TopMargin = (float)50;
于 2012-01-18T02:25:50.213 回答
3

您必须获取 Word 应用程序的实例:

Word.Application oWord = new Word.Application();
oWord.InchesToPoint((float)0.5);

请参阅参考:http: //msdn.microsoft.com/en-us/library/ff197549.aspx

于 2012-01-17T02:50:44.790 回答
1

您可以像这样使用 Word Application 对象的 InchesToPoints 方法:

        Word.Application wrdApplication = new Word.Application();
        Word.Document wrdDocument;
        wrdApplication.Visible = true;
        wrdDocument = wrdApplication.Documents.Add();
        wrdDocument.PageSetup.Orientation = Word.WdOrientation.wdOrientLandscape;
        wrdDocument.PageSetup.TopMargin = wrdApplication.InchesToPoints(0.5f);
        wrdDocument.PageSetup.BottomMargin = wrdApplication.InchesToPoints(0.5f);
        wrdDocument.PageSetup.LeftMargin = wrdApplication.InchesToPoints(0.5f);
        wrdDocument.PageSetup.RightMargin = wrdApplication.InchesToPoints(0.5f);

或者,如果您愿意,您可以自己制作...

    private float InchesToPoints(float fInches)
    {
        return fInches * 72.0f;
    }

它可以用于这样的事情:

        Word.Application wrdApplication = new Word.Application();
        Word.Document wrdDocument;
        wrdDocument = wrdApplication.Documents.Add();
        wrdDocument.PageSetup.Orientation = Word.WdOrientation.wdOrientLandscape;
        wrdDocument.PageSetup.TopMargin = InchesToPoints(0.5f); //half an inch in points
        wrdDocument.PageSetup.BottomMargin = InchesToPoints(0.5f);
        wrdDocument.PageSetup.LeftMargin = InchesToPoints(0.5f);
        wrdDocument.PageSetup.RightMargin = InchesToPoints(0.5f);
        wrdApplication.Visible = true;

Word 在其间距中使用每英寸 72 磅。

于 2016-03-03T20:19:10.170 回答