()
PS(PostScript)格式文件
PS格式文件是使用的PS页面描述语言编写的文件。该语言是一种基于堆栈的解释型语言,已由支持 Macintosh机器输出激光打印的Leve 1 发展到现在支持多种平台的Leve 13,其特点是将文字也作为图形处理。对PS编程感兴趣的朋友可到http//www.rightbrain免费下载Glein Reid所著《Thinking in PostScript》一书。阅读PS文件需要相应的语言解释器,即阅读器,这些阅读器多为商业软件,据本人所知共享软件仅有Ghostgum Software公司的GhostScriptGsviewGSviewGhostScriptwindowsOS/2下的图形接口,而GhostScript则为PS页面描述语言的解释器。目前若使用GSview 2.70作为阅览器,则需要有GhostScript 5.5才能运行。可到 www.cs.wisc.edu~ghost/下载。GSview既可阅览PSPDF文件,进行文件格式转换,又可拷贝文件中的图形,还可打印成册。7 C: J! P) ?& q5 s. _7 R$ D

(二)也可用专门的PS viewer查看, 它也是acrobat公司的,楼主可以搜索一下。% N+ v- ?9 I) y, b' o

(三).ps文件就是PostScript格式的文本文件, 可以用PS View直接打开.ps文件, 也可以用Adobe Acrobat Distiller转换成PDF文件. Distiller包括在Adobe Acrobat完整版中.
一般转成pdf的通用方法是安装Adobe Acrobat Professional,然后系统就会增加一个“Adobe PDF”打印机。之后便可以采用打印的方法将其他文件转成pdf格式的。对于科技论文中所用的图片而言,eps格式的图片是比较通用的,而windows下最常用的画图软件visio却不支持直接将visio图案转成eps格式,只能按照上述安装“Adobe PDF”打印机方法,先将visio文件打印成pdf格式,然后将pdf文件导出或者另存为为ps文件,再用gsview打开ps文件,在Options菜单中选中EPS Clip,再用File菜单中的“PS to EPS”命令得到只包含图片部分的eps文件(注意:打印时图片可能并不能占满整个页面,这没有关系,"PS to EPS"命令可以将周围的空白裁减掉——当然要选中"EPS Clip")。

Adobe Acrobat Professional是商业软件,其实有一种使用免费软件的方法直接将各种文件转成ps文件,这就是安装postscript打印机。Adobe自己本身提供了这样一个打印机(adobe universal postscript drivers,官方只支持到win xp,在win7上安装需要以兼容模式运行),HP也有(HP Universal Printer Driver - Postscript for Windows,官方说明能够支持vista,其实win7也支持)。安装这两个打印机时,将端口选为FILE,就能最终安装好PS打印机。之后便可以将文件打印成ps格式,然后可以使用各种工具转成pdf(有免费的ps2pdf工具,
一般的latex套装中有)或eps。

打印时选择打印到文件,这样会出现一个对话框提示将文件输出到某个地方,否则在输入文件名时就要同时输入路径名,这样才能比较容易地到最终的输出文件。

注意:adobe的postscript的打印效果不是很好,不知是否是设置的问题,而HP的打印机驱动打印出来效果好多了。此外,HP的postscript驱动不一定要是universal printer driver,可以选定某款型号支持ps的打印驱动即可,如HP LaserJet 2100 Series PS。
注意:打印机打印出来的ps文件不一定具有通用性。如用HP LaserJet 2100 Series PS打印机输出的ps文件在windows下用gsview32可以很好的查看,在linux下用gs也可以很好查看,但是用evince就会出错。因为HP LaserJet 2100 Series PS打印机输出的ps文件前面增加了如下数行:
_%-12345X@PJL JOB
@PJL SET RESOLUTION = 1200
@PJL SET ECONOMODE = OFF
@PJL ENTER LANGUAGE = POSTSCRIPT
使得evince程序不能识别,将这几行注释掉就可以了(不影响转成eps格式的文件,因为转换都是依赖于ghostscript的)。

还有,PS打印机的“属性”-->“高级”设置中的“postscript选项”,其中的输出一定要设置为“内嵌postscript文件”(即eps),这样设置后,以后适用gsview转换为eps格式才能将空白切去。
也可以不使用gsview转成eps文件,可以在网上下载专门的ps2eps软件。

ps文件最终还要转成eps文件才能在latex文档中使用。现在的方法有一些如下方法(实际上都依赖于GPL Ghostscript):
1. 在windows下使用gsview32(实际上是GPL Ghostscript的图形前端),选中Options-->EPS Clip参数,然后选中"File-->PS to EPS"转成eps格式文件(这要求在使用打印机时就要选定postscript选项为"内嵌postscript")。
2. 网上下载的ps2eps工具(uka.de/~bless/ps2eps)。这个需要perl和
Ghostscript。
3. 使用GPL Ghosgscript中自带的ps2epsi命令。其中生成的epsi文件是一种特殊的eps文件,在普通eps文件的基础上增加了一个位图的preview部分(以postscript文件的注释的形势),使用其他命令将此注释删除掉就可以得到最终的eps文件。命令如下"sed -e '/^%%BeginPreview/,/^%%EndPreview/d' <输入epsi文件>  <输出的eps文件>". 如果输入文件是打印机打出来的ps文件,那么在打印机设置的postscript选项中要求不要选“内嵌的postscript“。
4. 使用ImageMagick工具包中的convert和display命令。convert也是依赖于Ghostscript(难以区分是安装的gs还是ImageMagick自带的)。但是这种转换出来的效果很差,而且计算bounding box还是会出错,不能完全显示图片的所有部分。[evince在显示Windows下用PS打印机打印出的ps文件时,不能完全显示图片的所有部分(windows下gsview32的显示很正常),而转化成eps文件后显示正常]
5. 我认为使用gs引擎本身的参数也能搞定这种转换,但是需要研究(网络搜索一下)

在linux系统中最直接的办法可能就是第3种办法了,在windows中还是使用gsview比较好。
(没有相应sed命令)

linux下使用ps2epsi和sed工具将ps文件转成eps文件的脚本(这个时候输出的ps文件应该是正常输出的,ps打印机的postscript选项不要选“内嵌postscript文件”)如下所示:
<code>
#!/bin/bash
# Author: Yang YT
# Date: 2010-10-19
# Description:
#    Utilize the 'ps2epsi' tool from GPL ghostscript and 'sed' to transform
#    'ps' files into 'eps' files.
#
if [ -z "$1" ]; then
  echo "Usage:"
  echo "    ps2eps  input-ps-file  [output-eps-file]"
  exit 1
fi
if_get_ps2epsi=$(which ps2epsi)
if_get_sed=$(which sed)
if [ -z "${if_get_ps2epsi}" ]; then
  echo "The \"ps2epsi\" command tool has not been installed. It may be contained" >&2
  echo "in the GPL Ghostscript distribution." >&2
  exit 1
fi
if [ -z "${if_get_sed}" ]; then
  echo "The \"sed\" command tool is not available." >&2
  exit 1
fi
if [ -z "$2" ]; then
  output_file=$(echo $1 | sed 's/\.[^\.]*$//' | sed 's/$/\.eps/')
else
  output_file=$2
fi
input_file=$1
#echo "output file = ${output_file}"
#echo "input file = ${input_file}"
ps2epsi ${input_file} ${output_file}
sed -i '/^%%BeginPreview/,/^%%EndPreview/d' ${output_file}
</code>
PostScript是专门为打印图形和文字而设计的一个编程语言,它与打印的介质无关,不管您是在纸上、胶片上打印,还是在屏幕显示都适合。它是一种页面描述语言,与HTML语言类似。
  PostScript是由Adobe公司在1985年提出来的,首先应用在了苹果LaserWriter打印机上。PostScript的主要目标是提供一种独立于设备的能够方便地描述图像的语言。独立于设备意味着,不需要借助任何具体设备的特性(例如,打印机的分辨率)来描述一个图像,因而
这个描述不需要经过任何修改即可用在其他的Po stScript打印机上进行打印。
  PostScript作为一种语言,自己有一整套语法和格式方面的规定,如果您对这方面感兴趣的话,请浏览A dobe公司的网站:www.adobe/Adobe公司有很全面的资料。
  PostScript文件是以文本方式存储的,与HTML文件类似。这个您只要用写字板打开一个PostSc ript文件就可以看到,如图1所示。PostScript文件本身只是用PostScript语言描述了所要显示或者打印的图像有哪些特征、参数,在显示或者打印PostScript文件的时候,再由PostScript解释器解释执行,进行具体的打印或者显示,得到所要的图象。图2是图1中的PostScript文件在PostScript文件阅读器中的显示。可以看到PostScript文件经过解释显示,得到了彩的页面。
  与其他格式的文件相比,PostScript文件具有很多优点,上面所提到的独立于设备就是其中很重要的一点。PostScript文件还具有独立于操作系统平台的优点。因为很多Unix的图形环境本身就把对PostScri pt的支持作为核心的一部分,所以无论您使用的是Windows操作系统,还是Unix操作系统,都可以阅读和打印P ostScript文件,这样交流起来就比较方便。由于PostScript文件是以文本方式存储,因而文件比较小,适合在Internet上传输。还有就是在PostScript设备(打印机、显示器)上打印和显示有着得天独厚的优势,可以达到最
好的效果。

生成PostScript文件有几种途径:
(1)您可以参照PostScript的语言格式,自己按照需要直接用文本编辑器写一个PostScript文件,当然如果文件比较复杂的话,工作量就不小了,而且还得熟悉PostS cript的语法;



(2)您可以使用专门的PostScript文件编辑软件或者某些文字、图像编辑软件提供的功能来生成PostScript文件;

(3)还有一种最简单的方法,就是在您的操作系统中添加一个PostScript打印机(虚拟的),然后在文字编辑器或者图形编辑器中,您所需要的图像通过那个PostScript打印机打印到另一个文件里,得到的文件就是您想要的PostScript文件啦!
在INTERNET上查资料的朋友可能会经常碰到*.ps文件,这些*.ps文件可能是某个大学
的入学申请表,也可能是某个软件的使用文档,或者是某个公司的简历。你把这些文件下载下来后可能会发现不知道怎样读它!用EDIT等文本编辑器打开一看,文件开头都是些乱七八糟的字符,用Microsoft word也不能读它,再打开图像编辑软件如Photoshop还是读不了!那么这些*.ps文件到底是什么东西呢?
  什么是PS
  这里的psPostScript的缩写.PostScriptAdobe公司开发的一种可编程打印控制语言。大家平常看到的所谓“PostScript"打印机就是指支持“PostScript”语言的打印机。
  现在常用的打印控制语言有三种:
  一种是针打的标准,EPSON公司的EPSON打印控制语言,凡是针式打印机都标明同EPSON兼容,其实这里的兼容就是指支持EPSON打印控制语言;一种是HPPCL,即Print Control Language的缩写;还有一种就是今天要介绍的PostScript
  *.ps文件就是指这个文件已经用PostScript语言处理过了,可以直接在PostScript打印机上输出(相当于文本文件加上HTML标记后就成了HTML文件一样)。例如我们只需用下面命令:copy/b name.ps prn即可把一个*.psPostScript打印机上打印出来。
  大家可能觉得这样做很麻烦,直接用个文本文件或WORD文件不就可以了吗?既然INTE
RNET上流行*.ps文件,自然有它的道理了。
  假设一个大学要在网上发布入学申请表,最简单的办法是搞一个文本文件,任何机器都可识别,但是在文本文件里无法加入排版信息,这样每个人寄回来的表格格式可能都不一样。用WORD当然可以,但如果机器没装WORD怎么办?如果是一台工作站根本不能装WORD又怎么办呢?
  PostScript是一种页面描述语言,由Adobe公司于1985年开发成功(Adobe正是靠PostScript起家的)PostScript最重要的用途是以设备无关方式描述图形,这样,同一个描述可以不加修改地在任一台PostScript打印机上输出。另外,用PostScript还可以在计算机屏幕及其它绘图设备上绘图,可以在屏幕上显示相应的PostScript文件。PostScript由于可以满足上述条件,所以在网上广为流行。
阅读PS文件的工具
  *.ps是网上广为流传的文件格式,如何使用这种文件格式呢?下面介绍一个最著名的PostScript实用工具Ghostscript
  Ghostscript是一个Postscript解释器,它可以在许多操作系统上运行,如DOSWINDOWS31WINDOWS95WINDOWS NTMACHINTOSHUNIXOS/2VAX/V
MS等。Ghostscript主要有两个功能:
  1.屏幕输出:可以在屏幕上显示Postscript文件。
  2 打印输出:可以在非Postscript打印机上打印Postscript文件。
  现在GhostscripWIN95最新版是5.10版,Ghostscript采用的是命令解释行,使用不太方便。运行Ghostscript后屏幕出现如下所示的命令窗口:
  GS>_
  注意这是Ghostscript的窗口提示符,而不是DOS下的提示符。在该提示符下使用有关命令即可。
  比如输入:
  GS>(tiger.ps) run
  就可以在屏幕上显示 tiger.ps 文件。具体的命令你得学习随机提供的用户手册。
  由于命令解释方式使用不太方便,Ghostscript还提供了一个前端产品:GSVIEWGSVIEW不能单独运行,必须先安装了Ghostscript,然后才能运行GSVIEWGSVIEWWINDOWS版是标准的WINDOWS程序,使用十分方便,这里介绍最新版GSVIEW 2.4ps切图片
  下面通过介绍各个菜单项的作用来说明GSVIEW的功能(仅列了最常见的菜单选项):
  1.
  Open:打开一个文件,目前GSVIEW支持的文件格式有:*.ps,.eps,.epi,.pdf.在文件选择窗口中选中你希望的文件即可在屏幕上阅读文档了。
  Select :Open相似,但不显示文件,主要用于在打印文件前先选择一个文件(你可能只想打印文件,对浏览文件不感兴趣)。
  Extract.. :从当前文档中拷贝几页到一个新的.ps文件中。
  Close:关闭文档。
  Info:提示当前文档的一些信息,如文件名,页数,创建日期,标题,页码顺序等。
  Print:打印。如果你的打印机不支持Postscript,则选择该选项。然后根据屏幕提示选择你当前使用的打印机类型,分辨率(各个打印机可用的分辨率不一样),打印页码即可开始打印。多么简单!
  Print :如果你的打印机是Postscript打印机,则选该选项直接打印,GSVIEW直接将打印序列发到打印机,什么都不做。
  Show message:显示程序运行的一些消息,如Ghostscript DLL的位置等,同用户关系不大。
  Exit:退出GSVIEW
  以上其实就可以满足基本需要了,当然GSVIEW还提供了其它许多功能。
  2.Edit
  Copy:这里的Copy和一般程序里的Copy概念不一样,这里是将当前页显示的内容作为BMP图片拷贝到剪贴板中。
  Paste To:将用Copy命令拷贝到剪贴板中的内容输出到BMP文件中。
  Text Extract :.ps文件中的文本输出到文本文件中。
  Find:在文档中查字符串。
  3.Oretenation
  显示方式,如可以左转90度,右转90度等。
  4.Media
  Display Settings:设置显示方式:如分辨率,放大分辨率等。下面还列出了许多纸张类型,如A4A3.....等,就不一一列出。
  GhostScriptGSVIEW的获得及安装
  读者可通过以下地址下载GhostScriptGSVIEW
  www.cs.wisc.edu/~ghost/aladdin/
get510.html
  你总共需要下载以下四个文件:
  GSV24W32.ZIP 553,953
  GS510W32.ZIP 568,543
  GS510INI.ZIP 827,092
  GS510FN1.ZIP 1,170,038
  将以上四个文件拷贝到一个子目录中,然后用WINZIP打开GSV24W32.ZIP,在WINZIP中直接运行其中的SETUP即可(编者注:我们在该网址发现了GSVIEW 2.6版本-GSV26W32.ZIP,用它代替第一个文件下载,WINZIP 将其解压至一个目录,把另三个文件拷至该目录,执行SETUP)
相关资源
  下列站点中有一些关于 PS的资源:
  www.adobe/prodindex/postscript/
main.html
  postscript的老家,包括postscript描述语言的最新版postscript 3的资料,白皮书及相关资源。
  www.lasergo/
  又一个观察postscript文件的工具,并提供一个Netscape Navigator插件,可以在Netscape Navigator中观看ps文件。
www.blogjava/Javawind/archive/2008/10/04/232350.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。