问题标签 [fixeddocument]

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.

0 投票
0 回答
141 浏览

c# - 在不使用目录对话框的情况下打印 FixedDocument

我想打印 FixedDocument"Microsoft Print to PDF"并显示和不显示选择目录的对话框。我知道我可以通过传递给PrinterSettings:PrintFileNamePrintToFilewith来做到这一点true

有办法传递打印机名称:

但我不知道是否有可能或如何将printerSettings的其余参数传递给PrintDialog。

到目前为止,我一直使用这种方法打印固定文档;

我知道有办法将打印机设置传递给PrintDocument,但现在我不知道如何将这些传递FixedDocumentPrintDocument

我要补充一点,我有一个带有 png 的位数组,它被转换为BitmapImage,然后放入 wpfUserControll Image并最终转换为FixedDocument.Pages.

0 投票
1 回答
165 浏览

c# - 通过 pdfsharp 1.32 将文档固定为 pdf

我想在wpf c#4.0中将fixeddocument保存为pdf文件,我用的是pdfsharp 1.32版本,没有Xps模块,怎么转成pdf

0 投票
0 回答
33 浏览

wpf - Pdfsharp 在标签背景中丢失了视觉画笔

我的 WPF 应用程序有一个标签,背景是视觉画笔,画笔包含一个文本“-”;我使用pdfsharp转换fixeddocument为pdf,但奇怪的事情发生了,有些文本丢失,有些位置错误;在我的 WPF 应用程序中,每个标签的中心都有“-”。有人也面临这个问题吗?我该如何解决?我正在使用 Pdfsharp 1.31实际的预计

0 投票
1 回答
68 浏览

wpf - 当我将鼠标悬停得太快时,FixedPage 会导致 ArgumentNullException

我遇到的情况是 WPF 在我的一个视图上成功创建了一个 Image 元素,但似乎需要一两秒钟才能正确设置该元素的逻辑父级。如果我将鼠标悬停在那个时间窗口中,我的应用程序会由于来自 LogicalTreeHelper 的 ArgumentNullException 而崩溃。

如果我等待第二个左右,一切正常,没有问题。但我很难要求我的用户这样做。

请注意,这只发生在我的 UserControl 位于 DocumentViewer 显示的 FixedDocument 中的 FixedPage 中时。当我在其他上下文中使用相同的控件时(远离 FixedDocument 等),它可以正常工作。

有谁知道这个“窗口”或可能是什么原因?

这是 FixedPage.cs 中试图获取我的项目的父项的代码。我已经添加了评论。

这是抛出的代码

这是鼠标悬停的调用堆栈。除了 App.Run 方法,这里没有我的代码。

下面是我的视图(一个用户控件)的一个非常简略的版本,其中包含创建图像元素的 ItemsControl

0 投票
2 回答
246 浏览

c# - 在 DocumentViewer 中预览 FixedDocument 看起来不错,打印它总是打印第一页

FixedDocument通过添加FixedPages到创建一个PageContents,然后将它们添加到FixedDocument这样的

用 打印它们PrintDialog,像这样

产生正确的页数。但是,打印的每一页(例如打印到 PDF)都是第一页的内容。

我尝试测试ImageSources我添加到的FixedPages,这些似乎是正确的。FixedDocument我也用DocumentViewer这样的方式测试了决赛

这奇怪地显示了我期望的正确输出。更奇怪的是我得到了一个IOExceptionafter wnd.Show();(这就是为什么我用 try/catch 包围它)。即使使用 try catch,我也只能在IOException我的MainWindow. 诸如“错误的用户名或密码”之类的东西 - 这没有意义,因为我要打印的图像是本地图像。

撇开DocumentViewer不谈,我Print()只打印第一页 n 次(n 是它应该是实际页数)的方法的问题仍然存在,只是认为其中的异常DocumentViewer可能会让某人了解潜在的问题。

这可能是FixedDocument 总是打印第一页的可能副本- 但是他没有提到问题DocumentViewer并且问题仍未得到解答。

提前感谢您的帮助!

0 投票
0 回答
53 浏览

wpf - WPF 固定文档溢出

我编写了以下代码来创建固定文档。

在页面上,我添加了一个堆栈面板。堆栈面板包含一些文本块和网格。网格应该有三列:10%、45% 和 45%。

然而,网格离开了页面,但我不知道为什么。有什么建议么?

我尝试仅将网格添加到堆栈面板,仅将网格本身添加到没有堆栈面板,并且我还尝试将这些值用于 GridLenth,但没有任何区别:

固定文档视图

0 投票
1 回答
119 浏览

wpf - WPF PrintPreview 获取 DocumentPaginator 页面的 PageContent

我想为更大的文本编写自己的 PrintPreview,并使用 aDocumentViewer稍后显示。我没有找到任何对我的问题有用的东西。

目前我正在寻找一种方法来获取各个页面的内容。我找到了一种访问各个页面的方法,但我无法存储或获取它。

使用代码:

我已经为每个现有页面添加了一个新页面,但我无法获取页面的内容。
到目前为止,我知道,我需要UIElement添加到fixedPage.Children.

还是有一些更简单的方法可以获取flowdocument具有许多固定页面的固定文档(取决于页数)?

0 投票
1 回答
79 浏览

c# - 如何在动态创建的 FixedDocument 中设置文本对齐方式

我正在通过 FixedDocument 创建报告,并在后面的代码中执行此操作以将数据动态添加到报告中。

我今天开始使用 FixedDocument 并卡在对齐文本中。它似乎没有居中对齐。这是我的代码:

我将如何正确对齐?

0 投票
0 回答
16 浏览

wpf - 如何使用 WPF PrintDialog 在内部创建 ODTTF 字体而不是从我的嵌入字体制作字形图像 (.png)?

我正在为某些字符使用特殊字体构建一个 WPF 应用程序。我已将此字体文件作为资源嵌入到应用程序中:

<FontFamily x:Key="ExtraSignsFont">pack://application:,,,/Fonts/#SpecialFont-3</FontFamily>

屏幕上的分辨率非常完美而且非常清晰。在下一步中,我创建了一个FixedDocument将结果带到打印机。我有很多UserControl仅用于打印的实例并使用DocumentViewer来控制布局。将内容放大DocumentViewer至 500% 时,清晰度非常完美,与屏幕质量相似。问题是打印质量很差。我的特殊字体中的所有字符都在打印机上显示为光栅化。

为了获得更多详细信息,我使用 Microsoft XPS 打印机创建了一个 XPS 文档。在检查结果时(将 .oxps 重命名为 .zip 并打开),我发现特殊字体中所有使用的字符都存储为小的 png 文件。这可能是打印质量差的物理原因。

为了检查我的特殊字体的一致性,我创建了一个小的 Word 文档并再次使用 XPS 打印机打印出来。XPS 质量非常好,我的字体作为 .odttf 资源和 png 文件包含在 XPS 文档中。

我的问题:如何PrintDialog在创建 XPS 文档而不是小的 .png-pictures 时强制使用字体?任何帮助或建议表示赞赏!

0 投票
0 回答
7 浏览

fixeddocument - Labelprint with FixedDocument

_PrintDocument = new FixedDocument();

_dlg = new PrintDialog(); if (ShowPrintDialog) _dlg.ShowDialog(); _PageSize = new Size(_dlg.PrintableAreaWidth, _dlg.PrintableAreaHeight); _PageSize.Height = 100; //überschreiben der Druckerkonfiguration auf fixe Seitenhöhe _PrintDocument.DocumentPaginator.PageSize = _PageSize; _Borders = borders;

Hello *All, I am trying to create several labels on a thermal transfer printer in one run. For this I use the FixedDocument, where one label corresponds to one page. The documentViewer shows the labels as requested. The PageSize.Height also reacts. The printer creates a label (page), but then advances it to approx. DIN A4 and only then prints the next label or page. In the Seagull printer driver, a label size of 101.6 x 38mm was set under Page Setup for testing. Start Offset: 0.0mm Stop Offset: 17.8mm

At the moment I have no idea. Thank you very much for your support.