64 位 Vista 中 GDI 生成字体的问题

发布于 2024-08-02 07:23:09 字数 340 浏览 2 评论 0原文

我们正在构建一个自定义输出显示对话框。在其中,我们在列表框中显示缩略图(位图)。还有一个更大的详细视图,它是从 PrintPreviewEventArgs (PreviewPrintController) 检索并显示在 WindowsFormsHost:PictureBox 中的 GDI 矢量图像。缩略图位图是根据原始 GDI 图像创建的,因此看起来图像在某个时刻确实包含文本。

在 32 位机器上一切正常。当我们在 64 位计算机上运行应用程序时(我们针对 x86 平台进行构建,因此我们在 32 位模拟器中运行),缩略图很好,但主图像缺少所有文本。图形元素——线条、表格边框和背景颜色等被渲染,但没有文本。

有任何想法吗?谢谢。

We’re building a custom output display dialog. In it we display thumbnails (bitmaps) in a listbox. There is also a larger, detail view which is a GDI vector image retrieved from PrintPreviewEventArgs (PreviewPrintController) and displayed in a WindowsFormsHost:PictureBox. The thumbnail bitmaps are created from the original GDI image, so it would appear that the image did contain the text at some point.

All is fine on a 32-bit box. When we run the app on a 64-bit machine (we build targeting an x86 platform so we're running in the 32-bit emulator), the thumbnails are fine, but the main image is missing all text. The graphic elements - lines, table borders and background colors, etc are rendered, but no text.

Any ideas? Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

烏雲後面有陽光 2024-08-09 07:23:09

该问题与打印期间使用 TextRenderer.DrawText 而不是 Graphics.DrawString 有关。

The problem had to do with using TextRenderer.DrawText instead of Graphics.DrawString during the print.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文