跳转到内容

Futurebasic/语言/打印

来自维基教科书,开放的书籍,开放的世界

从 FB 打印

[编辑 | 编辑源代码]

修订:2002 年 2 月 (FB^3 版本 6)

您可以将打印页面视为与窗口非常相似的东西。通常,用于在屏幕上产生任何类型显示的命令将在页面上产生类似的印记。唯一的例外是无法发送到打印机端口的控件。

您可以使用 route 命令指示程序切换到打印机。

route _toPrinter
rem printing commands here
route _toScreen

您可以通过执行 route 命令在打印页面和屏幕之间自由切换。当需要弹出页面或完全终止打印时,您可以使用 clear lprint 清除页面,或使用 close lprint 关闭打印机(这会自动清除页面)。

页面大小

[编辑 | 编辑源代码]

您可以通过将常规输出发送到打印机,然后执行 window() 函数来查询打印机的页面大小。

route _toPrinter
pageWidth = window( _width )
pageHeight = window( _height )
route _toScreen
[编辑 | 编辑源代码]

在打印之前会使用两个对话框。第一个是样式对话框,允许用户确定页面方向、缩放和其他项目。这通常是在用户选择“文件”菜单下的“页面设置”项时弹出的。语法为 def page

第二个常见对话框是作业对话框。它允许用户确定要打印的副本数量、要包含的页码以及其他可能因打印机而异的项目。作业对话框通过 def lprint 弹出,通常在每次打印会话之前显示。请注意,打印管理器实际处理作业的详细信息。如果用户希望打印第 7 页到第 10 页的 2 份副本,您的应用程序可能会愉快地打印整个文档的单份副本,而打印管理器会正确过滤输出以符合用户的请求。

当输出正在路由到打印机时,请勿调用 clear lprintclose lprint。这会导致系统崩溃。相反,将输出路由回屏幕,然后清除或关闭。

外观管理器打印

[编辑 | 编辑源代码]

由于按钮无法发送到打印页面,因此外观管理器编辑字段无法打印。有一个简单的解决方法。在窗口中创建编辑字段,然后使用编辑字段语句(仅将字段号作为参数),它将被复制到打印机。以下示例演示了如何完成此操作。

// Appearance Manager printing
window 1
edit field 1, "This is a test", (10,10)-(120,32)
// Now print it
route _toPrinter
edit field 1
route _toScreen

在此示例中,我们没有清除或关闭打印机 (clear lprintclose lprint)。这是因为当程序终止时会自动执行此操作。

华夏公益教科书