找回密码
 立即注册

QQ登录

只需一步,快速开始

KingMan

中级会员

68

主题

148

帖子

554

积分

中级会员

积分
554
KingMan
中级会员   /  发表于:2017-7-12 20:13  /   查看:3504  /  回复:4
通过以下代码删除空页没有问题
TXTextControl.PageCollection.PageEnumerator pageEnum =
                           textControl1.GetPages().GetEnumerator();
            pageEnum.MoveNext();
            int pageCounter = textControl1.GetPages().Count;
            for (int i = 0; i < pageCounter; i++)
            {
                TXTextControl.Page curPage = (TXTextControl.Page)pageEnum.Current;
                if (curPage.Length == 1 || curPage.Length == 0)
                {
                    textControl1.Select(curPage.Start - 1, 1);
                    textControl1.Selection.Text = "";
                }
                else
                    pageEnum.MoveNext();
            }

但是下面这个附件(保存为字节文件,通过 textControl1.Load(bBytes, BinaryStreamType.InternalFormat);加载),里面有个空页,这个空页的page.Length = 0,现在要删除该页怎么也删不了。也就是说我要实现删除指定的页。
说明一下,这个空白页是控件自动分裂产生的新页。第2页,第4页才是代码控制产生的新页.
其中产生新页的代码:
    public int AddNewPage()
        {
            int newPage = this.m_stx.Pages + 1;
            InputPosition inputPosition = new TXTextControl.InputPosition(newPage, 1, 0);
            Selection pSelect = new Selection(m_stx.Text.Length, 0);
            this.m_stx.Selection = pSelect;
            this.m_stx.Selection.Text = "\f";
            this.m_stx.Selection.Length = 0;
            //this.m_stx.InputPosition.ScrollTo();

            //this.textControl1.InputPosition = inputPosition;
            //Point ScrollPosition = new Point(0, inputPosition.Location.Y);
            //this.textControl1.ScrollLocation = ScrollPosition;
            return newPage;
        }

含有空白页.bak

94.53 KB, 下载次数: 258

4 个回复

倒序浏览
SamirW
注册会员   /  发表于:2017-7-13 09:37:45
沙发
我通过你第一个删除页的那块代码 也没有成功删除我的空白页,反而多了一页。。
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-7-13 10:41:32
板凳
SamirW 发表于 2017-7-13 09:37
我通过你第一个删除页的那块代码 也没有成功删除我的空白页,反而多了一页。。

你在最上面的写的代码通常情况下删除空白页应该是没有问题的,你现在说是这个删不了,可以检查一下是不是里面还有其他的导致自动分页的换页符号之类的

需要和你确认目前是所有测试的文档空白页都无法删除还是就你附件中的这一个,其他文档是正常的?
回复 使用道具 举报
KingMan
中级会员   /  发表于:2017-7-13 10:49:35
地板
Richard.Ma 发表于 2017-7-13 10:41
你在最上面的写的代码通常情况下删除空白页应该是没有问题的,你现在说是这个删不了,可以检查一下是不是 ...

其他文档可以,就这个文档不可以,另外,根据发现这个Page.Length = 1 是没有问题的。现在为什么删不了我也找不到原因。请指导一下。
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-7-13 12:09:56
5#
我想有可能是\f字符导致的,这个应该是在上一页最后,你可以把这个字符删除掉应该就可以删除页了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部