Presentation is loading. Please wait.

Presentation is loading. Please wait.

页面描述语言 主讲:樊丽萍 上海理工大学 出版印刷学院 2017/3/9.

Similar presentations


Presentation on theme: "页面描述语言 主讲:樊丽萍 上海理工大学 出版印刷学院 2017/3/9."— Presentation transcript:

1 页面描述语言 主讲:樊丽萍 上海理工大学 出版印刷学院 2017/3/9

2 第六章 图像输出与模板设计 §6.1 图像的特点与特征参数 取样图像(图像):取样值的矩形数组 1. 图像的特点:
第六章 图像输出与模板设计 §6.1 图像的特点与特征参数 取样图像(图像):取样值的矩形数组 1. 图像的特点: ◎二维数组的集合——元素为像素点灰度值 ◎以行的方式保存数据 ◎每个像素值(取样值)有1、3或4个分量构成 ◎分量的位数为1、2、4、8或12 2017/3/9

3 图像分辨率、尺寸大小、位分辨率和图像模式
2. 图像(特征)参数 图像分辨率、尺寸大小、位分辨率和图像模式 ◎源图像格式: 行数(宽)、列数(高)、彩色分量数和每个分量的位数 ◎提供图像取样数据的数据源: 由高*宽*分量数*位数/分量 构成 ◎用户空间坐标和源图像空间坐标的对应关系: 定义了用户空间接受图像的区域 ◎由源图像分量值到当前彩色空间的映射关系 2017/3/9

4 3.取样数据的描述 colorimage、image 、imagemask
①图像源格式的参数: width、height、components、bit/ component components=1 参数 image imagemask components=3、4 colorimage dict image 2017/3/9

5 每个分量从各自的数据源中获取,数据类型要相同
樊丽萍* 2017/3/907/16/96 ② 图像数据源——分量值(0~2n -1) 过程:每次必须返回完整的扫描行数据 文件:执行某种解码或还原过程 字符串:一般为十六进制,可重复使用 图像数据 所有分量从同一数据源中轮流读出 单数据源 多数据源 0 ~1.0 分量要影射到0~1 每个分量从各自的数据源中获取,数据类型要相同 2017/3/9 上海理工大学出版印刷学院*

6 源图像坐标系:从左到右,从下到上: [0 0 w h]
4.图像变换矩阵 源图像坐标系:从左到右,从下到上: [0 0 w h] (0,0) (w,h) 图像变换矩阵 :定义了图像空间与用户空间之间的 映射关系 图像操作符扫描次序: 从左到右,从下到上 或从左到右,从上到下 源图像 图像变换矩阵 2017/3/9

7 unit square in user space
源图像 unit square in user space (0,0) w h 当前页面 (0,0) (1,1) image matrix CTM 以这种方式映射到单位正方形的图像可使用PS操作符 例:将图像映射到其左下角(100,200),宽80,高150,且逆时针旋转45度的矩形中: translate 45 rotate scale 2017/3/9

8 [width 0 0 -height 0 height ]
(0,0) w h 从左到右,从下到上的扫描次序 [width 0 0 height 0 0 ] 图像变换矩阵 (0,0) w h 从左到右,从上到下的扫描次序 [width 0 0 -height 0 height ] 2017/3/9

9 §6.2 图像与色彩空间 每分量位数 1.单色图像——灰度图像
§6.2 图像与色彩空间 每分量位数 1.单色图像——灰度图像 ①width height bit/comp matrix datasrc image ②dict image 图像变换矩阵 图像数据源:串、文件、过程 图像词典 注意:通常图像数据以行的格式出现在PS程序中 2017/3/9

10 例6.1 写出下列程序结果 %!ps %new601.ps /inch {72 mul} def /fade <
FFFF FFFF FFFF FFFF EEEE EEEE EEEE EEEE DDDD DDDD DDDD DDDD CCCC CCCC CCCC CCCC BBBB BBBB BBBB BBBB AAAA AAAA AAAA AAAA 2017/3/9

11  >def 1.5 inch 2.5 inch translate 6 inch 6 inch scale  [ ] {fade} image showpage 8位 2017/3/9

12 4位 8位 2017/3/9

13 MDSource为false或不存在:单数据源
图像词典构成 关键字 类型 语 义 ImageType 整型 1 Width 源图像宽度 Height 源图像高度 ImageMatrix 数组 含6个元素的图像变换矩阵 MultipleData-Source MDS 布尔 true:图像有多个数据源 false:图像只有一个数据源 DataSource 多种 MDSource为false或不存在:单数据源 MDSource为true:多数据源 BitsPer-Component 每个分量占用的位数1、2、4、8、12 Decode 见下表 Interpolate true:执行图像插值;false 2017/3/9

14 Decode数组:线性映射 图像数据流0~2n -1 当前彩色空间的彩色分量值 Decode 映射转换的最大值和最小值
其中:o为输出值,i为输入值 2017/3/9

15 典型的Decode数组 颜色空间 数组内容 [0 1] [0 1 0 1 0 1] [0 1 0 1 0 1 0 1]
DeviceGray [0 1] DeviceRGB [ ] DeviceCMYK [ ] CIEBasedABC [ ] CIEBasedA CIEBasedDEF [ CIEBasedDEFG DeviceN [0 1┅0 1] Separation Indexed [0 N] Pattern (image)不允许使用 2017/3/9

16 例6.2 写出下列程序执行的结果 Substring boolean %!ps %new602.ps /inch {72 mul} def
例6.2 写出下列程序执行的结果 %!ps %new602.ps /inch {72 mul} def /temp 42 string def 1.5 inch 2 inch translate scale << /ImageType 1 /Width /Height 15 /BitsPerComponent 8 /ImageMatrix [ ] /DataSource {currentfile temp readhexstring pop} /Decode [0 1] >> Substring boolean 2017/3/9

17 image showpage ede3e1d7c9b29a8c8e84797169666766676464676b
dbd9ceac8f b8b7e5d d575b6063 d3be8c859bc2d99f6f837a5b c61 b8846bacce9f d3c3f 8386b173493f3f3a5b684c33322f353c3b42444d5f 96af87455f9d856c98ad522a c4b 99705e93e4e07f6a99803c2d333c325b875b3e4c56 9593b2e3ffff8c e313d4a356daf e eaeac5caf9ffce4a cb19a633d5d fff5ccc3d3f9ffa548454c51504e80afa97d495383 ffede1b2bad4e8eeb46c ead9b785f5d85ab fffee5cac9adabc8d3c5b2aaa39d877b a98 fffee1d6b9b1a f f78606aad fffff6e6cbae9d867c78706f6a65615f5a4d5ea4d9 fffffef4e5cbb19e8d87807a6f add7e0 showpage 2017/3/9

18 2017/3/9

19 false:只有一个数据源 datasrc; true:有ncomp个数据源 datasrc0┅ datasrc n-1;
仅适用于行格式 2.彩色图像 数据组织 从单个数据源中轮流读取各个分量 从不同数据源中获取各个分量 width height bit/comp matrix datasrc multi ncomp colorimage dict image 图像数据彩色分量个数 决定图像数据源个数 false:只有一个数据源 datasrc; true:有ncomp个数据源 datasrc0┅ datasrc n-1; 2017/3/9

20 {currentfile fade readhexstring pop} false 3 colorimage
例6.3 写出下列程序的运行结果 %!ps %new603.ps /inch {72 mul}def /fade 48 string def 2 inch 2.5 inch translate 45 rotate 6.4 inch 2.4 inch scale [ ] {currentfile fade readhexstring pop} false 3 colorimage 2017/3/9

21 0f0 1f1 2f2 3f3 4f4 5f5 6f6 7f7 8f8 9f9 afa bfb cfc dfd efe fff
ff0 ff1 ff2 ff3 ff4 ff5 ff6 ff7 ff8 ff9 ffa ffb ffc ffd ffe fff f00 f11 f22 f33 f44 f55 f66 f77 f88 f99 faa fbb fcc fdd fee fff f0f f1f f2f f3f f4f f5f f6f f7f f8f f9f faf fbf fcf fdf fef fff 00f 11f 22f 33f 44f 55f 66f 77f 88f 99f aaf bbf ccf ddf eef fff 0ff 1ff 2ff 3ff 4ff 5ff 6ff 7ff 8ff 9ff aff bff cff dff eff fff showpage 忽略所有非十六进制字符 2017/3/9

22 2017/3/9

23 /DeviceCMYK setcolorspace /temp 56 string def
例6.4 写出下列程序的运行结果 %!ps %new604.ps /inch {72 mul}def /DeviceCMYK setcolorspace /temp 56 string def 2 inch 2.5 inch translate 5.6 inch 2.4 inch scale 2017/3/9

24 /DataSource {currentfile temp readhexstring pop}
<< /ImageType 1 /Width 7 /Height 6 /BitsPerComponent 8 /ImageMatrix [ ] /DataSource {currentfile temp readhexstring pop} /Decode [ ] >> image 2017/3/9

25 a c a c a c a5a c3c a5a c3c a005a c003c showpage 2017/3/9

26 2017/3/9

27 /rfile (e:\\Fan_Liping\\PStest\\duckyR.ps) (r) file def
例6.5 写出下列程序的运行结果 %!ps /tempr 200 string def /tempg 200 string def /tempb 200 string def /rfile (e:\\Fan_Liping\\PStest\\duckyR.ps) (r) file def /gfile (e:\\Fan_Liping\\PStest\\duckyG.ps) /bfile (e:\\Fan_Liping\\PStest\\duckyB.ps) 2017/3/9

28 {rfile tempr readhexstring pop} {gfile tempg readhexstring pop}
gsave translate scale [ ] {rfile tempr readhexstring pop} {gfile tempg readhexstring pop} {bfile tempb readhexstring pop} true colorimage grestore /Times-Roman 72 selectfont moveto 1 0 0 setrgbcolor (Ducky) show showpage 2017/3/9

29 2017/3/9

30 蒙版:使图像中的某些区域为透明,某些区域 为不透明区域(用当前色着色)的技术
3.蒙版的使用(Mask) 蒙版:使图像中的某些区域为透明,某些区域 为不透明区域(用当前色着色)的技术 模板蒙版:利用二值图像作为着色依据 蒙版 直接二值图像蒙版:使一幅图像成为另一 幅图像输出透明度控制的依据 颜色键蒙版:在图像词典中指定一种颜 色或某一区域作为透明区域 用欲显示 图像填充 用当前色填充 透明区域处露出下面图形 2017/3/9

31 width height polarity matrix datasrc imagemask dict imagemask
①模板蒙版 蒙版 不透明 透明 图像像素值:1 width height polarity matrix datasrc imagemask dict imagemask true:像素值为1的部分当前色着色 false:像素值为0的部分当前色着色 2017/3/9

32 例6.6写出下列程序的结果 %!ps %new605.ps 72 144 translate 500 500 scale
0.8 setgray rectfill 1 0 0 setrgbcolor 24 23 true [ ] 2017/3/9

33 < 003b e4940 b220 3cb650 75fe88 17ff8c 175f14 1c07e2 3803c4 f8edfc b2bbc2 bb6f84 31bfc2 18ea3c 0e3e00 07fc00 03f800 1e1800 1ff800 > imagemask showpage 2017/3/9

34 003b00 2017/3/9

35 ②直接二值图像蒙版——dict3 image
图像像素值:1 被取样图像填充 原有图形内容 Type3 图像词典项(必须) 关键词 类型 含义 ImageType 整数 3 DataDict 词典 显示图像的信息(Type1图像词典) MaskDict 指定蒙版图像的信息(Type1图像词典) Interleave-Type 1、2、3 指定图像与蒙版图像的数据组织形式 2017/3/9

36 ③颜色键蒙版——dict4 image(MaskColor)
与颜色值匹配区域为透明 指定颜色值 例6.7 写出下列程序的结果 %!ps %new6074.ps /inch {72 mul}def /temp 48 string def /DeviceRGB setcolorspace 1.25 inch 2.5 inch translate setcolor 2017/3/9

37 0.2 inch neg dup 3.8 inch 1.6 inch rectfill 3.2 inch 1.2 inch scale
<< /ImageType 4 /MaskColor [ ] ( [0 0 7]) /Width 16 /Height 6 /BitsPerComponent 4 /Decode [ ] /ImageMatrix [ ] /DataSource {currentfile temp readhexstring pop} >> image 2017/3/9

38 0f0 0e0 0d0 0c0 0b0 0a ff0 ee0 dd0 cc0 bb0 aa f00 e00 d00 c00 b00 a f0f e0e d0d c0c b0b a0a 00f 00e 00d 00c 00b 00a 0ff 0ee 0dd 0cc 0bb 0aa showpage 2017/3/9

39 §6.3 使用与设计模板Form 1.模板的作用 对不同页面或同一页面的不同位置上重复使用的任意图形、图像和文字的控制 2.模板的特点
定义一次、传送一次、解释一次、存于缓存中 3.主要用途 ①完整页面的模板 ②重复对象的模板 模板词典 4.模板构造和调用: form execform 2017/3/9

40 由execform来加入,用于实现缓冲区模板所需要的数据。类型和值与实现有关
①描述模板——词典 模板词典构成 关键词 类型 含义 FormType 整数 1 XUID 数组 (可选)唯一标识模板的标识符 BBox 定义模板界框的坐标值, 决定保存到缓冲区的模板大小。 Matrix 模板坐标空间到用户空间的变换矩阵 PaintProc 过程 用来着色模板的PS过程 Imlement-ation 任何 由execform来加入,用于实现缓冲区模板所需要的数据。类型和值与实现有关 2017/3/9

41 ②调用模板—— execform ◎执行gsave ◎把Matrix与CTM相乘 ◎ 根据Bbox项进行裁剪 ◎执行newpath
◎把模板词典压入操作数栈 ◎ 执行模板词典中的PaintProc ◎ 执行grestore 2017/3/9

42 /Font1 {/Times-Bold 18 selectfont }def /Form 8 dict def Form begin
例6.8 写出下列程序的运行结果 %!ps /inch {72 mul}def /Font1 {/Times-Bold 18 selectfont }def /Form 8 dict def Form begin /FormType 1 def /BBox [0 0 4 inch 7 add 2.7 inch ]def /Matrix [ ] def 2017/3/9

43 0.25 inch 2.1 inch moveto (Name:) show
/TitlesForm 5 dict def TitlesForm begin /FormType 1 def /BBox [ inch 2.4 inch ]def /Matrix [ ] def /PaintProc{ Font1 0.25 inch 2.1 inch moveto (Name:) show 0.25 inch 1.8 inch moveto (Address:) show 0.25 inch 1.2 inch moveto (Phone:) show 0.25 inch 0.9 inch moveto (Birthday:) show } def end 2017/3/9

44 0 0.1857 inch rlineto -0.0625 inch 0 rlineto
/insertNotch{ inch rlineto inch 0 rlineto inch rlineto 0.25 inch 0 rlineto inch rlineto inch 0 rlineto inch rlineto } def /DrawBox { inch 7 moveto insertNotch inch 7 moveto insertNotch 4 inch 7 4 inch 2.5 inch 25 arcto 4 inch 2.5 inch inch 25 arcto 0 2.5 inch arcto 0 7 4 inch arcto closepath } def 2017/3/9

45 DrawBox 0.6666 setgray fill grestore DrawBox 1 setgray fill
/PaintProc{ begin gsave 7 -7 translate DrawBox setgray fill grestore DrawBox 1 setgray fill DrawBox 0 setgray stroke 0 0 moveto TitlesForm execform }def end /R1 {Font1 (Name:)stringwidth pop 0.25 inch add }def /R2 {Font1 (Address:)stringwidth pop 0.25 inch add }def /R3 {Font1 (Phone:)stringwidth pop 0.25 inch add }def /R4 {Font1 (Birthday:)stringwidth pop 0.25 inch add }def 2017/3/9

46 R1 2.1 inch moveto (Mary) show
%The first page 1 inch 1 inch translate moveto Form execform 0 0 1 setrgbcolor R1 2.1 inch moveto (Mary) show R2 1.8 inch moveto (330 Neijiang Rd.) show R3 1.2 inch moveto ( ) show R4 0.9 inch moveto (07/08/82) show showpage 2017/3/9

47 R1 2.1 inch moveto (Jack) show
%The second page 1 inch 1 inch translate moveto Form execform 1 0 0 setrgbcolor R1 2.1 inch moveto (Jack) show R2 1.8 inch moveto (100 Shuifeng Rd.) show R3 1.2 inch moveto ( ) show R4 0.9 inch moveto (05/10/82) show showpage 2017/3/9

48 R1 2.1 inch moveto (Lily) show
%The third page 1 inch 1 inch translate moveto Form execform 0 1 0 setrgbcolor R1 2.1 inch moveto (Lily) show R2 1.8 inch moveto (110 Nanjiang Rd.) show R3 1.2 inch moveto ( ) show R4 0.9 inch moveto (11/05/81) show showpage 2017/3/9

49 第二页 第三页 第一页 2017/3/9

50 2017/3/9

51 习题 1.PS程序中通过那些特征参数来描述图像? 2.Decode数组的作用是什么?/ Decode[0 1]和
术?它们的特点是什么? 4.写出exce601程序的运行结果。并将exce601程 序改写为图像词典程序。 5.已知图像f大小为:20*20,位分辨率为4,模 式RGB,文件名为imagefile。将该图像输出到页面左下角(1 1)英寸,边长为5英寸的区域中 2017/3/9

52 /sigma < f07f c71f cf9f 8f8f 9fcf 9fcf 9fcf 9fcf 8f8f
%!ps %exce601.ps /inch {72 mul}def /sigma < f07f c71f cf9f 8f8f 9fcf 9fcf 9fcf 9fcf 8f8f cf9f c701 f001 > def 1.25 inch 2.5 inch translate 6 inch 6 inch scale [ ] {sigma} image showpage 2017/3/9

53 6.利用Photoshop获取图像像素点数据, 大小为24*24像素的灰度图像,图像起点为(100,100),将图像输出到页面中。
7.编写学生证模板,显示三页,尺寸适合,字体自拟(英文)。 2017/3/9

54 课堂练习 1. 写出new602程序将/Decode 修改为[1 0]的运行 结果。 2017/3/9

55 {currentfile fade readhexstring pop} false 3 colorimage
将下列程序改为词典图像 %!ps %new603.ps /inch {72 mul}def /fade 48 string def 2 inch 2.5 inch translate 45 rotate 6.4 inch 2.4 inch scale [ ] {currentfile fade readhexstring pop} false 3 colorimage 2017/3/9

56 0f0 1f1 2f2 3f3 4f4 5f5 6f6 7f7 8f8 9f9 afa bfb cfc dfd efe fff
ff0 ff1 ff2 ff3 ff4 ff5 ff6 ff7 ff8 ff9 ffa ffb ffc ffd ffe fff f00 f11 f22 f33 f44 f55 f66 f77 f88 f99 faa fbb fcc fdd fee fff f0f f1f f2f f3f f4f f5f f6f f7f f8f f9f faf fbf fcf fdf fef fff 00f 11f 22f 33f 44f 55f 66f 77f 88f 99f aaf bbf ccf ddf eef fff 0ff 1ff 2ff 3ff 4ff 5ff 6ff 7ff 8ff 9ff aff bff cff dff eff fff showpage 2017/3/9

57 /DeviceRGB setcolorspace /fade 48 string def
%!ps %new602.ps /inch {72 mul} def /DeviceRGB setcolorspace /fade 48 string def 2 inch 2.5 inch translate 45 rotate 6.4 inch 2.4 inch scale << /ImageType 1 /Width /Height 6 /BitsPerComponent 4 /ImageMatrix [ ] /DataSource {currentfile fade readhexstring pop} /Decode [ ] >> image 2017/3/9


Download ppt "页面描述语言 主讲:樊丽萍 上海理工大学 出版印刷学院 2017/3/9."

Similar presentations


Ads by Google