复杂PDF地图符号制作研究.docx

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

?

?

复杂PDF地图符号制作研究

?

?

胡浩杰王天林时间

摘要文章主要讨论了以直接利用《PDF规范》制作复杂PDF地图符号过程中遇到的问题及解决方法。通过制作圆形符号将全图的圆形(包括点)全部通过圆形符号来调用,大大减少了PDF地图的数据量。通过组合符号的实现,创造了一条在PDF地图制图过程中,利用简单符号组合合成复杂符号的方法,简化了复杂符号的制作。通过研究PDF地图符号的精确控制,解决了因PDF图形边界显示原理而带来的描边符号变大的问题。

关键词PDF地图;地图符号;制作研究

TP3A1674-6708(2018)211-0065-03

PDF地图是一种符合PDF规范的电子地图,它具有数据量小、使用方便等特点[1]。目前PDF地图的制作主要依靠直接将栅格地图利用PDF制作工具转为PDF格式,或者是利用EPS数据制作矢量PDF地图。2011年研究生学术论文《地理PDF地图制图关键技术研究》详述了以直接写入符合《PDF规范》的编码的方法来制作矢量PDF地图。2018年2月期刊《工程技术》论文《矢量PDF地图符号制作研究》一文,讨论了矢量PDF地图符号库的制作方法。本文主要讨论了在制作较为复杂的矢量PDF地图符号过程中遇到的问题及解决方法。

1圆的处理

1.1拟合圆的数据量问题

因为PDF中没有描绘圆形路径的路径构建操作符,因此在PDF中描绘圆形需用贝塞尔曲线来描绘。在学术论文《地理PDF地图制图关键技术研究》第2.3.3节中详述了PDF中矢量圆的构建方法。采用这种拟合方法构建的圆一共需要使用四段贝塞尔曲线。下面这段代码是在PDF页面内容流中构建圆形和矩形的数据量比较示例:

1000m

155.23020044.77200100c

200155.23155.23200100200c

44.772000155.230100c

044.7744.7701000c

上面这段PDF代码构建了一个中心在(100,100)点,半径为100的圆。这个圆占用了123个字节。

00200200re

上面这段PDF代码构建了一个左下角在(0,0)点,边长为200的正方形。这个正方形占用了14个字节。

由此可见圆的数据量大大超过了其他图元的数据量。而在PDF地图制图过程中,圆的使用是大量的。如果可以制作一个基本图元符号,让整张PDF地图的所有圆形都调用这个符号,那将大大减少整幅PDF地图的数据量。

1.2圆形符号的构建

1.2.1路径描绘操作符的选择

地图中一般有3种圆形符号。一是只描边的圆形符号;二是只填充的圆形符号;三是既描边又填充的圆形符号。这三种圆形符号因为其使用的路径描绘操作符的不同必须做成三种不同的符号。只描边的圆形符号使用路径描绘操作符S;只填充的圆形符号使用路径描绘操作符f;既填充又描边的圆形符号使用路径描绘操作符B[2]。

1.2.2有效数字的选择

建议构成圆形符号的贝塞尔曲线的参数的有效数字可以多一些,一般在4~5位。原因有3点:一是PDF中的圆形是由四段贝塞尔曲线拟合而成的,存在一定的误差。如果地图中的圆形有测量意义,精度要求更高,其参数的有效数字还可以设置的更多以保证其精度。二是圆形符号在地图中会放大缩小,在放大的过程中其误差也会放大。三是作为一个符号其参数增加一两位的有效数字对地图的数据量影响很小。但是有效数字也不能太多,太多的有效数字会增加地图打开时CPU的计算量,减慢地图打开速度,因此只要达到精确度要求即可。

1.2.3符号的图形状态

尽管资源对象序列中的符号可以加入颜色、线宽等图形状态。但这里的圆形符号是全图调用的,原因是加入这些状态后,全图的圆形符号的颜色和线宽都不能变化或不能按照制图员的意志来变化。因此建议圆形符号的内容流里只写入路径和路径描绘操作符,所有图形状态包含颜色和线宽都在调用圆形符号的内容流中设置。另外如果整张PDF地图的圆形符号的颜色都是一个颜色,可以在圆形符号中设置颜色,这样调用符号时就不用设置颜色了且所有对圆形符号的颜色设置都会失效。

2组合符号的实现

前文所述的圆形符号已经可以在PDF中调用,但很多符号中有一个或多个圆形。为进一步减少数据量,符号中的圆形也可以直接调用圆形符号来构建,即用组合符号的方法来实现。

组合符号利用现有的一种或多种PDF资源对象,在组合符号的流数据中通过矩阵变换改变PDF资源对象的大小、位置等状态,组合成新的更复杂的PDF地图符号。组成组合符号的PDF资源可以是已有的PDF地图符号、栅格图像、文字等PDF资源对象。本文以利用PDF地图符号构建组合符号为例,描述组合符号的构建方法。

PDF地图符号的组成元素和页面对象的元素构成类似,都是利用数据流在相应的空间中描绘图形。经过

文档评论(0)

183****1225 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档