如何阅读Word文档中的页面(C#)

时间:2012-07-27 11:22:16

标签: c# ms-word interop

我们使用PDF-Focus。我们希望将横向格式的PDF文档导出为Word文档。 我们要将此文档导出到Word。我们在Word中获取文档。一切看起来都很好。 如果我们想要打印这个新的文档文档,那么本文档的页边距就是纵向的。

我试图通过创建一个空的Word文档然后插入一个临时导出的Word文档来解决这个问题。然后我将方向改为Landscape。我看到这个解决方案有效。该文件现在是横向的。

但是现在带有图形和其他图像的页面与页面重叠。

所以我认为我必须通过读取单独的页面然后插入循环将临时文档插入到新创建的文档中。

我们应该使用哪种功能以编程方式解决此问题? 或者也许有更好的解决方案?你能救我吗?

韦斯利

2 个答案:

答案 0 :(得分:0)

以下代码适用于我并打开word文档更改其页面方向。你在找这样的东西吗?

using System;
using Microsoft.Office.Interop.Word;

namespace PageSetup
{
    class TestPageOrientation
    {
        static void Main(string[] args)
        {
            var app = new Microsoft.Office.Interop.Word.Application();
            app.Visible = true;

            //Load Document
            Document document = app.Documents.Open(@"C:\Temp\myDocument.docx");

            document.PageSetup.Orientation = WdOrientation.wdOrientLandscape;
        }
    }
}

答案 1 :(得分:0)

using System;
using Microsoft.Office.Interop.Word;

namespace PageSetup
{
    class TestPageOrientation
    {
        static void Main(string[] args)
        {
            var app = new Microsoft.Office.Interop.Word.Application();
            app.Visible = true;

            //Load Document
            Document document = app.Documents.Open(@"C:\Temp\myDocument.docx");

            // I've added this rows below. ...And that works
            document.Sections.First.PageSetup.Orientation = WdOrientation.wdOrientLandscape;
            document.Sections.Last.PageSetup.Orientation = WdOrientation.wdOrientLandscape;
            document.PageSetup.Orientation = WdOrientation.wdOrientLandscape;

            // ... and this. But the LeftMargin I can leave it.
            document.PageSetup.LeftMargin = 1.00F;
            document.Save();
        }
    }
}

我不知道它在Word库源中是如何工作的。但是我曾经尝试过WdOrientation.wdOrientPortrait,一旦我感到惊讶。我在横向格式中看到了这个页面。

我认为我的文档部分有问题,因为文档(包含大量表格,图形和图像)太大了。这只是在使用这种方法之后。

所以我的下一个问题是:如何缩小此Word文档的大小

我需要做什么来限制此单词文档中的格式设置数量