1、中华人民共和国国家标准信息处理系统计算机处理图形图形核心系统的功能描述发布实施中华人民共和国电子工业部发布中华人民共和国国家标准信息处理系统计算机处理图形图形核心系统的功能描述中华人民共和国电子工业部批准实施引言图形核心系统提供了一组用于计算机图形程序设计的功能是一个基本的图形系统用于由计算机产生图形的大多数应用中使基本的计算机图形标准化的理由是便于涉及到图形的应用程序在不同装置之间移植帮助应用程序员理解和使用图形的方法用作图形设备制造者的指导使在一个设备上具有多种有用的图形能力的组合为了达到这些主要目标的设计将基于下述要求应该包括从简单的被动式输出到高度交互式应用的全范围图形应用所需的各种实
2、质性能力应能以统一的方式控制各种图形设备包括向量和光栅设备缩微胶片记录器存储管显示器刷新显示器和彩色显示器应该为大多数应用提供所需的全部能力而又不过分地庞大这些要求已用来形成若干条原则以用作评选某些具体设计因此当把注意力集中到某些方面时有可能对整体设计目标作出贡献已经定出了五个设计的方面每个又有一组原则设计目标任何技术设计不应该违反下述原则一致性的必备要求不应该互相矛盾相容性不应该违反其它标准或者实践中普遍接受的规则正交性的功能或模块应该彼此无关或者说其依赖关系应该是结构化的和明确定义的功能性能力下述原则应该用来确定的范围完整性应该包括在一个给定功能层上所要用的全部功能极小性不应该提供对给定功
3、能层上的应用非必需的功能紧凑性一个应用应该能够用一组尽可能少的功能和参数来得到预期的结果丰富性一组丰富的功能能提供超出基本功能且包括高级能力的广泛的便利很明显在这种原则之间存在着一种折衷关系所以功能分为九个级别一个的实现应精确地提供这些级中的某一级功能最低一级的功能只包含最小功能集而较高的级则允许超出基本需要而面向更丰富的功能用户接口的设计下述原则将用来确定用户接口的设计用户友善性应该允许用来设计所希望的用户接口清晰性的概念和功能性能力应该易于理解特别要易于被应用程序员理解出错处理由系统本身或由应用程序造成的系统功能或模块的失效应该用这样的方式处置即出错的反应是明白易懂的并通知了应用程序员同时
4、对系统和应用程序的影响应尽可能小清晰性和健全的出错处理是用户友善性的实质性部分出错处理是是一个组成部分为了有助于清晰性系统和它的状态能以易于理解的方式向用户展示清晰性不仅用于系统设计也用于系统描述在这方面的规格说明分成一般的描述表示系统状态的基本逻辑数据结构的描述以及功能和它对这些数据结构影响的描述图形设备下述原则将和可能涉及到的图形设备的范畴联系起来设备无关性功能应设计成允许应用程序用这些功能去使用大不相同的输出和输入设备而无需修改应用程序的结构设备丰富多样性广泛范围内不同图形输出和输入设备的全部能力都应该能通过功能来得到这些原则引出了作为体系结构基础的一个基本概念和相联结并由驱动的多个独立
5、工作站的概念应用程序能询问每个工作站的能力的设计包括了逸出功能它易于从应用程序中识别出来而又可用来使用特定设备的专有设施实现最后一组原则和的实现有关可实现性应该能用大多数宿主语言在大多数操作系统上用大多数图形设备去支持的功能语言无关性应该能够通过所有标准程序设计语言来使用的标准设施效率应该能够在不要费时的算法的情形下实现健全性应该用尽可能好的方法来保护操作员和应用程序员不受系统硬件或软件失效的影响五组原则是互相联系的例如设计目标和功能性能力都对用户友善性有贡献当在交互环境下考虑响应时间时效率也是重要的某些原则可能有矛盾例如丰富性和极小性综合的出错处理和效率紧凑性和设备多样性为了达到整体的设计目
6、标需要进行折衷应该有一个易于理解的结构和一组功能这组功能能使最大多数计算机图形用户设计出使用各种计算机图形设备的可移植的与设备无关的应用程序本标准等效采用了国际标准信息处理系统计算机图形图形核心系统的功能描述本标准在国际标准允许的范围内定义了汉字字体与汉字的提示和应答类型并将向国际标准化组织进行登记标准中还在正文消息和字符串输入中增加了有关汉字表示方法的注本标准在初始化字符串设备的功能中增加了汉字字符串的输入方式范围和应用领域本标准规定了一组称为图形核心系统的用于计算机图形程序设计的功能是一个为应用程序服务的基本图形系统用它在线划图形输出设备或光栅图形输出设备上产生计算机生成的二维画面它通过提
7、供基本的图形输入和图形分段功能来支持操作员的输入和交互操作它允许贮存和动态地修改画面的一个基本概念是工作站它由数个输入设备和单个输出设备组成几个工作站能同时使用可允许应用程序进行自身的调整以便最好的利用工作站的能力本标准包括了用于贮存和读回外部图形文卷的功能所有功能是按随能力增加而向上兼容的等级来组织的注对某些功能的参数标准规定了留作登记的值的范围这些值的含义将用已建立的程序来定义定义了一个与语言无关的图形系统的内核为了和程序语言集成在一起将嵌入到一个语言依赖层中它遵从该语言的具体约定引用标准信息处理交换用的七位编码字符集信息处理交换用七位编码字符集的扩充方法信息交换用汉字编码字符集基本集信息
8、交换用汉字编码字符集第二辅助集信息交换用汉字编码字符集第四辅助集数据处理词汇部分计算机图形名语术语本章给出图形核心系统重要术语的定义注尽可能采用普遍接受的图形术语承认收悉向逻辑输入设备的操作员发出的输出它指示引发器已被击发宽高比一个用来描述在某一个坐标系中矩形例如工作站窗口工作站视口形状的与的比值图原的外表可以改变图原外观的方法有些外表由图原属性直接控制有些通过束表间接地进行控制图段内的图原有一个通过包含它们的图段进行控制的外表例如醒目图段外的图原不能这样做属性一种能附加到显示元素输出原语或者图段上的特殊性质例如醒目字符高度在中工作站的某些性质称为工作站属性基线字符框内的一条水平线见图对很多字
9、符的定义来说它在外观上是字符外形的下界字符的下伸部分要伸到该线的下面同一字体的所有基线处于字符框内的同一位置束索引特定输出原语束表中的一个索引值它定义了该图原和工作站有关的外表束表一个和工作站有关的并与特定输出原语相关的表表中的各项规定了所有和工作站有关的图原外表在中下述输出原语都有束表折线多点记号正文和填充区字形上线字符框内的一条水平线见图对很多字符的定义来说它在外观上是字符外形的上界字符的上伸部分要伸到该线的上面在某些语言中字符上面的附加记号例如重音记号可以定义在该线的上面同一字体的所有字形上线处于字符框内的同一位置象元阵列一个由大小相同的矩形单元的矩形网格组成的输出原语其中的每个矩形单元
10、具有单一颜色注这些矩形单元不需要一一对应地映射到象素上去中心线平分字符框的一条垂直线见图字符框在字体设计中用以定义字符外形的矩形见图同一种字体的所有字符框有相同的高度选择设备选择器一种的逻辑输入设备它提供了一个用于确定一组选择中某一个的非负整数剪取移去显示元素中处于给定边界外面的部分通常的边界是窗口或视口颜色表一个和工作站有关的表表中各项指定了定义某一颜色的红绿蓝强度值坐标图形线划图形由显示命令和坐标数据来产生图像的计算机图形设备坐标用一个和设备有关的坐标系来表示的坐标在中在那些能够产生精确尺寸图像的设备上的单位是米而在其他设备上则用适当的依赖于工作站的单位设备驱动程序实现中用于支持图形设备的
11、与设备有关的程序部分设备驱动程序产生和设备有关的输出处理和设备有关的交互作用设备空间由显示设备上可寻址的点所定义的空间显示设备图形设备能在上面表示显示图像的设备例如刷新显示器存储管显示器绘图机显示图像图画图片画面任意一个时刻表示在显示面上的一组输出原语或图段显示空间设备空间中对应的用于显示图像的区域诸如数字化仪一类输入设备上的工作空间显示面观察面在显示设备中能在上面显示图像的介质应答在显示控制台上给操作员的一个有关输入设备当前值的即时性通知逸出一种中用于利用依赖于实现或设备特性的功能它不是一种产生图形输出的功能也未在的其他地方提及反馈应用程序解释了逻辑输入值后指给操作员看的输出填充区由多边形封
12、闭边界组成的一个输出原语它可以是空的或用单一颜色图案或阴影线进行填充填充区束表一张把填充区束索引与特定值联系在一起的表这些特定值是为定义填充区图原的所有与工作站有关的外表用的在中这张表包含了由内部样式样式索引值和颜色索引值组成的诸项广义绘图原语一种用来利用诸如曲线绘制等工作站专有几何能力的输出原语级由到和到取值范围中的两个值共同定义的一个功能性能力的集合一个特定的的实现准确地提供了某一级的功能元文卷一个能由读写的顺序文卷它用来长期贮存传输和传送图形信息半高线在字符框内处于字形上线和基线之间的水平线见图对同一字体的一个水平字符串它将出现在垂直方向的正中间同一字体中的所有半高线都处于字符框中的同一
13、位置阴影线填充由填充区图原指定的多边形内部的一种方法它的内部用一组或多组平行线进行填充醒目增辉一种通过改变图段的视觉属性来强调图段的不依赖于设备的方法例如闪烁实现必备需要在所有实现的所有工作站上都同样地实现的特性输入类一组逻辑功能等价的输入设备在中输入类有定位器笔划定值器选择器拣取和字符串询问功能一种目的在于根据的当前状态或者实现的某些固定特性来返回值的功能它们对状态或显示图像没有影响定位设备定位器一种提供用世界坐标表示的位置和规格化变换号的逻辑输入设备逻辑输入设备一个逻辑输入设备是一个或多个物理设备的抽象它把逻辑输入值送给程序中的逻辑输入设备可以是下述类型和逻辑输入值由逻辑输入设备给出的值记
14、号标记用于标识特定位置具有特定外表的小图形量度由一个或多个物理输入设备以及由这些物理设备给出的值的映射所决定与逻辑输入设备相关的值由逻辑输入设备发出的逻辑输入值是该量度的当前值元文卷输入的缩写一个工作站类别元文卷输出的缩写一个工作站类别规格化变换视见变换窗口到视口变换把窗口的边界和内部映射到视口的边界和内部的变换在中该变换把位置的世界坐标映射到规格化设备坐标规格化设备坐标一个规定在独立于设备的中间坐标系中并规格化到某个范围典型的是到之间的坐标在中在中间状态时坐标可能在定义范围之外但是有关的剪取信息将保证输出不超出坐标值域操作员操纵物理输入设备以改变逻辑输入设备的量度和击发引发器的人输出原语图原
15、显示元素能用来构成显示图像的基本图形元素中的输出原语是折线多点记号正文填充区象元阵列和广义绘图原语拣取设备拣取器一种提供附在一个输出原语上的拣取标识符和相关联的图段名的逻辑输入设备拣取标识符一个附在图段内各个输出原语上的并能由拣取设备返回的名字同一个拣取标识符可以赋给不同的输出原语象素图元素显示面上能独立地赋以颜色或亮度的最小元素折线一个由一组相连的线组成的输出原语折线束表一张把折线束索引与特定值联系在一起的表这些特定值是为折线图原的所有与工作站有关的外表用的在中这张表包含了由线型线宽比例因子和颜色索引值组成的诸项多点记号一个由一组用记号标志的位置所组成的输出原语多点记号束表一张把多点记号束索
16、引与特定值联系在一起的表这些特定值是为多点记号图原的所有与工作站有关的外表用的在中这张表包含了由记号类型记号大小比例因子和颜色索引值组成的诸项图原属性输出原语的图原属性值由应用程序以与工作站无关的方式进行选择但能具有与工作站有关的效果提示输出给操作员的用以提示某个逻辑输入设备已可用的信息光栅图形显示图像是由按行和列排列的象素阵列组成的计算机图形旋转把全部或部分显示图像绕一个轴转动在中这种能力只局限于图段定比缩放通过把显示元素的坐标乘一个常数值的方法对全部或部分显示图像进行放大或缩小在中这种能力只限于图段注在两个正交方向取不同的比例时需要用两个常数值图段一组能够作为一个整体进行操纵的显示元素图段
17、属性只能用于图段的属性在中图段属性包括可见性醒目性可检测性图段优先级和图段变换图段优先级一个用来决定几个重叠的图段在图形输出和输入时谁优先的图段属性图段变换使由图段定义的显示元素以不同的位置平移大小比例和或方向旋转出现在显示面上的变换字符串设备一个提供由七位编码字符或汉字组成的字符串作为其结果的逻辑输入设备笔划设备一个提供用世界坐标表示的一系列点和一个规格化变换号的逻辑输入设备正文一个由字符串包括七位编码字符和汉字组成的输出原语正文束表一张把正文束索引和特定值联系在一起的表这些特定值是为定义正文图原的所有与工作站有关的外表用的在中这张表包含了由正文字体和准确度字符扩展因子字符间隔和颜色索引值所
18、组成的诸项正文字体和准确度一个由字体和准确度两个成分组成的中正文的外表它们一起决定了输出到特定工作站上字符的外形和字符集不同字体号还决定了该正文是七位编码字符串还是汉字字符串此外准确度还描述了应用程序所要求的其他正文外表匹配的准确程度按准确性增加的次序准确度分为和平移移动对全部或部分显示图像的位置附加固定的位移在中该能力只限于图段引发器操作员用来指出重要时刻的一个或一组物理输入设备定值设备定值器一个提供实数的逻辑输入设备视口由应用程序指定的规格化设备坐标空间中的一部分空间在中本定义只限于用来定义规格化变换的规格化设备空间中的矩形区域窗口虚拟空间中一个预定义部分在中该定义只限于用来定义规格化变换
19、的世界坐标空间中的矩形区域工作站是基于抽象图形工作站的概念它提供了应用程序用以控制物理设备的逻辑接口依赖于工作站上的图段存储器用于图形输出工作站上的图段存储器图段不能从转送到另一个工作站上独立于工作站的图段存储器一个图段能在上面贮存并在以后能转送到其它工作站上的特殊的工作站类别工作站必备工作站必备描述了在实现的所有工作站上都同样地实现的特性采用说明本标准定义的字符中包括了汉字国际标准中只有七位编码字符的字体本标准中增加了有关汉字字体号的规定本标准还规定了用字体号来区分是七位编码字符还是汉字工作站变换一个把工作站窗口的边界和内部映射到工作站视口显示空间的一部分的边界和内部并保持了宽高比的变换在中
20、本变换把用规格化设备坐标表示的位置映射到设备坐标保持宽高比的结果是工作站窗口的内部可能不映射到工作站视口的全部工作站视口当前选为输出图形用的部分显示空间工作站窗口要呈现在显示空间上的规格化设备坐标系中的一个矩形区域世界坐标一个应用程序用来规定图形输入和输出的独立于设备的笛卡尔坐标系图形核心系统关于本标准称为图形核心系统的功能函数集将在第和章及附录补充件和附录补充件中叙述这些功能将如所述按九个能力逐级递增的向上兼容的级别组织起来一个的实现将准确地实现某一级功能如果一个实现处于两个定义的级之间或者在这些定义的之外都将是非法的在一个实现中所有能够用功能涉及的图形能力将只通过使用注对某些功能的参数标准
21、定义了留作登记用的值的范围这些值的含义将使用已建立的规程加以定义这些规程将不用于定义依赖于工作站或实现的值和值域这些值和值域不被标准化的引言图形核心系统提供了应用程序和一组图形输入和输出设备配制之间的功能性接口该功能接口包括了在各式各样的图形设备上为交互的或非交互的作图所需的全部基本功能该接口抽象到这种程度在应用程序面前屏蔽掉硬件的特殊性其结果得到了统一表示的输出原语和输入类的简化接口在中勾划了基本的输出输入的概念以及输入输出顺序的组织介绍了一个既用于的结构化又用于实现设备无关性的称为工作站的重要概念通过图段设施动态属性和变换引入了画面操纵和改变的设施对所有这些用于改变的方法的总的控制将进一步
22、在关于工作站的中解释多工作站的概念允许同时从不同的显示系统进行输出和输入通过特种工作站以及从用于内部贮存的特种工作站直接向其它工作站传送图形实体的可能性提供了内部和外部贮存图形的设施不是每个的实现都需要支持全部的功能已定义了九个级别去满足不同图形系统的要求每个实现准确地提供了某一级功能这些级都是向上兼容的只定义了与语言无关的图形系统的内核为了集成到一个语言中去要嵌入到遵循该语言约定例如参数和名字的指定的依赖层中在图中表示的分层模型例示了在图形系统中的作用每个层可以调用相邻低层的功能一般说应用程序使用面向应用的层依赖于语言的层其它依赖于应用的层和操作系统资源所有能够通过引用的工作站能力只能通过使
23、用应用程序面向应用的层依赖于语言的层图形核心系统操作系统其他资源图形资源图的分层模型概念产生的图形输出由称为输出原语和图原属性的两组基本元素组成输出原语是输出设备完成的基本动作如画线印字符串的一种抽象而属性控制了输出原语在设备上出现时的外表如线型颜色字符高度拣取标识符等非几何外表诸如颜色而不是字符高度可以由每个工作站分别控制以便最佳地利用其能力作为操作员动作结果而从设备上输入的图形信息由映射到六类输入它们每一个都用一个称为逻辑输入值的数据类型表示输入动作在显示面上的效果诸如提示和应答都由分别对每个逻辑输入设备加以控制两个抽象概念抽象的输出和抽象的输入是所谓抽象工作站的结构单元一个工作站代表了一
24、个由零个或一个显示面零个或多个如键盘图形输入板和光笔输入等输入设备组成的装置工作站把这些设备作为一个抽象设备的配置提交给应用程序借以屏蔽掉硬件特殊性包含在输出原语属性和逻辑输入值位置和笔划中的几何信息坐标可以进行变换这些变换完成下述三种坐标系之间的映射世界坐标由应用程序员使用规格化设备坐标用来定义一个对所有工作站都适用的统一的坐标系设备坐标每个工作站有一个坐标系表示显示空间的坐标输出原语和属性用规格化变换从映射到用图段变换从映射到再用工作站变换从映射到定位器输入用逆工作站变换从映射到再用逆规格化变换中的一个从映射到多个输出原语和图原属性可以组合成一个图段图段是操纵和改变的单元操纵包括建立删除和
25、改名改变包括变换一个图段使一个图段可见或不可见以及使一个图段醒目图段也形成了运行时独立于工作站的画面存储器的基础通过这个存储器它建立成为一个称为独立于工作站的图段存储器的特种工作站图段能够进行插入和传送到其他工作站上去用来控制部分画面输出原语图段输入设备的提示和应答类型在显示面上的外观的属性按统一的方法加以组织有两组属性用于每个输出原语的外观图原属性那是独立于工作站的和工作站属性图原属性按模态方式指定在图原产生时结合进去图原属性包括所有像正文的字符高度填充区的图案尺寸一类图原的几何外表此外图原的非几何外表由图原属性的两种方式中的一种加以控制或者通过指向一个依赖于工作站的表示一组值用一个单个的属
26、性来指定图原的所有非几何外表或者以独立于工作站的方式各用一个属性指定图原非几何外表中的每一个前者称为成束指定后者称为单独指定工作站属性包括了一个工作站上的实际表示它用非几何外表成束指定的索引值来指出例如每个折线表示或束包括线型线宽比例因子和颜色索引的值工作站属性也规定了颜色表和图案表以及对画面改变的延迟控制工作站属性也可以动态地重新设置图段的外观由图段属性控制它们是图段变换可见性醒目性图段优先级和可检测性这些可以动态地重新设置图段属性可以作为操作时信息反馈的基础例如醒目控制逻辑输入设备操作的属性可以通过设备的初始化或作为输入设备设定的一部分加以指定具体依赖于不同属性通过设备初始化可以指定初值提
27、示和应答方法以及屏上应答区域数据记录可进一步提供对设备专有属性的信息通过输入设备设定可以选择操作方法和通断应答开关逻辑输入设备的操作指定了谁操作员或应用程序启始输入采样输入由应用程序直接获取请求输入作为对应用程序的直接回答由操作员产生事件输入异步地由操作员产生并收集在一个队列中供应用程序取用运行时将处于五种不同状态中的一种和每个状态相关联的有一组它允许执行的功能和一组状态变量操作状态的概念和状态变量使得能正确规定初始化如在时和各种功能的实际效果特别在保持设备无关性方面一组专门的称为询问功能的功能在任何状态下都允许使用它们只能读这些状态表用这种方式在出错时可提供有用的信息其它询问功能允许对工作站
28、描述表作只读访问它允许应用程序能按特定工作站的能力调整自己询问工作从来不会引起出错替代的是返回一个指出是否已经进行了一次有效的询问的信息为了进行外部的长期保存和交换的目的提供了到图形信息归档系统的接口该接口包括能写所谓图形元文卷它是顺序的的元文卷输出工作站和能读元文卷的元文卷输入工作站除了输出到工作站用的正常功能之外元文卷输出工作站还可接收包含有非图形信息的项从元文卷的输入由读入和解释功能控制后者和应用程序直接调用相应的功能有同样的效果图形输出输出原语由产生并送到所有活动工作站的图形信息由称为输出原语的基本元素构成提供了六种输出原语折线产生由一个点的序列定义的一组相连的线多点记号产生以一组给定
29、位置为中心的某种符号正文产生一个在给定位置上由七位编码字符或汉字组成的字符串填充区产生一个可以是空的或填以单一颜色图案和阴影线的多边形区域象元阵列产生一个带有各自颜色的象素的阵列广义绘图原语引用一个工作站上诸如画样条曲线圆弧椭圆弧之类的特殊几何输出能力该对象由标识符一组点和附加数据来表征只对这些点进行变换把余下的解释工作留给工作站输出原语属性每个输出原语潜在地有三类属性几何的非几何的和标识前两种属性类型决定了输出原语精确的外观而第三种属性类型是用于和输入的联系这些属性值按模态方式设置并记录到状态表中为每个图原属性提供了单独的功能除了参看本条的后面以便允许应用程序指定一采用说明国际标准中只有七位
30、编码字符个属性的值而不用不必要地指定其他属性的值在产生一个输出原语时就是当调用了一个输出原语功能时这些值将结合到该图原中并且不能在以后进行改变第一种属性控制了图原的几何外表这些外表影响到整个图原的形状和大小例如的因此它们有时称为几何属性这类属性独立于工作站如果它们表示几何数据点或位移要用世界坐标系表示例如用世界坐标系表示而取一组枚举值中的一个它们分别对每个图原进行确定一个图原可以有零个一个或多个几何属性用世界坐标系表示的独立于工作站的几何属性的当前值用世界坐标贮存当它们结合到有关的图原时这些值像图原定义中的几何数据一样受同一个变换控制所以该当前值不受规格化变换和工作站变换的影响第二种属性控制了
31、图原的非几何外表这些外表只影响一个图原的外观例如的线型除外的所有图原颜色索引或者图原成分的形状和尺寸例如的记号大小比例因子非几何外表不能表示几何数据图原的非几何外表可以用两种方法中的一种来指定即成束指定或单独指定在成束指定外表时每个图原有一个称为图原的属性该属性是一个束表的索引表的每个表项包含了图原的所有非几何外表除和参看本条后面外每个图原都有各自的束表按这种方法指定时非几何外表是依赖于工作站的每个工作站有它自己的一组束表存放在工作站状态表中每个束的值或者束表中的表项对不同工作站可以不同对单独指定的外表每个非几何外表都有各自的属性与控制几何外表的属性一样这些属性独立于工作站并存放在状态表中因为
32、每个非几何外表只出现在一个图原束类型中这些属性的每一个只用于一个图原类型对给定的非几何外表能赋给相应的束分量的值和能够赋给单独指定的相应属性的值相同因为对每个工作站分别设置束它们的分量值限制于对该工作站是有效的值在单独属性指定的情形不加这类限制如果用一个在特定工作站上无效的单独指定的属性值去产生图原时将出现定义好的用于图原显示的缺省动作正如前面指出的那样和既没有关联的束表也没有相应的单独指定的属性可以使用最适合的束表或用于各个功能的单独指定属性的集合例如如果一个功能本质上是一时那末就可使用填充区束表或单独指定的填充区属性集合包含了颜色索引信息作为其定义的一部分而没有其它非几何外表因此既不使用束
33、表也没有一组单独指定的属性指定图原非几何外表的方法可以对每个外表分别加以选择一组称为外貌定义源旗标简称的附加的图原属性取值和去指定这个选择像其它图原属性一样这些属性独立于工作站并存在状态表中每个图原的每个非几何外表有一个所有的初始值是相同的可以是或者其选择依赖于实现如果初始值不作改变系统将运转如如果所有的初始值是就好像非几何外表的单独指定不是系统的特性如果所有的初值是就好像非几何外表的成束指定不是系统的特性旗标可以在打开后的任何时刻用功能进行设置这能够使某些图原的非几何外表采用单独指定而其它则按束指定当图原显示时要显示的非几何外表之值决定如下如果一个外表的是用于所有工作站上的值就是该图原对应的
34、单独指定属性的值如果一个外表的是在一个工作站上使用的值将通过工作站上该图原的束表得到将使用由束索引指出的束表的对应成分如果颜色是图原的一个非几何外表那末它指定指向另一个颜色表的索引值每个工作站只有一个颜色表所有颜色索引都指向它类似地束表中其它表项或者对应的单独指定属性都可以索引到另一个工作站表例如当使用内部样式时的样式索引或者索引到一个固定表例如折线的线型每个图原只有一个第三类属性即拣取标识符在一个图段被拣取时用来标志图段内的一个或一组图原加在每个输出原语上的属性控制非几何外表的属性几何属性和是只有在本图中把和图原的其它属性分开见中的完全列表图属性的结合过程到中零个或多个集除了总是一个属性图显
35、示了属性的结合过程每个图原除外的属性在到中叙述在中更详细地叙述在叙述中属性以英文大写字母出现例如属性和外表按上下文以英文大写字母或中文出现几何外表常常由几何属性控制所以以英文大写出现例如外表非几何外表可以通过图原或由单独指定的属性控制非几何外表以中文出现除非使用了对应的单独指定属性它才以英文大写字母出现例如线型外表除非单独指定属性时用英文束表图案表和颜色表中的表项可以对每个工作站分别设定表项的一些标准定义包含在工作站描述表中并用作初值应用程序可以选择标准定义或者显示地定义特定项的值仅仅最常用的或预期的值的组合需要对每个输出型工作站加以预定义至少要能彼此区分在给定级上最少预定义项数见内的那些预定
36、义项值的其他组合可在询问工作站能力之后由图原功能加以指定在或类的每个工作站上的表即它们是工作站属性是折线束表多点记号束表正文束表填充区束表图案表颜色表这些表中的值可以动态地改变事实上改变贮存在束表中的图原外表的唯一的方法是通过改变该表然而要注意的是改变一个束表的项只能反映在其束表中的外表所对应的是的情形在工作站描述表中接受动态修改的项指出那种改变导至隐含再生可以延迟能够立即实行延迟状态在中进行更详细的解释如果改变能立即实行那些改变除影响到图段内的图原之外还影响图段外的图原折线属性折线没有几何属性根据线型线宽比例因子和折线颜色索引的值折线在工作站上的表示由单独指定的折线属性集和或者两者的某个组合
37、来控制是一个指向折线束表的指针它的每个项包含了线型线宽比例因子和折线颜色索引的值线型到是实线虚线点线和点划线每个和类工作站要以可辨认的样式实现线型到大于的线型留作登记之用可以用小于零的线型值但它们的样式依赖于实现线型规定了用以画出折线的重复的线段和间隙的序列由工作站决定该序列在折线开始时在折线剪取后的片段开始处以及在折线的每个顶点该序列是重新开始还是继续下去线宽按线宽额定值乘以线宽比例因子计算这个值由工作站映射到最接近的可用的线宽多点记号属性多点记号没有几何属性根据记号类型记号大小比例因子和多点记号颜色索引的值多点记号在工作站上的表示由单独指定的多点记号属性集和或两者的某个组合来控制是一个指向
38、多点记号束表的指针它的每个项包含了记号类型记号大小比例因子和多点记号颜色索引的值记号类型到是点加号星号圆圈和对角交叉每个都以它们标识的位置为中心每个或类工作站以可以辨认的形状在给定位置上实现记号类型到大于的记号类型留作登记之用小于零的记号类型可以使用但它们的形状依赖于实现记号大小按额定值乘以记号大小比例因子计算该尺寸由工作站映射到最近可用的尺寸记号类型总是显示成最小可显示的点当且仅当记号位置在剪取矩形之内时记号才是可见的部分可见和记号的剪取依赖于工作站正文属性正文有几何属性字符高度字符竖向正文路径和正文对准它们在本条中规定和使用正文还有两个隐含地规定的几何属性字符宽度和字符基向这些分别由和功能
39、隐含地加以指定除此之外它们的行为和通常的几何属性一样它们的值在图原产生时结合到图原中去在以后不能改变这些值像包含在图原定义中的几何数据那样受同一个变换控制根据正文字体和准确度字符扩展因子字符间隔和正文颜色索引的值正文在工作站上的表示由单独指定的正文属性集和或者两者的某个组合来控制是一个指向正文束表的指针它的每个项包含了正文字体和准确度字符扩展因子字符间隔和正文颜色索引的值由下述外表提供了对工作站上外观的精确控制字符扩展因子字符间隔和然而在显示正文时这些值的使用由正文字体和准确度外表的设置来决定字体和准确度是同一外表的两个成分指定了大写字母的额定高度指定了字符额定宽度实际的宽度依赖于由字体设计者
40、所指定的宽高比它们可能随字符变化字符扩展因子规定了宽高比偏离字体设计者所指定的宽高比的程序给出了字符的竖直方向给出了字符的基线方向只有向量的方向而不是向量的长度才有关系可能取的值为和它指定了正文串书写的方向对正文串沿着基线顺着的方向书写对基线方向是的反方向对字符路径和的方向一致对它是的反方向对和正文路径方向这样排列字符串使得字符框的中心落在方向的直线上字符间隔值指定了多少附加的间隔要插入到两个相邻字符框之间如果字符间隔是零字符框将沿着一个接一个排列其间没有任何附加的间隔一个正的字符间隔值将在字符框之间插入附加的间隔一个负的字符间隔值将使相邻的字符框重叠起来字符间隔指定为字体的额定字符高度的分数
41、外表字符扩展因子字符间隔和正文字体的效果是定义一个包围了正文其边和轴平行的想像中的矩形这个外包矩形的边界如下对或情形矩形的高度是指定字体的字符框的高度矩形的左边界是最左边字符的字符框的左边矩形的右边界是最右边字符的字符框的右边对或的情形矩形的顶边是最顶上字符的字符框的顶边类似地矩形的底边是最底下字符的字符框的底边矩形的宽度是指定的字体中最宽的字符的宽度和属性的效果是变换外包矩形随之定义了一个外包平行四边形即正文范围平行四边形矩形已被旋转和剪切了属性控制了该正文范围平行四边形对正文位置的定位为简便起见按缺省的和描述那时正文范围平行四边形实际上是一个矩形的水平分量有四个值和如果水平分量是正文范围平
42、行四边形的左边通过正文位置类似地如果其值是正文范围平行四边形的右边通过正文位置如果水平分量是正文位置处于正文范围平行四边形左右两边之间的中线上这样如果或通过字符串中心线的直线也通过正文位置的垂直分量有六个值和这些值的每个都对应在定义字体时字体专有的水平线之一见图的值使正文范围平行四边形的顶边通过正文位置的值使正文位置处于整个字符串的字形上线上当或时或者在字符串最顶部字符的字形上线上当或时值使正文位置处于整个字符串的半高线上当或时或处于顶部字符的半高线和底部字符半高线之间的半腰线上或时值使正文位置处于整个字符串上的基线上当或时或者在字符串底部字符的基线上当或时值使正文范围平行四边形的底边通过正文
43、位置在一般情形称为水平的方向在时是代表的那个向量的方向在时是它的相反方向类似地称为垂直的方向在时是代表的那个向量的方向在时是它的相反方向的任一分量都能取值对每个值其值为的某个分量的效果等价于该分量的非的某个值在每种情形这种等价的对准值选择使得能达到对该值的自然的对准等价值的完整表是水平和垂直对准的值图字体描述坐标系几何正文属性的初值是即缺省窗口高度的隐含指定的几何正文属性的初值是即初值的同一值正文字体和准确度一起构成了一个外表正文字体值用于选择工作站上某种字体包括七位编码字符字体和汉字字体每个工作站至少要支持一种字体那就是能够产生由定义的字符集的图形表示这是字体号大于的字体号留作标准登记用可以
44、支持小于的字体号但它依赖于实现用字体号区分输出的正文是由七位编码字符还是由汉字组成的字符串字体号为标准的汉字字体它能够产生由定义的汉字字符集的图形表示每个支持汉字正文输出原语的工作站必须支持该字体号每个符号本标准的实现必须至少支持一个这样的工作站此外在依赖于实现的即小于的字体号中规定了到之间的字体号为汉字字体号注是需向国际标准化组织登记的汉字字体号正文准确度的值用来选择工作站上的正文表示和那些由独立于工作站的正文属性以及当前使用的变换和剪取所规定的正文表示之间的接近程度正文准确度取下述可能值字符串按要求的字体产生通过对准把输出原语放在给定的正文位置上和字符扩展因子根据工作站已有能力合理地进行近
45、似取值和字符间隔不需要使用按照依赖于实现和工作站的方式进行剪取字符串按要求的字体产生对于每个单个字符的表示的竖直方向的基方向和字符扩展因子等外表按依赖于工作站的方式尽可能近似地取值在字符框之间的间隔要精确地计算为此目的该字符框是从正文外表和字体尺寸准确地计算出来的理想的字符框结果正文范围平行四边形的位置由和正文位置决定剪取最少要在一个一个字符的基础上进行按要求正文字体的正文字符串在正文位置上通过应用全部正文外表加以显示字符串严格地按剪取矩形进行剪取准确度并不必然地意味着向量笔划只要表示符合控制准确度的规则字体可以以任何形式实现例如光栅字体的输出及实现支持和正文准确度以上输出级支持全部正文准确度
46、如下一个工作站可以用比为此目的而要求的更高的准确度也就是说如果它支持某个特定字体的准确度这隐含着该字体和两种准确度均可使用然而对一个工作站并不需要支持一个给定字体的所有准确度即对一给定字体可能没有或者和两者都没有正文字体和准确度是工作站必备的就是说对任何支持准确度正文字体的级每个装置的每个工作站至少支持一个准确度正文字体这就是包括了由定义的字符集的字体号这意味着对准确度的正文对那些无适当硬件支持的实现需要有某种软件字符产生器不是所有工作站需要支持全部字体但是对那些支持的工作站同一字体号用来选取特定装置的所有工作站上的同一字体字体仅仅在实现内部加以定义字体设计者在局部的笛卡尔字体坐标系中规定表示
47、的每个字符的符号的形状字体或者是单一字宽的或者按比例字宽在一个字体坐标系中的每个字符都有相关的字符框字体基线字体半高线字形上线和中心线见图对单一字宽的字体所有字符的字采用说明此处在国际标准留给各国登记使用的字体号和依赖于实现的字体号中增加了有关汉字字体号的规定符框的大小都相同对比例字宽的字体各个字符的字符框宽度可以不同字符框的边平行于字体坐标系的轴字体基线字体半高线和字形上线平行于字体坐标系的轴并在字符框的垂直方向的范围之内字体半高线的位置由字体设计者定义用于正文串的对准中心线平行于轴并平分字符框它们的准确位置由字体设计者指定在字体坐标系中字符的高度由字体的基线到字形上线的高度给出字符的宽度可
48、以包括字符两边的空白这些空白通常在字符左右两边平分除了带弯钩的字符可以超出字符框的边界外字符都处于字符框内一般说一个字体的字符框顶部边界和印刷体的字形上线或上行线一致或很接近其底部边界和下行线的关系亦类似在顶部和字形上线之间如果有间隙的话可用于字符上面的外加记号如重音号然而这些细节和其它细节纯粹供字体设计者用其意图只是使水平方向邻接的字符框给出一个好的正常间隔的外观在垂直方向邻接的字符要避免上行线和下行线之间的碰撞印刷上的排实因为和的值以世界坐标系单位给出但字符将用依赖于工作站的字体和准确度以设备坐标系在工作站上产生几何属性需要进行这样的变换使得工作站能以预想的方式产生字符现在叙述要达到的效果
49、和正文编码在一起一个长度等于平行于的高度向量和一个长度等于平行于的宽度向量传送到视见流水线中要对这些向量进行规格化变换若在图段内时还要进行图段变换和工作站变换它们也存到图段中然后这些向量可由工作站上的字符发生器使用要注意各个字符的形状可能经受在和方向不等的规格化变换和图段变换在工作站上字符的高度由变换后的高度向量的长度给出字符的竖直方向由变换后高度向量的方向给出字符的宽度由变换后的宽度向量的长度乘以该字符的字体宽高比和字符扩展因子后给出字符的基方向由变换后的宽度向量的方向给出根据和字符间隔的值字符排列在正文范围平行四边形内正文范围平行四边形随后按照包含在图原定义中的正文位置和的值进行定位图到图给出了不同正文外表的值所产生的影响的例子图给出了不同规格化变换的影响的例子图改变几何正文属性的效果注例子中正文的其他属性是准确度字符扩展因子和字符间隔在这些例子中字形上线顶线在改变的属性下面加了横线图改变非几何正文外表的效果注例子中正文用缺省的几何正文属性和准确度改变的外表下面加了横线图正文外表联合改变的效果注改变的图图顶上的例子中正文的属性下面都加了横线在最后一个例子中画出了所有字符的