将 Gtk.Widget 打印到打印机的最佳方法是啥?

Posted

技术标签:

【中文标题】将 Gtk.Widget 打印到打印机的最佳方法是啥?【英文标题】:What is the best way to print a Gtk.Widget to the printer?将 Gtk.Widget 打印到打印机的最佳方法是什么? 【发布时间】:2011-10-09 20:38:18 【问题描述】:

我有几个(主要是)文本小部件,我想通过标准的“打印...”菜单选项将它们呈现给打印机。一个小部件是 Mono.TextEditor 文档,另一个是 Gtk.TextView。

我现在正在寻找一个非常基本的印刷品,它可能会换行很长,并添加页码。我需要以某种方式自己编写所有这些代码吗?

如果你有指针,那就太好了,尤其是在 C# 中时。

【问题讨论】:

您打印了小部件吗?你用了哪些函数? 我不得不手动打印文本。见:bitbucket.org/ipre/calico/src/master/Source/Calico/Printing.cs 【参考方案1】:

对于换行和对齐,可以使用 pango 布局 选项,如pygtk/class-pangolayout 中的 Python 或 pango/pango-Layout-Objects 中的 C 所述。请参阅函数 pango_layout_set_wrap() 和 pango_layout_set_justify()。

如果您在系统上安装了 pygtk,另请参阅文件 pygtk-demo/demos/print_editor.py 中的示例代码例程 begin_print、do_page_setup 和 do_print。 (在我的系统上,Python Gtk 演示文件目录的完整路径目前是/usr/share/doc/pygtk2-2.17.0/examples/pygtk-demo/demos)

对于打印机设置对话框,请参阅gtk-High-level-Printing-API(用于 C)或class-gtkprintoperation(用于 Python)。

【讨论】:

以上是关于将 Gtk.Widget 打印到打印机的最佳方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

QtCreator:将字符串打印到终端的最佳方式是啥?

安全地将 printf 打印到字符串的最佳方法? [复制]

使用相同指数打印 2 个双打的最佳方法

在c中将布尔结果打印为“假”或“真”的最佳方法?

在c中将布尔结果打印为“假”或“真”的最佳方法?

从 WPF 打印/报告的最佳方法是啥? [关闭]