Microsoft.Office.Interop.Word删除word文档末尾的空页面(空段)

今天处理word文档模板时,需要将文档尾部多于的空白页面删除。

起初网上找了跟多资料,无法很精准的行为到最后页面内容是否为空并删除。。后来就用了这个不算很好地办法,写下来留记录,也希望知道如何操作的大神给指点下。

主需求:删除页面末尾空白的页面(换行符、段落符、分页符等视为空内容)

我的办法是使用Paragraphs对象从最后一段向前循环删除空行

Paragraphs ps = docx.Paragraphs;
            int psCount = ps.Count;
            //从最后一段向上到,将所有空行删除,并且到最后一个非空行结束

            for (int i = psCount; i > 0; i--)
            {
                Paragraph p = ps[i];
//replaceTextSpaceTNR 是一个将空格\r\n\t\f等替换为空字符的方法
                if (replaceTextSpaceTNR(p.Range.Text) != String.Empty)
                {
                    break;
                }

                //删除改行
                if (i > ps.Count) break; //怕数组越界,所以如果大于当前行就要退出操作
                ps[i].Range.Delete(); //删除空段落
               
            }

你可能感兴趣的:(C#,java,maven,linux)