mapnik的TextSymbolizer類屬性說明及使用預研情況

本文來自李明子csdn博客(http://blog.csdn.net/free1985),商業轉載請聯繫博主獲得授權,非商業轉載請註明出處!

本文編寫於2010年9月,記述了mapnik的TextSymbolizer類的各屬性說明及使用預研情況。
TextSymbolizer共有25個在XML中可用的屬性。現已將其分別試用總結。

名稱 意義 試用結果 默認值
avoid_edges Bool,true/false 是否避免文字出現在地圖邊緣 可用 true
allow_overlap Bool,true/false 是否允許文字重疊 可用 false
character_spacing Int(非負整形數字) 兩個字符間的距離,默認0 可用但無明顯效果 0
dx Int(整形數字) 字符的水平位移,以像素爲單位 可用 0
dy Int(整形數字) 字符的垂直位移,以像素爲單位 可用 0
face_name Cstring(字符串) 字體名稱,環境中已註冊的字體。不能與fontset_name 同時使用 可用 宋體
fontset_name Cstring(字符串) 自注冊字體名稱,需要與FontSet結合使用,不能與face_name同時使用 可用
fill RGB(顏色值) 文字填充顏色 可用 黑色
halo_fill RGB(顏色值) 文字光暈(描邊)顏色 可用 黃色
halo_radius Int(非負整形數字) 文字光暈(描邊)寬度,以像素爲單位 可用 0
horizontal_alignment Enum(枚舉),left/middle/right 水平校正方式,對準基準點的文字位置 可用
justify_alignment Enum(枚舉),left/middle/right 對齊方式(多行文字時有效果) 可用,但缺乏多行文字數據無法測試效果
line_spacing Int(非負整形數字) 行間距 可用,但缺乏多行文字數據無法測試效果
max_char_angle_delta Int(整形數字) 最大字符角度值 可用,但無明顯效果
min_distance Int(非負整形數字) 字符串(標籤)間的最小距離 可用 0
name Cstring(字符串) 域名稱,來源於數據庫。SymbolizerText使用的一種方式,參考青島數據,建議不使用 缺乏合適的DATASOURCE,未作測試
opacity Float 0.0-1.0,軟件中映射爲0-100的整數 文字的透明度 可用 不透明
placement Enum(枚舉),point/line 文字放置方式,point爲放置在點的位置上;line爲根據線形渲染文字 可用,但可能與線形文件有關,測試時當選用line時文字消失 中心
size Int(非負整形數字) 文字大小 可用 9
spacing Int(非負整形數字) 一條線中重複文字間的空格,以像素爲單位 可用,但可能與線形文件有關,測試時未見效果 256
text_convert Enum(枚舉),none/toupper/tolower 字符轉換。三個選項分別爲“不轉換”,“轉爲大寫字符”,“轉爲小寫字符” 可用,但可能與字符集有關,測試時未見效果
vertical_alignment Enum(枚舉),top/middle/bottom 垂直校正方式,對準基準點的文字位置 可用

wrap_before,wrap_character和wrap_width三個屬性爲一組,從介紹來看是設置環繞字符的。即以某個字符爲中心,環繞渲染某個字符串。經過測試這個屬性是可用的。但是,測試結果沒有規律可循,效果不是介紹中的樣式,並且字符串被渲染後的位置會有很大的改變,建議謹慎使用。

發佈了56 篇原創文章 · 獲贊 28 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章