一、普通模式
1、标注:名称和面积(无分数线)
语言:Arcade
$feature.QLR +'\n'+Round($feature.Shape_Area,2)
语言:vbscript
[QLR] & " " & Round([Shape_Area],2)
2、标注:名称和宗地号(放大是虚线)
语言:vbscript
Space(1) & [QLR] & vbNewLine & "————" & Space(1) & vbNewLine & [ZDDM]
3、标注:名称和宗地号(解决分数线打印为虚线的问题)
语言:vbscript
Space(1) & [QLR] & vbNewLine & "<CHR spacing = '" & -1 * Int(10) & "'>" + "----------" + "</CHR>" & Space(1) & vbNewLine & [ZDDM]
4、标注:名称和宗地号及面积注记(未左对齐)
语言:vbscript
Space(1) & [QLR] & vbNewLine & "<CHR spacing = '" & -1 * Int(10) & "'>" + "-----" + "</CHR>" & Space(1) & Round([Shape_Area],2) & vbNewLine & [ZDDM]
5、标注:名称和宗地号及面积注记(推荐)
语言:vbscript
"<und>" & [ZDDM] &"—"& [QLR] & "</und>" & vbnewline & [FRMC] & "—" & [FRDHHM]
二、高级模式
1、二分式对齐标注
语言:vbscript
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 myFind ( DZM, NAME )
If dzm<>"" Then a=strlen(dzm) Else a=0
If NAME<>"" Then b=strlen(NAME) Else b=0
If a>b Then
myFind ="<und>" & DZM & "</und>" & vbnewline & NAME
Else
str= Space((b-a)/2)
myFind ="<und>" & str & DZM & str & "</und>" & vbnewline & NAME
End If
End Function
'编制日期:2012-07-30
Function FindLabel ([ZDDM],[QLR])
FindLabel =myFind([ZDDM],[QLR])
End Function
2、三分式对齐标注
语言:vbscript
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 myFind(cunname,DJH,SHAPE_Area)
Dim str
str=Round(SHAPE_Area,2)
Dim d
d=strlen(str)
Dim d1
Dim d2
If cunname<>"" Then d1=strlen(cunname) /2 Else d1=0
If d1<1 Then
d1=1
End If
If DJH<>"" Then d2=strlen(DJH) /2 Else d2=0
If d2<1 Then
d2=1
End If
If d2>d1 Then
d1=d2
End If
myFind = cunname & Space(d/2) & vbnewline & String(d1,"—") & str & vbnewline & DJH & Space(d/2)
End Function
'编制日期:2012-07-30
Function FindLabel ([ZDDM],[QLR],[Shape_Area])
FindLabel =myFind([ZDDM],[QLR],[Shape_Area])
End Function
3、三分式对齐标注(前)
语言:vbscript
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 myFind(cunname,DJH,SHAPE_Area)
Dim str
str=Round(SHAPE_Area,2) & " "
Dim d
d=strlen(str)
Dim d1
Dim d2
If cunname<>"" Then d1=strlen(cunname) /2 Else d1=0
If d1<1 Then
d1=1
End If
If DJH<>"" Then d2=strlen(DJH) /2 Else d2=0
If d2<1 Then
d2=1
End If
If d2>d1 Then
d1=d2
End If
myFind = Space(d/2) & cunname & vbnewline & str & String(d1, "—") & vbnewline & Space(d/2) & DJH
End Function
'编制日期:2012-07-30
Function FindLabel ([ZDDM],[QLR],[Shape_Area])
FindLabel =myFind([ZDDM],[QLR],[Shape_Area])
End Function