使用Aspose.Words v13.1.0从First列读取最后一行

时间:2013-02-04 11:20:00

标签: c# aspose

我有一个包含两列布局的word文档。 如何从第一列读取最后一行并从word文档的第二列读取第一行。如果第一列最后一行文本是特定格式,则向下移动一行,这将自动将文本移动到下一列(第二列)。 / p>

请告诉我如何使用Aspose.Words V13.1.0

在.net中实现此目的

1 个答案:

答案 0 :(得分:2)

首先,您需要从this link下载离线样本包,以使用以下代码示例。然后提取存档,并从DocumentLayoutHelper示例中,将RenderedDocument和LayoutEntities源文件包含到他的应用程序中。

以下是示例代码:

Document doc = new Document(dataDir + "Test.docx");

// This sample introduces the RenderedDocument class and other related classes which provide an API wrapper for
// the LayoutEnumerator. This allows you to access the layout entities of a document using a DOM style API.

// Create a new RenderedDocument class from a Document object.
RenderedDocument layoutDoc = new RenderedDocument(doc);

// Loop through the layout info of each page
foreach (RenderedPage page in layoutDoc.Pages)
{
    if (page.Columns.Count > 1)
    {
        // Find the last line in the first column on the page.
        RenderedLine lastLine = page.Columns.First.Lines.Last;

        // This is the pargraph which belongs to the last line on the page, implement required logic and checks here.
        Paragraph para = lastLine.Paragraph;
        if (para.ParagraphFormat.StyleIdentifier == StyleIdentifier.Heading1)
        {
            // Insert a blank paragraph before the last paragraph in the column.
            para.ParentNode.InsertBefore(new Paragraph(doc), para);
        }


        // This is how to get the first line in the second column and the related paragraph.
        // Use this if it is required.
        RenderedLine secondColumnLine = page.Columns[1].Lines.First;
        Paragraph secondColumnPara = lastLine.Paragraph;
    }
}

PS,希望上面的例子可以满足您的要求。我的名字是Nayyer,我是Aspose的支持/ Engangelist开发人员。