postscript语言概论.ppt
《postscript语言概论.ppt》由会员分享,可在线阅读,更多相关《postscript语言概论.ppt(95页珍藏版)》请在三一办公上搜索。
1、2023/11/8,1,页面描述语言,主讲:樊丽萍上海理工大学 出版印刷学院,2023/11/8,2,成绩评定方式,2023/11/8,3,第一章 概 论,1.1 页面描述语言的背景,1.页面描述语言PDL(Page Description Language),PostScript语言Adobe 公司,凡是用于描述电子页面的计算机语言,PCL语言HP(PCL3 PCL6)商务办公,Interpress语言Xerox公司JAM语言,DDL语言Image公司,插图文件描述语言,2023/11/8,4,起源:76年Evans&Sutherland计算机公司,定名:82年Adobe System公司,
2、应用:85年Apple的激光打印机,配有PS语言解释器,广泛应用:跨媒体出版、电子出版、CAD和办公自动化等,2.PS语言的历史背景出版业事实上的工业标准,78年由施乐Warnock和Newell重新实现,2023/11/8,5,75年北大王选开始研发汉字精密照排系统,85年制定中文页面描述语言,9093年 PS Level 2的中文页面解释器,3.中文页面描述语言的发展CPDL,76年开始研发汉字激光照排系统,PS Level 3 的中文页面解释器,2023/11/8,6,第一次技术革命:告别铅与火(19871993),第二次技术革新:告别报纸传真机(91年初开始),第三次技术革新:告别电子
3、分色机(92年起),4.中国印刷业的发展,第四次技术革新:告别纸和笔(软片)94年起,2023/11/8,7,具有的通用程序设计语言的基本结构;,1.PS语言的基本特征,具有较强文字、图形和图像处理功能;,1.2 PostScript 语言简介,构成由直线、弧和三次曲线组成的任意形状 的图形;可用任意颜色着色;,文字按图形方式进行处理,取样图像可以是任意的已有的彩色图像;,支持所有线性变换所组合的复合变换;,页面描述与设备无关,2023/11/8,8,2PS语言的发展,PostScript Level 1可以同时表示灰度矢量图 形和灰度位图图像。,PostScript Level 2 不仅可以
4、表示灰度矢量和 位图图形,还支持RGB、CYMK、以及基 于 CIE 的颜色模型,特别是嵌入了加网算法:精确加网。,PostScript Level 3 提供了色彩管理系统、解 释PDF数据等支持数字化工作流程的功能,2023/11/8,9,3.PS Level的基本特点,具备通用程序设计语言的特点,将数据和程序作为对象处理;,栈式语言:先进后出的数据访问规则;,逆波兰表示法:操作数在前,操作符在后,程序结构清晰,具有丰富的操作符,采用ASCII编码,序言:定义正文中的过程和变量,正文:由操作符完成页面描述和 序言中定义的过程,2023/11/8,10,具备页面描述语言的特点,成像模式:模拟印
5、刷工艺采用模板着色的技术,4.PostScript Level 2的新增特点,具有丰富的图形和图像操作符,存储管理技术全局虚拟内存机制;,提供了文字输出的字库与控制方法。,提供了资源管理技术定义、寻找和删除资 源的操作;,增加了二进制编码,提高运行速度 压缩数据;,2023/11/8,11,利用过滤器对数据进行转换(解码或编码数 据的转换),引进了彩色空间技术,扩大了图形图像功能(用户路径、模板、内点 测试等),引进了复合字库Adobe Type 0,增加了文本结构的约定DSC(Document Structure Conventions),2023/11/8,12,5.PostScript
6、Level 3的新增特点,增强的图像技术渐变图案、裁剪路径栈 蒙版图像等;,支持数字工作流程可以实施RIP时的补漏 白;色彩管理功能和按 照ICC特性曲线进行实 施RIP的功能。,复杂页面的处理字体格式、过滤器类 型的增加,2023/11/8,13,1.3 PS解释器的工作原理,现代计算机技术应用有两种基本原理,在程序生成之后,计算机二进制编码,保持语言的程序状态,解释器,在程序生成之后,计算机二进制编码,高级编程语言指令,编译器,2023/11/8,14,1PS解释器作用:,将由PS语言所描述的矢量文件转化为光栅输 出设备能识别的点阵信息。,控制显示器、打印机和照排机等光栅输出 设备的动作。
7、,网络出版HTML或XML语言,输出页面,电子页面(排版软件),印刷品,PS文件,PCL文件LIPS等,2023/11/8,15,2PS解释器与应用程序之间的通讯,传统的仅供输出的打印模式,集成显示器模式,交互式编程语言模式,应用程序,PS解释器,输出设备,应用程序,PS解释器,(交互式显示器),程序员,PS解释器,(任意设备),2023/11/8,16,1.4 PostScript文件,使用PostScript页面描述语言生成的文件简称PS文件,1PS文件的外部特点,后缀名为.ps或.eps;,通常以%!ps 作为ps文件的开始;,2PS文件创建的方法,直接用PS语言来编写:,独立性和封装性
8、,记事簿,文件后缀名为:.ps或.eps,通过打印生成PS文件,利用应用软件来创建,(虚拟的)PS打印机,.prn文件,.ps文件,2023/11/8,17,3PS文件的输出,PS程序的处理方式是:对象序列边读边执行,屏幕阅读,通过某一PS文件阅读器的显示(解释)得到所描述的页面,PDF格式文件,图形应用软件,Acrobat Distiller,或,屏幕显示,导入,PS文件的硬拷贝输出,PS打印机、有PIP功能的照排机、数字印刷机等,Ghostscript,或,直接,Ghostscript,非PS打印机,2023/11/8,18,1.5 文本结构约定与PS文件构成,处理后的PS代码,PS解释器
9、,1文本结构约定(DSC),含DSC注释的PS代码,2DSC的语法描述,每个语句以开始;采用传统的操作符前缀表示法;数据类型有文件名、字库名、正文名、图案名、资源等;,高效率解释,2023/11/8,19,3PS的文件结构,序言,描述,头部分:系统环境,PS文件,默认部分:页面中重复的注释,过程定义部分:过程定义,文本设置部分:设备和参数设置,页面部分:内容描述,文本尾部:扫尾处理,2023/11/8,20,序言,%!PS-Adobe-3.0DSC comments only%EndComments,%BeginDefaults%EndDefaults,%BeginProlog%BeginRe
10、source:procset name1PostScript code and DSC comments%EndResource%EndProlog.%BeginProlog%BeginResource:process namenPostScript code and DSC comments%EndResource%EndProlog,2023/11/8,21,描述,%BeginSetupPostScript code and DSC comments%EndSetup,%Page:label1 ordinal1DSC comments only%BeginPageSetupPostScri
11、pt code and DSC comments%EndPageSetupPostScript code and DSC comments%PageTrailerPostScript code and DSC comments.%Page:labeln ordinaln.,%TrailerPostScript code and DSC comments%EOF,2023/11/8,22,4.PS文本结构的特点,序列次序:同一层次的结构元素具有序列次序,两者之间的关系:,每个结构元素后面紧跟所有的下属;,层次结构:文本、页面、标记;,先于某同级结构元素的任何结构元素,其 下属也先于该同级结构元素
12、;,2023/11/8,23,习题1,1.页面描述语言的概念。2.PS语言的基本特点是什么?从网上了解2种以上的页面描述语言的特点。3.利用图形软件在缺省页面上创建边长为10cm 黄色填充的正方形,生成PS文件。并写出PS 文件的头文件源代码。,2023/11/8,24,%!ps%new101.ps/cm 72 2.54 div muldef5 cm 5 cm translate0 0 10 cm 10 cm 4 copyrectstroke%对正方形描边0 0 1 0 setcmykcolor rectfill showpage,2023/11/8,25,第二章 PostScript语言的基
13、本结构,2.1 PS语言的编码方式,一、ASCII编码(level 1)(P18),1.空白字符:用于分割语法实体;即PS的对象,用于阐述目的、存储文件以及由通道进行的信息传递;,空格字符(Space)、制表符(Tab)、新行符(Enter),2.特殊字符:表示特定的PS对象,并分割PS对象,字符串();数组:;过程:;词典;十六进制:;注释:%;名字对象:/;等,2023/11/8,26,3常规字符:,除了空白字符和特定字符以外的所有可打印字符。,二、二进制编码(level 2以上),二进制标记编码把PS语言的对象表示成单个语法项(Syntactic Entities),它强调压缩效果;可以
14、比ASCII编码用更少的字符来表示PS语言中的大部分对象。,1.二进制标记编码(Binary Token Encoding),特点:不完全性 混合编码,2023/11/8,27,2二进制对象序列编码(Binary Object Sequence Encoding),二进制对象序列编码把一个或多个PS对象的序列表示成单个语法项数组,并立即执行这个数组。它能有效地进行解释和生成。,三、注释:,由%和新行符之间的字符序列构成一个注释;,%example 1.ps/n 4 def%定义n的值为4n 6 add%n+6=10 把计算结果输出到标准输出文件中,Abc%comment/%blah123,20
15、23/11/8,28,2.2 数据类型与对象,一、对象的概念:,1概念:PS扫描程序可访问的所有的数据;,2表现形式:由PS操作符产生、管理和撤消,并由解释器执行。,类型(唯一,为本身所有),简单对象,3特征(三大要素),复合对象,属性(多种),值(唯一),字面属性,可执行属性,存取属性,2023/11/8,29,二、对象分类,1简单对象(原子型实体):,指对象中再无可见的子结构,当复制该对象时,三要素均复制。,指对象中有可见的内部结构,当复制该对象时,其值不复制。(即新老对象共享一个值),2复合对象:,3区别:复制对象时产生的结果不一样。,2023/11/8,30,三、对象的属性,1字面属性
16、和可执行属性,字面属性,文字性,数据,压入操作数栈,可执行属性,立即执行,推迟执行,整数、实数、字符串、数组、词典等对象具 有字面属性;,过程、操作符等具有可执行属性;,以“/”开头的名字对象具有字面属性,否则具有可执行属性。,2023/11/8,31,2存取属性复合对象具有的属性。,无限制属性,只读属性,只执行属性,空属性,四、PS对象,1.简单对象,数值对象:integer and real,整型:231 1231;若超过 该值将自动转换为实型,实型:1038 1038;精确 到小数点8位;,属性:字面属性值:数据本身,2023/11/8,32,数值,带符号数:正、负整数和0;标记为整型对
17、象,实数:浮点数(2.35、-2.35)和指数(1E-5、2.3E10);标记为实型对象,不同进制数:base#number标记为整型对象,基数(base):236;base10;,number:是base进制中的数值,由0 base-1之间的数值组成,大于9的 数值用az或AZ表示。,如:1010=1*23+0*22+1*21+0*20=10,8#1707=1*83+7*82+0*81+7*80=967,16#1FDE=1*163+15*162+13*161+14*160=8158,2023/11/8,33,名字对象(name),任何由常规字符组成且不能解释为数值的字符序列;,如:Abc、1
18、3A等。可作为变量名或过程名,特点:唯一性:两个字符序列相同的名字为同一对象;属性:字面属性若名字前面有“/”,否则具有可执行属性;值:没有值;但与词典中的一个值或操作相对应,/inch 72 def%inch这个变量与72相对应,/y 5 add def%y与一个过程5 add相对应,字面属性,2023/11/8,34,操作符对象(operator)可执行名字对象,add“是两个数相加”的操作,表示PS语言的内部动作;,名字关键词,值操作符本身,属性:可执行属性;值:内部操作;(内部函数),40 60 add,可执行属性,100,2023/11/8,35,布尔型对象(Boolean)逻辑值,
19、布尔对象的值,true:逻辑真或条件成立,false:逻辑假或条件不成立,属性:字面属性,标记对象(mark):用于标记操作数栈中的位置,;等操作符来完成,空对象(null)null对象相对应,用来填充复合对象中的空位置,2023/11/8,36,2.复合对象,串(string):容量为65535 字面属性,字符串:用常用字符由()组成的字符正文,如:(This is a book)show;,由“”反斜杠引导转义字符;,2023/11/8,37,十六进制编码串(左结合),(This is a square.n376)show,This is a square.,用newline或“”在显示时
20、,可忽略一个串被分 成几行,用0和AF或af,由组成的十六进制编码数据;,90、3f、d0三对十六进制代码,ASCIIbased85(!u、Z),由组成的基于85的ASCII字符组成的数据,2023/11/8,38,数组对象(array)字面属性,用“”构造的可以通过数值索引进行访问对象的一维对象的集合;,索引号从0n;n65536;数组中的元素可以是任意类型的PS对象;多维数组由一维数组提供;如:1 23 4PS解释器对遇到的所有数组元素都进行作用,数组是执行的结果。,5 ab 1 2,5、ab、1 2,1 2 add,3,2023/11/8,39,过程(process):(视为函数),由标
21、记对象“”构成的数组称为可执行数组(过程);,数组是执行的结果,而过程则是扫描的结果,过程属性,字面属性,可执行属性推迟执行,1 2 add,3,1 2 add,1 2 add,2023/11/8,40,词典对象(dictionary)字面属性,用 构造,以一对PS对象为元素的数据类型,PS语言中三个缺省的词典:用户词典(userdict):位于局部虚存中的可写词典 全局词典(globaldict):位于全局虚存中的可写词典;系统词典(systemdict):存放所有PS操作符与其值(只读),基本结构为:key1 value1 key2 value2 n65535;,例:/D 4/pagesi
22、ze 612 792/Collate false,/D 4 def%将d=4作为一对存入当前用户词典,2023/11/8,41,文件对象(file):字面属性,是一个由结束符结束的、可读写、有限的字符流构成,用于PS解释器和它环境之间进行的数据通讯。,其他对象 save:表示内存状态的某一瞬间;gstate:表示保存一个完整的图形状态;FontID:用于构造字库的特殊对象;,2023/11/8,42,2.3 PS的执行环境,一、栈,栈(stack):是一种运算受限的线性表;仅允 许在表的一端作插入(进栈和删 除(出栈)的运算。,用来存放PS的操作对象和操作符执行的结果,该栈直接受控于当前程序。
23、,1操作数栈:,常用操作数栈管理操作符:,pop:将栈顶元素弹出丢弃;格式:any pop,1 2 3 pop,1 2,1 2 3 pop pop,1,2023/11/8,43,exch:交换栈顶的两个元素;,1 3 3,2 1,copy:复制栈顶的n个元素;格式:any1anyn n copy,any1anyn any1anyn,例:1 2 3 2 copy,例:1 2 3 2 3,2023/11/8,44,roll:将n个元素循环向上或向下移动j次,格式:,注意:n为栈中元素的个数;操作数栈中至少有n+2的位置;,其中:若j0则表示向上移动j次;若j0则表示向下移动j次;,2023/11/
24、8,45,例:1 3 5 7 4 2 roll,5 7 1 3,1 3 5 7 3-2 roll,1 7 3 5,2023/11/8,46,index:复制操作数栈中的某个元素;,格式:,其中:j表示(索引号)从栈顶元素数(0)起 的第j个数;,例:1 3 5 7 3 index,1 3 5 7 1,2023/11/8,47,2词典栈,用于保存词典对象,但栈底的三个词典不能被弹出(该栈直接受控于当前程序),常用词典操作符:,begin:将dict压入词典栈,使之成为当前词典 格式:dict begin,end:从词典栈中弹出当前词典;注意:该操作符没有任何操作数,2023/11/8,48,de
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- postscript 语言 概论
链接地址:https://www.31ppt.com/p-6514959.html