首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用BlockUIContainer对流文档进行分页

使用BlockUIContainer对流文档进行分页
EN

Stack Overflow用户
提问于 2011-10-13 23:59:51
回答 1查看 1.5K关注 0票数 4

有人知道如何在FlowDocument中将一个大的BlockUIControl分解为几个页面吗?现在,它正在被切断,而不是分页。我正在使用一个自定义的DocumentPaginator

代码语言:javascript
复制
 DocumentPaginator dp = ((IDocumentPaginatorSource)doc).DocumentPaginator;
                    FittedDocumentPaginator fdp = new FittedDocumentPaginator(dp, 0.85, 0.85);
                    p.PrintDocument(fdp, "Baker Data");


public class FittedDocumentPaginator : DocumentPaginator
{
    public DocumentPaginator Base { get; private set; }
    public double xScale { get; private set; }
    public double yScale { get; private set; }
    private readonly ScaleTransform _sTransform;

    public FittedDocumentPaginator(DocumentPaginator baseDp, double xScale, double yScale)
    {
        if (baseDp == null)
            throw new ArgumentNullException("baseDp");

        Base = baseDp;
        this.xScale = xScale;
        this.yScale = yScale;
        _sTransform = new ScaleTransform(xScale, yScale);
    }

    public override DocumentPage GetPage(int pageNumber)
    {
        var page = Base.GetPage(pageNumber);
        ((ContainerVisual)page.Visual).Transform = _sTransform;

        return page;
    }

    public override bool IsPageCountValid
    {
        get { return Base.IsPageCountValid; }
    }

    public override int PageCount
    {
        get { return Base.PageCount; }
    }

    public override Size PageSize
    {
        get { return Base.PageSize; }
        set { Base.PageSize = value; }
    }

    public override IDocumentPaginatorSource Source
    {
        get { return Base.Source; }
    }
}

任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

发布于 2012-04-13 21:34:51

尝试使用FlowDocumentReader控件

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7756971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档