问题标签 [documentpage]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wpf - 使用没有默认构造函数的 XamlWriter 序列化 WPF 组件
我发现你可以序列化一个 wpf 组件,在我的例子中 a FixedDocument
,使用XamlWriter
和 a MemoryStream
:
然后将其取回:
但是,现在我也需要能够序列化 a DocumentPage
。它缺少一个默认构造函数,这使得XamlReader.Load
调用抛出异常。
有没有办法在没有默认构造函数的情况下序列化 wpf 组件?
wpf - 在后台线程中创建 WPF 组件
我正在开发一个报告系统,DocumentPage
将通过DocumentPaginator
. 这些文档包括许多要实例化的WPF 组件XpsDocumentWriter
,因此分页器在稍后发送到(又发送到实际打印机)时包含正确的内容。
我现在的问题是DocumentPage
创建实例需要相当长的时间(足以让 Windows 将应用程序标记为已冻结)所以我尝试在后台线程中创建它们,这是有问题的,因为 WPF 期望它们的属性从图形用户界面线程。我还想显示一个进度条,指示到目前为止已经创建了多少页。因此,看起来我试图让两件事在 GUI 上并行发生。
这个问题很难解释,我真的不知道如何解决它。简而言之:
- 创建一系列
DocumentPag
e。- 这些包括WPF 组件
- 这些将在后台线程上创建,或者使用其他一些技巧,这样应用程序就不会被冻结。
- 创建每个页面后,应更新WPF ProgressBar 。
如果没有合适的方法来做到这一点,那么替代解决方案和方法将非常受欢迎。
.net - WPF DocumentPaginator 和 DocumentPage 意外裁剪
我正在尝试在多个页面上打印 WPF 画布。
我对缩放它以适应页面宽度非常满意,然后为每一页剪裁和翻译画布;所有非常简单的数学。
我不明白的是如何获得可打印区域的尺寸,以及如何告诉打印机打印到哪里。无论我尝试什么,我使用的值似乎都是纸张的大小,因此由于打印机无法打印到纸张的边缘,因此我会出现裁剪。
能力具有以下属性:
什么是“可成像”区域?那是我可以在纸上放置内容的区域吗?我猜是因为:
但是底部和右边距呢?我在哪里可以找到这些信息?
应该将PageSize
属性DocumentPaginator
设置为什么?我应该设置这个capabilities.PageImageableArea
吗?或者dialog.Print()
函数是否设置了这个,我只需要从中读取GetPage()
?
最后,当我返回 a 时,我将DocumentPage
什么传递给三个几何参数pageSize
和?bleedBox
contentBox
谢谢 :)
wpf - WPF DocumentPaginator 是否将所有 DocumentPages 保留在内存中,直到完成打印作业?
关于 WPF 的 DocumentPaginator 的严格理论问题:
使用 WPF DocumentPaginator 类打印多页文档时,分页器是否将其请求的所有 DocumentPages 保留在内存中,直到文档完成打印为止?或者它是否曾经在打印作业完成之前处理掉不再需要的任何 DocumentPages(即释放内存)?有没有办法在打印过程中手动告诉分页器释放旧的/不需要的 DocumentPages 而不会遇到异常?
非常感谢您对此的帮助!
c# - WPF 中是否可以通过页码获取每个 DocumentPage 的内容?
我使用 DocumentPaginator 将 FlowDocument 的文本分成页面。ComputePageCount() 后是否可以通过页码获取每个页面的内容?如果没有,我该如何以其他方式做到这一点?
代码:
wpf - 如何从 PageDocuments 中获取 FixedDocument
我正在使用 WPF 进行打印。
我实现了一个从类继承的DocumentPaginator
类
有更多的辅助方法来完成这些工作。
我想创建FixedDocument
对象以使用从方法返回的对象从Source
属性中返回它。DocumentPage
GetPage
我需要FixedDocument
从源属性返回一个因为我想在打印之前对文件进行预览
预览器是DocumentViewer
对象存在于ReportPreviewerWindow
c# - 我可以关闭 Xaml 的交互部分并保留布局管理吗?
我正在努力在 WCF 服务中呈现 XPS 文档,并希望它尽可能快。
是否可以关闭任何与 UI 相关的开销,因为在我的用例中不需要 UI 交互?我只想利用 Xaml 的 UI 布局管理部分。基本上,我怎样才能关闭创建文档时不必要的东西?
完成渲染后,我将每个添加FrameworkElement
到 aDocumentPage
以使用 a 渲染,DocumentPaginator
然后使用XpsDocumentWriter
.
wpf - WPF DocumentPaginator:将 DocumentPage 大小更改为横向
我尝试使用 DocumentPaginator 以 A4 横向格式(尺寸(96 * 11、96 * 8.5))将 WPF 窗口打印为 pdf 文件(Microsoft Print to pdf),但始终以 A4 纵向格式获取它。(对于 DocumentPaginator,我使用此处描述的方法:WPF - 打印视觉时分页)
错在哪里?除非格式问题它完美无缺。如何调整 DocumentPage 的大小,因为它在 DocumentPage.Size 属性的文档中写入:“备注...使用受保护的 SetSize 方法设置此属性。”?
XAML:
C#: