《标注和地图打印输出》由会员分享,可在线阅读,更多相关《标注和地图打印输出(54页珍藏版)》请在金锄头文库上搜索。
1、,ArcGIS在国土资源应用系列课件,标注和地图打印,闫磊 EMail:,中科地信出品 闫磊编写 ,本章内容,三、地图打印,一、标注和注记,五、自己工具打印地图 标准分幅打印,二、布局编辑,四、案例,中科地信出品 闫磊编写 ,一、标注和注记,ArcGIS中的标注与注记(Label与Annotation)区别 标注:有字段属性动态标注出来, 字体大小不改比例尺的变化, 标注位置,会随比例尺的变化 设置后必须以mxd方式保存标注 用于标注地图图层中要素的文本字符串即为标注。“属性”可用于定义作为文本字符串源的属性列并定义标注在地图中的描绘方式。标注是动态的,即每次重绘地图时(例如,平移和缩放地图时
2、)都会重新计算标注显示。,中科地信出品 闫磊编写 ,注记:,注记:一个独立存在图层,存在于地理数据库中,每个都是一个独立的实体。 比例尺变化,字体大小改变,有参考比例尺, 标注位置固定不变 注记用于表示在地理数据库中另存为图形要素位置的要素标注。各注记要素的文本位置将随其他文本属性一同保存。注记与标注的不同之处在于,每个注记位置和说明只计算一次,然后进行保存。每次重新绘制地图时都会重复使用这些信息。由于注记位置是预设好的,因此每次重新绘制地图时并不需要进行标注计算。,中科地信出品 闫磊编写 ,标注主要内容,1、简单标注 2、复杂标注 二分式注记 三分式 上下标 等高线注记 沿路标注 3、标注转
3、换为注记,中科地信出品 闫磊编写 ,1.简单标注,标注见:标注.exe,中科地信出品 闫磊编写 ,1、简单标注字段,设置字段 可以标注,也可以标注两个字段,可以相加 &,中科地信出品 闫磊编写 ,1、简单标注字段设置标注位置,总是水平,或则按图形方向 仅仅放在图形内部,中科地信出品 闫磊编写 ,1、简单标注字段设置标注可视范围,中科地信出品 闫磊编写 ,1、简单标注字段有些标注部分,只部分标注,或则不同标注不一样,见同一个图层不同标注.exe,中科地信出品 闫磊编写 ,2、复杂标注,二分式注记 三分式 上下标 等高线注记 沿路标注,中科地信出品 闫磊编写 ,简单二分式,“& DLMC & “
4、“&vbcrlf & 地类代码 或则 “& DLMC & “ “&vbnewline & 地类代码 或则“& DLMC & “ “& chr(13)& chr(10)& 地类代码,6.地图打印输出标注各种标注.mxd,中科地信出品 闫磊编写 ,换行三种表示方法,Vbcrlf Vbnewline chr(13)& chr(10) Vb不区分大小写,中科地信出品 闫磊编写 ,二分式美观,格式:6.地图打印输出分式标注.mxd,中科地信出品 闫磊编写 ,二分式代码美观,设计人:闫磊 -FUNCTION MYFINDLABEL - FUNCTION myFindLabel ( DZM, NAME )
5、a=strlen(dzm) b=strlen(NAME) IF ab then myFindLabel =“ &DZM&“ & vbcrlf & NAME ELSE str= space(b-a)/2) myFindLabel =“ &str &DZM&str&“ & vbcrlf & NAME END if END Function,中科地信出品 闫磊编写 ,代码续,-FUNCTION STRLEN(STR)- FUNCTION strlen(str) dim p_len p_len=0 strlen=0 p_len=len(str) FOR xx=1 to p_len IF asc(mid
6、(str,xx,1)0 then strlen=int(strlen) + 2 ELSE strlen=int(strlen) + 1 END if NEXT END function 编制日期:2012-03-25 Function FindLabel ( 地类代码 , DLMC ) FindLabel = myFindLabel( 地类代码 , DLMC) End Function,中科地信出品 闫磊编写 ,三分式原始的,中科地信出品 闫磊编写 ,原始代码,DLMC& vbcrlf & “-“& TBMJ &“公顷“ & vbcrlf & 地类代码,中科地信出品 闫磊编写 ,三分式美观,设
7、计人:闫磊 -FUNCTION STRLEN(STR)- FUNCTION strlen(str) dim p_len p_len=0 strlen=0 p_len=len(str) FOR xx=1 to p_len IF asc(mid(str,xx,1)0 then strlen=int(strlen) + 2 ELSE strlen=int(strlen) + 1 END if NEXT END function,中科地信出品 闫磊编写 ,三分式美观源码续,-FUNCTION MYFINDLABEL - FUNCTION myFindLabel ( cunname, DJH,SHAPE
8、_Area ) dim str str=SHAPE_Area dim d d=strlen(str) dim d1 dim d2 d1=strlen(cunname) /2 d2=strlen(DJH) /2 if d2d1 then d1=d2 end if myFindLabel = cunname& space(d) & vbnewline & string(d1, “) &str& vbnewline & DJH & space(d) END Function 编制日期:2012-03-25 Function FindLabel ( DLMC , 地类代码 , TBMJ ) FindL
9、abel = myFindLabel( DLMC , 地类代码 , TBMJ &“公顷“ ) End Function,中科地信出品 闫磊编写 ,标注显示1位小数 方法二(高级),简单代码: DLMC& vbcrlf & “-“& round(TBMJ,1) &“公顷“ & vbcrlf & 地类代码 问题整数不显示小数位 显示小数位 replace(formatNumber( TBMJ ,1),“,“,“),中科地信出品 闫磊编写 ,标注显示一位小数 (高级),Function FindLabel ( Shape_Area ) if abs(round(Shape_Area,0)-Shape
10、_Area )0.01 then FindLabel = “ & round(Shape_Area,0) & “.0“ else FindLabel = round(Shape_Area,1) end if End Function 或则 FUNCTION numone ( d ) dim str str=“ & round(d,1) dim p p = InStr(str, “.“) if (p1) then str=str&“.0“ end if numone=str END Function,中科地信出品 闫磊编写 ,另一个例子,标注三分式标注另一个例子.mxd,中科地信出品 闫磊编写
11、,注意高级设置,中科地信出品 闫磊编写 ,2、复杂注记-等高线标注,?,使用数据:6.地图打印输出标注等值线放置.mxd 操作:等高线标注.exe,中科地信出品 闫磊编写 ,等高线标注实现(中级),中科地信出品 闫磊编写 ,也可以,中科地信出品 闫磊编写 ,结果,数据:6.地图打印输出等高线掩膜.mxd,中科地信出品 闫磊编写 ,沿路标注,6.地图打印输出标注道路标注.mxd,中科地信出品 闫磊编写 ,界址点不压界址线,数据:6.地图打印输出界址点不压界址线.mxd,中科地信出品 闫磊编写 ,3.3、标注转注记,6.地图打印输出标注道路标注.mxd,中科地信出品 闫磊编写 ,参考比例和位置,中
12、科地信出品 闫磊编写 ,二、布局编辑,插入标题-title 基本等同于text ,唯一中间对齐 插入图例 插入指北针 插入比例尺 插入比例文字 插入图片 插入ole对象,中科地信出品 闫磊编写 ,1插入图例应用,可以把图例每一部分分解修改,6.地图打印输出china.mxd,中科地信出品 闫磊编写 ,插入图例,设置列的数目,中科地信出品 闫磊编写 ,自己做的图例,6.地图打印输出图例土地利用现状图.mxd,中科地信出品 闫磊编写 ,插入图片和ole对象,excel表数据如何插入布局 如何图例图片,数据: 6.地图打印输出面积计算成果表.xls 看视频excel数据插入布局.exe 6.地图打印
13、输出jpg.JPG,中科地信出品 闫磊编写 ,一个思考题,一个图廓要求,外廓是1mm的宽,?,中科地信出品 闫磊编写 ,制作花边,可以面也可以是线,6.地图打印输出线的花边.mxd,中科地信出品 闫磊编写 ,三、地图打印内容,打印设置操作 按指定比例打印 切割打印 导出图片,中科地信出品 闫磊编写 ,1、打印设置操作,打印纸张 布局的纸张 数据框(Frame)的大小,在布局中,一个布局可以有多个Frame,中科地信出品 闫磊编写 ,2、按指定比例打印,方法一、最简单设置最上面的比例就可以,中科地信出品 闫磊编写 ,3、切割打印,设置切割打印的内容,中科地信出品 闫磊编写 ,设置网格,中科地信出品 闫磊编写 ,4.矢