PostScript语言教程(三、绘图)

3.1、画线
线

newpath
144 72 moveto
144 432 lineto
stroke
showpage

我们首先调用newpath,初始化当画笔状态。

x y moveto,将画笔的移动到x,y的位置
x y lineto,以x,y为终点进行画线
stroke将构建的路径绘制到当前页面
showpage打印当前页

交叉线

newpath
72 360 moveto
144 72 rlineto
144 432	moveto
0 -246 rlineto
storke
showpage

x y rlineto:将画笔位以x,y进行位移

正方形

newpath
  270 360 moveto
  0 72 rlineto
  72 0 rlineto
  0 -72 rlineto
  -72 0 rlineto
4 setlinewidth
stroke showpage

setlinewidth:设置线的宽度

newpath
270 360 moveto
0 72 rlineto
72 0 rlineto
0 -72 rlineto
-72 0 rlineto
closepath
4 setlinewidth
stroke showpage	

closepath:使图形闭合(不使用的时候在拐角的地方会出现一个小缺口)

3.2、填充图形

newpath
270 360 moveto
0 72 rlineto
72 0 rlineto
0 -72 rlineto
-72 0 rlineto
closepath
fill showpage	

fill:填充图形

newpath
270 360 moveto
0 72 rlineto
72 0 rlineto
0 -72 rlineto
-72 0 rlineto
closepath
.5 setgray
fill showpage

gray:设置透明度

多图的叠层

newpath
    252 324 moveto
    0 72 rlineto
    72 0 rlineto
    0 -72 rlineto
    -72 0 rlineto
closepath
.5 setgray
fill showpage

newpath
    270 360 moveto
    0 72 rlineto
    72 0 rlineto
    0 -72 rlineto
    -72 0 rlineto
closepath
.5 setgray
fill showpage

newpath
    288 396 moveto
    0 72 rlineto
    72 0 rlineto
    0 -72 rlineto
    -72 0 rlineto
closepath
.5 setgray
fill showpage

  

3.3、总结
closepath 闭合图形
lineto 绘制直线
moveto 设置绘制的起始点
newpath 初始化绘制方式
rlineto 移动
fill 绘制填充图形
setgray 设置透明度
setlinewidth 设置线的宽度
stoke 绘制路径
showpage 打印当前页

时间: 2024-10-08 06:36:13

PostScript语言教程(三、绘图)的相关文章

PostScript语言教程(一、介绍)

一.介绍 POSTSCRIPT语言是打印机页面魔术的一种程序设计语言.他拥有着广泛的图形操作,并且可以以任意方式,包含变量,函数,以及过程的任意组合 . POSTSCRIPT页面描述是由解析器运行的程序(gs),postscript程序通常是由其他应用程序生成的. 1.1.POSTSCRIPT作为页面语言 POSTSCRIPT具有大量的图形运算符,通过他可以更加详细的描述你的页面. 文本的字体,位置,方向,尺寸. 几何图形的大小,方向,宽度,直线和曲线的位置,任何大小形状颜色的空间填充. 1.2

PostScript语言教程(六、坐标变换)

6.1.坐标系变换 POSTSCRIPT图形操作是在一个坐标系中,这个坐标系被称为用户坐标系或用户空间,该坐标系独立于任何物理设备.POSTSCRIPT在用户空间中进行绘制,并将结果传输到特定的打印机设备(设备空间)中. 在程序中,通常使用默认的坐标系.在这个空间中,原点是在页面的左下角,量度是1/72英寸长度. 然而,用户空间是可塑性的,他的坐标系可能是在位置,方向,大小变化后的. 用户空间的转化 translation是从一个地方运动到另一个地方.这个运动是原点的运动.例如: 100 200

YAML 语言教程(转载)

用YAML语言读取配置是最快的,之前的suricata中用yaml读取了配置,并且在代码运行期间,对配置进行了维护,所以抽点时间,来了解一下YAML语言编程,下文虽然对YAML语言和JAVAScript语言的相同语句进行了比对.但也不失为一个好的YAML入门教程. 原文地址:http://www.ruanyifeng.com/blog/2016/07/yaml.html?f=tt YAML 语言教程 作者: 阮一峰 日期: 2016年7月 4日 编程免不了要写配置文件,怎么写配置也是一门学问.

Swift3.0语言教程比较、判断字符串

Swift3.0语言教程比较.判断字符串 Swift3.0语言教程比较.判断字符串,在一个程序中字符串很多时,常常会做的操作就是对这些字符串进行比较和判断.本小节将讲解这些内容. 1.不区分大小写比较 字符串比较可以分为:不区分大小写比较.区分大小写比较以及本地化比较三部分.首先我们来看不区分大小写比较,不区分大小写比较顾名思义就是不区分字符串中字母的大小写,即A和a相同.在NSString中使用caseInsensitiveCompare(_:)方法实现这一功能,其语法形式如下: func c

Xamarin XAML语言教程XAML文件结构与解析XAML

Xamarin XAML语言教程XAML文件结构与解析XAML XAML文件结构 在上文中,我们创建XAML文件后,会看到类似图1.16所示的结构 图1.16  结构 其中,.xaml文件和.xaml.cs文件就是XAML文件的结构.以下就是对这两个文件的介绍. .xaml文件中包含的就是XAML代码,实际上就是XML语法.官方的说法:它是一个声明对象的语言,为我们创建对象提供便捷的一种方式.与HTML类似,特点是用来描述用户接口 (UI)内容. 通常我们把与.xaml文件关联的.xaml.cs

Swift2.0语言教程之类的方法

Swift2.0语言教程之类的方法 Swift2.0语言的方法 方法其实就是函数,只不过它被定义在了类中.在Swift中,根据被使用的方式不同,方法分为了实例方法和类型方法两种.这两种方法的定义也和Objective-C是不同的.本节依次讲解这两种方法. Swift2.0语言的实例方法 实例方法被定义在类中,但是由类的实例调用.所以,这类方法被称为实例方法.实例方法和函数一样,分为了不带参数和带参数两种.以下依次讲解这两种方法的使用. 1.不带参数的实例方法 不带参数的实例方法定义和函数的是一样

Xamarin XAML语言教程基本视图ContentViewg构架范围框架

Xamarin XAML语言教程基本视图ContentViewg构架范围框架 ContentView视图基本上有三个作用,下面依次介绍. (1)范围框架:ContentView视图可以构建一个范围框架,用来约束其中的子元素. [示例14-1:ContentViewScopeFrame]以下将使用ContentView来构建一个范围框架,以此来约束其子元素.代码如下: <?xml version="1.0" encoding="utf-8" ?> <

?Highmaps网页图表教程之绘图区显示标签显示数据标签定位

?Highmaps网页图表教程之绘图区显示标签显示数据标签定位 Highmaps数据标签定位 由于数据标签是和节点一一对应,所以数据标签是依据节点位置进行定位的.本节详细讲解如何对数据标签进行定位. Highmaps节点定位 在mappoint.mapbubble.mapline图表类型,节点都有明确位置.而在map图表类型中,节点对应的是一个区域.所以,map图表类型的节点中心位置就可以由用户来设定.设置时候需要使用到以下两个配置项: middleX: Number1 middleY: Num

Swift2.0语言教程之函数的返回值与函数类型

Swift2.0语言教程之函数的返回值与函数类型 Swift2.0中函数的返回值 根据是否具有返回值,函数可以分为无返回值函数和有返回值函数.以下将会对这两种函数类型进行讲解. Swift2.0中具有一个返回值的函数 开发者希望在函数中返回某一数据类型的值,必须要在函数声明定义时为函数设定一个返回的数据类型,并使用return语句进行返回.其中,return语句的一般表示形式如下: return 表达式 其中,表达式可以是符合Swift标准的任意表达式.而具有返回值的函数声明定义形式如下: fu