标注
概览
API 中的许多类都支持标注功能。但是,根据图层类型、几何类型以及是在 2D 还是 3D 模式下工作,可以使用不同的属性和资源。
SceneView
所有具有 labeling
属性的图层类型 (例如 FeatureLayer) 均支持标注。此属性被指定为 LabelClass 对象数组,其中包含 labelExpressionInfo、labelPlacement 和 TextSymbol3DLayer。TextSymbol3DLayer 类支持更改标注图形的 material、font、halo 和其他属性。点、折线和面均支持标注。
已知限制 (SceneView)
- 目前,一个要素只能有一个标注。如果要素满足多个 LabelClasses 的 where 条件,则仅显示第一个匹配 LabelClass 所对应的标注。
- 标注放置仅适用于点图层。
- 如果设置了 TextSymbol3DLayer.size 属性,它将覆盖 Font.size 属性。
SceneView 的字体
3D SceneViews 支持的字体系列取决于安装在用户计算机和 Web 浏览器上的字体。如果应用程序使用了未安装的字体,则 Font 类将实现一个回退机制,该机制将使用默认字体系列值,即 sans-serif
。有关如何在 Windows 或 Mac 上安装新字体的说明,请参阅这些参考资料。
本地未安装的字体也可通过在 css 文件中定义 @font-face 来从 url 加载。
并从符号图层的 Font.family 属性中引用它:
MapView
FeatureLayer、CSVLayer 和 StreamLayer
在 2D MapViews 中,FeatureLayer、CSVLayer、StreamLayer、OGCFeatureLayer 和 Sublayer 均支持标注。labelingInfo 属性被指定为 LabelClass 对象数组,其中包含 labelExpressionInfo、labelPlacement 和 TextSymbol。Text
类支持更改标注图形的 color、font、halo 和其他属性。点、折线和面均支持标注。
示例:多行标注
已知限制 (MapView)
- 对 Font.family、Font.style 和 Font.weight 属性的支持基于
.pbf
格式的托管字体文件。默认情况下,可从以下地址获取字体:https:
。可通过设置 geosceneConfig.fontsUrl 属性来配置 URL。请参阅以下可用的字体系列。//doc.geoscene.cn/resources/fonts
FeatureLayer、CSVLayer 和 StreamLayer 的字体
对 Font.family、Font.style 和 Font.weight 属性的支持基于 .pbf
格式的托管字体文件。默认情况下,可用字体大多与 GeoScene 矢量底图使用的字体相同。 这些字体可通过 https:
获得。通过设置 geosceneConfig.fontsUrl 属性,可以将 URL 配置为指向您自己的字体资源。
如果 Font 不可用,则将使用默认字体系列,即 sans-serif
。这使用 Arial Unicode MS
字体文件。
具有 bold
、italic
或两者的字体需要在 Font.style 和 Font.weight 属性中设置这些属性,而不是在 Font.family 中进行设置。要查看字体所支持的字符类型 (例如 Latin、Cyrillic、CJKV),可在 Microsoft Typography 或 Google Fonts 中搜索字体名称。
注意,这些字体也适用于 TextSymbol,无论是将其用作 2D MapView 中的图形还是用作标注。
2D MapView 中当前支持的字体列表:
字体 | 预览 | 代码 |
Abril Fatface Regular | ||
Alegreya Bold | ||
Alegreya Bold Italic | ||
Alegreya Italic | ||
Alegreya Regular | ||
Alegreya SC Bold | ||
Alegreya SC Italic | ||
Alegreya SC Regular | ||
Alegreya Sans Italic | ||
Amarante Regular | ||
Amatic SC Bold | ||
Arial Bold | ||
Arial Bold Italic | ||
Arial Italic | ||
Arial Regular | ||
Arial Unicode MS Bold | ||
Arial Unicode MS Regular | ||
Atomic Age Regular | ||
Audiowide Regular | ||
Avenir Next LT Pro Bold | ||
Avenir Next LT Pro Bold Italic | ||
Avenir Next LT Pro Demi Italic | ||
Avenir Next LT Pro Italic | ||
Avenir Next LT Pro Light | ||
Avenir Next LT Pro Light Italic | ||
Avenir Next LT Pro Medium | ||
Avenir Next LT Pro Medium Bold | ||
Avenir Next LT Pro Medium Bold Italic | ||
Avenir Next LT Pro Medium Italic | ||
Avenir Next LT Pro Regular | ||
Avenir Next LT Pro Regular Bold | ||
BellTopo Sans Bold | ||
BellTopo Sans Bold Italic | ||
BellTopo Sans Italic | ||
BellTopo Sans Regular | ||
Belleza Regular | ||
Black Ops One Regular | ||
Cabin Sketch Bold | ||
Cabin Sketch Regular | ||
Coming Soon Regular | ||
FGDC GeoAge Regular | ||
Homemade Apple Regular | ||
IM FELL DW Pica PRO Italic | ||
IM FELL DW Pica PRO Regular | ||
Josefin Sans Regular | ||
Josefin Sans Semibold Italic | ||
Josefin Slab Bold | ||
Josefin Slab Bold Italic | ||
Josefin Slab Italic | ||
Josefin Slab Light Italic | ||
Josefin Slab Regular | ||
Josefin Slab Semibold Italic | ||
Josefin Slab Thin Italic | ||
Just Another Hand Regular | ||
Kranky Regular | ||
Life Savers Bold | ||
Loved by the King Regular | ||
Merriweather Bold | ||
Merriweather Bold Italic | ||
Merriweather Italic | ||
Merriweather Regular | ||
Meta Pro Bold | ||
Meta Pro Bold Italic | ||
Meta Pro Book | ||
Meta Pro Book Italic | ||
Meta Pro Cond Xbold | ||
Meta Pro Cond Xbold Italic | ||
Meta Pro Medium | ||
Meta Pro Medium Italic | ||
Montserrat Bold | ||
Montserrat Italic | ||
Montserrat Medium Italic | ||
Montserrat Regular | ||
Montserrat Semibold Italic | ||
Noto Sans Bold | ||
Noto Sans Bold Italic | ||
Noto Sans Italic | ||
Noto Sans Regular | ||
Noto Serif Bold | ||
Noto Serif Bold Italic | ||
Noto Serif Italic | ||
Noto Serif Regular | ||
Old Standard TT Bold | ||
Old Standard TT Italic | ||
Old Standard TT Regular | ||
Orbitron Bold | ||
Orbitron Regular | ||
Oregano Italic | ||
Oregano Regular | ||
Oswald Bold | ||
Oswald Regular | ||
Pacifico Regular | ||
Palatino Linotype Regular | ||
Playfair Display Black | ||
Playfair Display Bold | ||
Playfair Display Bold Italic | ||
Playfair Display Italic | ||
Playfair Display Regular | ||
Playfair Display SC Bold | ||
Playfair Display SC Regular | ||
Redressed Regular | ||
Risque Regular | ||
Roboto Condensed Italic | ||
Roboto Condensed Light Italic | ||
Rye Regular | ||
Special Elite Regular | ||
Syncopate Bold | ||
Syncopate Regular | ||
Tangerine Regular | ||
Ubuntu Bold | ||
Ubuntu Bold Italic | ||
Ubuntu Condensed Regular | ||
Ubuntu Italic | ||
Ubuntu Light | ||
Ubuntu Light Bold | ||
Ubuntu Light Bold Italic | ||
Ubuntu Light Italic | ||
Ubuntu Medium Italic | ||
Ubuntu Mono Bold | ||
Ubuntu Mono Bold Italic | ||
Ubuntu Mono Italic | ||
Ubuntu Mono Regular | ||
Ubuntu Regular | ||
UnifrakturCook Bold | ||
Vast Shadow Regular | ||
Walter Turncoat Regular |
MapImageLayer
通过在 Sublayer 类上设置 labelingInfo 属性,MapImageLayer 可支持标注。labeling
属性被指定为 LabelClass 对象数组,其中包含 labelExpression、labelPlacement 和 TextSymbol。Text
类支持更改标注图形的 color、font、halo 和其他属性。点、折线和面均支持标注。
MapImageLayer 的字体
MapView 中的 MapImageLayers 支持的字体系列取决于安装在发布图层的 GeoScene Server 上的字体。要检查 GeoScene Server 上的可用字体,请运行 Home > services > System > Publishing
下的 Available Fonts
任务 (需要管理员访问)。要添加新字体,该字体必须安装在您的计算机上,并可通过使用 GeoScene Desktop 注册它来访问 GeoScene Server。如果应用程序使用了未安装的字体,则 Font 类将实现一个回退机制,该机制将使用默认字体系列值,即 sans-serif
。