第七章 图形硬拷贝输出
本章概要
在使用IDL的时候,如何以硬拷贝形式再现屏幕中的图形是最复杂,也是最难理解的问题。然而,这是大多数献身科学的人的需求,但很少有令人完全满意的方法来和同事共享科学结果。
本章将集中于PostScript输出,因为PostScript是普遍接收的一种输出媒介,大部分使用IDL的程序员都能使用PostScript打印机。所有关于PostScript的内容同样适用于其它输出设备,比如HP绘图仪和PCL打印机。
具体来说,将学习:
1. 如何选择硬拷贝输出设备 2. 如何配置硬拷贝输出设备
3. 如何将图形输出直接传送到打印机 4. 如何将图形输出传送到一个文件中 5. 如何为硬拷贝输出设备产生图形输出
6. PostScript输出与显示器的输出有什么不同 7. 如何在PostScript页面上定位图形和图像 8. 如何产生能包含在其它文档中的图形输出 9. 如何编写能很容易地转化为硬拷贝输出的程序 10. 如何在PostScript种使用颜色
选择图形硬拷贝输出设备
与设置其它图形显示设备一样,在IDL中,仍然使用Set_plot命令来设置图形硬拷贝输出设备: Set_Plot, 'option'
其中的option是下列的任何一种,注意option总是一个字符串,因此要使用单引号括起来。与IDL其它大多数字符串不一样,option对大小写不敏感。
CGM 输出写入CGM(计算机图形元文件)格式的文件中,CGM也是一种独立于
设备的文件格式,用于交换图形信息。CGM文件能以三种形式之一编码:(1)文本,(2)二进制数据,(3)NCAR二进制数据。
HP 输出以惠普图形语言(HP-GL)格式写入一个文件,它适用于各种各样的
HP-GL笔式绘图仪。
PCL 输出以惠普打印机控制语言(PCL)格式写入一个文件,它适用于各式激光
和喷墨打印机。
PRINTER 输出以任何适合于默认打印机的方式直接传送到该打印机。 PS 输出以PostScript格式写入一个文件中。 Z 输出被写入Z图形缓冲区。
在打印完毕后,应再次使用Set_plot命令将输出设备改回为图形显示设备的类型,以下是一些常用的显示设备:
WIN 使用微软Windows或NT操作系统的个人计算机。 MAC 使用MacOS操作系统的计算机 X 使用X Window系统的计算机。 只有一种设备能成为当前图形设备,可以通过检查!D.Name系统变量来确定当前的设备是哪种,如下:
IDL>Print,!D.Name
注意,当设定设备名时,设备名对大小写不敏感,但当在代码中使用该名字时,就不一定不敏感了。存储在!D.Name系统变量中的图形设备名是以大写字母形式存储的。这在下面的字符串比较语句中尤为重要:
IDL>IF !D.Name EQ 'PS' THEN Print,'Using PostScript?'
配置图形硬拷贝输出设备
一旦选定了图形输出设备,所有设备具体的配置参数都用Device命令通过关键字来控制。Device命令可用的关键字主要取决于当前的设备。但打印设备(总是和默认的打印机相连)的设置也可以使用Dialog_PrinterSetup命令来设置(详见201页的“配置和使用打印设备”)。
测定当前的设备配置
使用Help命令,可以知道当前硬拷贝输出设备所设定的配置参数,如下:
IDL>Help,/Device
将能看到一系列的有关当前图形设备的当前设置参数及其参数值。这些信息可以用来配置设备。关于设备可用的颜色数,IDL使用的是哪种