properties.rst 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617
  1. .. _css_properties:
  2. Property listing
  3. ================
  4. .. highlight:: css
  5. This page lists the supported rendering properties. See :ref:`css_valuetypes` for more
  6. information about the value types for each.
  7. .. _css_properties_point:
  8. Point symbology
  9. ---------------
  10. .. list-table::
  11. :widths: 15 15 60 10
  12. :header-rows: 1
  13. - * Property
  14. * Type
  15. * Meaning
  16. * Accepts Expression?
  17. - * ``mark``
  18. * url, symbol
  19. * The image or well-known shape to render for points
  20. * yes
  21. - * ``mark-composite``
  22. * string
  23. * The composite mode to be used and the optional opacity separated with a comma. See the :ref:`full list of available modes <sld-extensions_composite-blend_modes>`.
  24. * no
  25. - * ``mark-mime``
  26. * string (`MIME Type <http://en.wikipedia.org/wiki/MIME>`_)
  27. * The type of the image referenced by a url()
  28. * No, defaults to 'image/jpeg'
  29. - * ``mark-geometry``
  30. * expression
  31. * An expression to use for the geometry when rendering features
  32. * yes
  33. - * ``mark-size``
  34. * length
  35. * The width to assume for the provided image. The height will be
  36. adjusted to preserve the source aspect ratio.
  37. * yes
  38. - * ``mark-rotation``
  39. * angle
  40. * A rotation to be applied (clockwise) to the mark image.
  41. * yes
  42. - * ``z-index``
  43. * integer
  44. * Controls the z ordering of output
  45. * no
  46. - * ``mark-label-obstacle``
  47. * boolean
  48. * If true the point symbol will be considered an obstacle for labels, no label will overlap it
  49. * no
  50. - * ``mark-anchor``
  51. * expression
  52. * The part of the mark to place over the point or middle of the polygon.
  53. This takes 2 values - x y where x=0 is the left edge of the label, x=1 is the right edge.
  54. y=0 is the bottom edge of the label, y=1 is the top edge. Specify 0.5 0.5 to centre a label.
  55. * yes
  56. - * ``mark-offset``
  57. * expression
  58. * This is for fine-tuning mark-anchor. x and y values specify pixel offsets to adjust the mark position.
  59. * yes
  60. .. _css_properties_line:
  61. Line symbology
  62. --------------
  63. .. list-table::
  64. :widths: 15 15 60 10
  65. :header-rows: 1
  66. - * Property
  67. * Type
  68. * Meaning
  69. * Accepts Expression?
  70. - * ``stroke``
  71. * color, url, symbol
  72. * The color, graphic, or well-known shape to use to stroke lines or outlines
  73. * yes
  74. - * ``stroke-composite``
  75. * string
  76. * The composite mode to be used and the optional opacity separated with a comma. See the :ref:`full list of available modes <sld-extensions_composite-blend_modes>`.
  77. * no
  78. - * ``stroke-geometry``
  79. * expression
  80. * An expression to use for the geometry when rendering features.
  81. * yes
  82. - * ``stroke-offset``
  83. * expression
  84. * Draws a parallel line using the specified distance, positive values offset left, negative right.
  85. * yes
  86. - * ``stroke-mime``
  87. * string (`MIME Type <http://en.wikipedia.org/wiki/MIME>`_)
  88. * The type of the image referenced by a url()
  89. * No, defaults to 'image/jpeg'
  90. - * ``stroke-opacity``
  91. * percentage
  92. * A value in the range of 0 (fully transparent) to 1.0 (fully opaque)
  93. * yes
  94. - * ``stroke-width``
  95. * length
  96. * The width to use for stroking the line.
  97. * yes
  98. - * ``stroke-size``
  99. * length
  100. * An image or symbol used for the stroke pattern will be stretched or
  101. squashed to this size before rendering. If this value differs from the
  102. stroke-width, the graphic will be repeated or clipped as needed.
  103. * yes
  104. - * ``stroke-rotation``
  105. * angle
  106. * A rotation to be applied (clockwise) to the stroke image. See also the
  107. stroke- repeat property.
  108. * yes
  109. - * ``stroke-linecap``
  110. * keyword: butt, square, round
  111. * The style to apply to the ends of lines drawn
  112. * yes
  113. - * ``stroke-linejoin``
  114. * keyword: miter, round, bevel
  115. * The style to apply to the "elbows" where segments of multi-line features meet.
  116. * yes
  117. - * ``stroke-dasharray``
  118. * list of lengths
  119. * The lengths of segments to use in a dashed line.
  120. * no
  121. - * ``stroke-dashoffset``
  122. * length
  123. * How far to offset the dash pattern from the ends of the lines.
  124. * yes|
  125. - * ``stroke-repeat``
  126. * keyword: repeat, stipple
  127. * How to use the provided graphic to paint the line. If repeat, then the
  128. graphic is repeatedly painted along the length of the line (rotated
  129. appropriately to match the line's direction). If stipple, then the line
  130. is treated as a polygon to be filled.
  131. * yes
  132. - * ``z-index``
  133. * integer
  134. * Controls the z ordering of output
  135. * no
  136. - * ``stroke-label-obstacle``
  137. * boolean
  138. * If true the line will be considered an obstacle for labels, no label will overlap it
  139. * no
  140. .. _css_properties_polygon:
  141. Polygon symbology
  142. -----------------
  143. .. list-table::
  144. :widths: 15 15 60 10
  145. :header-rows: 1
  146. - * Property
  147. * Type
  148. * Meaning
  149. * Accepts Expression?
  150. - * ``fill``
  151. * color, url, symbol
  152. * The color, graphic, or well-known shape to use to stroke lines or outlines
  153. * yes
  154. - * ``fill-composite``
  155. * string
  156. * The composite mode to be used and the optional opacity separated with a comma. See the :ref:`full list of available modes <sld-extensions_composite-blend_modes>`.
  157. * no
  158. - * ``fill-geometry``
  159. * expression
  160. * An expression to use for the geometry when rendering features.
  161. * yes
  162. - * ``fill-mime``
  163. * string (`MIME Type <http://en.wikipedia.org/wiki/MIME>`_)
  164. * The type of the image referenced by a url()
  165. * No, defaults to 'image/jpeg'
  166. - * ``fill-opacity``
  167. * percentage
  168. * A value in the range of 0 (fully transparent) to 1.0 (fully opaque)
  169. * yes
  170. - * ``fill-size``
  171. * length
  172. * The width to assume for the image or graphic provided.
  173. * yes
  174. - * ``fill-rotation``
  175. * angle
  176. * A rotation to be applied (clockwise) to the fill image.
  177. * yes
  178. - * ``z-index``
  179. * integer
  180. * Controls the z ordering of output
  181. * no
  182. - * ``fill-label-obstacle``
  183. * boolean
  184. * If true the polygon will be considered an obstacle for labels, no label will overlap it
  185. * no
  186. - * ``graphic-margin``
  187. * List of lengths
  188. * A list of 1 to 4 values, specifying the space between repeated graphics in a texture paint. One value is uniform spacing in all directions, two values are considered top/bottom and right/left, three values are considered top, right/left, bottom, four values are read as top,right,bottom,left.
  189. * no
  190. - * ``random``
  191. * none,grid,free
  192. * Activates random distribution of symbols in a texture fill tile. See :ref:`randomized` for details. Defaults to "none"
  193. * no
  194. - * ``random-seed``
  195. * integer number
  196. * The seed for the random generator. Defaults to 0
  197. * no
  198. - * ``random-rotation``
  199. * none/free
  200. * When set to "free" activates random rotation of the symbol in addition to random distribution. Defaults to "none"
  201. * no
  202. - * ``random-symbol-count``
  203. * positive integer number
  204. * Number of symbols to be placed in the texture fill tile. May not be respected due to location conflicts (no two symbols are allowed to overlap). Defaults to 16.
  205. * no
  206. - * ``random-tile-size``
  207. * positive integer number
  208. * Size of the texture paint tile that will be filled with the random symbols. Defaults to 256.
  209. * no
  210. .. _css_properties_text1:
  211. Text symbology (labelling) - part 1
  212. -----------------------------------
  213. .. list-table::
  214. :widths: 15 15 60 10
  215. :header-rows: 1
  216. - * Property
  217. * Type
  218. * Meaning
  219. * Accepts Expression?
  220. - * ``label``
  221. * string
  222. * The text to display as labels for features
  223. * yes
  224. - * ``label-geometry``
  225. * expression
  226. * An expression to use for the geometry when rendering features.
  227. * yes
  228. - * ``label-anchor``
  229. * expression
  230. * The part of the label to place over the point or middle of the polygon.
  231. This takes 2 values - x y where x=0 is the left edge of the label, x=1 is the right edge.
  232. y=0 is the bottom edge of the label, y=1 is the top edge. Specify 0.5 0.5 to centre a label.
  233. * yes
  234. - * ``label-offset``
  235. * expression
  236. * This is for fine-tuning label-anchor. x and y values specify pixels to adjust the label position. For lines, a single value will make the label be parallel to the line, at the given distance, while two values will force a point style placement, with the label painted horizontally at the center of the line (plus the given offsets)
  237. * yes
  238. - * ``label-rotation``
  239. * expression
  240. * Clockwise rotation of label in degrees.
  241. * yes
  242. - * ``label-z-index``
  243. * expression
  244. * Used to determine which labels are drawn on top of other labels. Lower z-indexes are drawn on top.
  245. * yes
  246. - * ``shield``
  247. * mark, symbol
  248. * A graphic to display behind the label, such as a highway shield.
  249. * yes
  250. - * ``shield-mime``
  251. * string (`MIME Type <http://en.wikipedia.org/wiki/MIME>`_)
  252. * The type of the image referenced by a url()
  253. * No, defaults to 'image/jpeg'
  254. - * ``shield-placement``
  255. * one of ``label``, ``independent``, defaults to ``label``
  256. * Placement of the shield relative to the label. The default is ``label``, meaning the shield
  257. will move along with the label and be centered with it (classic road shield). ``independent``
  258. places the shield independently instead, using its own anchor and offset properties. The latter
  259. is useful to build "point and label" compositions (e.g., city labels) so that the point won't
  260. show up if the label does not (as an alternative to a mark and label setup, where the mark
  261. will always show up).
  262. * no
  263. - * ``shield-anchor``
  264. * expression
  265. * The part of the shield to place over the point or middle of the polygon.
  266. This takes 2 values - x y where x=0 is the left edge of the label, x=1 is the right edge.
  267. y=0 is the bottom edge of the label, y=1 is the top edge. Specify 0.5 0.5 to centre a label.
  268. This property activates only if the ``shield-placement`` one is set to ``independent``, otherwise
  269. the shield will be centered with the label.
  270. * yes
  271. - * ``shield-offset``
  272. * expression
  273. * This is for fine-tuning shield-anchor. x and y values specify pixels to adjust the shield position.
  274. This property activates only if the ``shield-placement`` one is set to ``independent``, otherwise
  275. the shield will be centered with the label.
  276. * yes
  277. - * ``font-family``
  278. * string
  279. * The name of the font or font family to use for labels
  280. * yes
  281. - * ``font-fill``
  282. * fill
  283. * The fill to use when rendering fonts
  284. * yes
  285. - * ``font-style``
  286. * keyword: normal, italic, oblique
  287. * The style for the lettering
  288. * yes
  289. - * ``font-weight``
  290. * keyword: normal, bold
  291. * The weight for the lettering
  292. * yes
  293. - * ``font-size``
  294. * length
  295. * The size for the font to display.
  296. * yes
  297. - * ``font-opacity``
  298. * percentage
  299. * The opacity of the text, from 0 (fully transparent) to 1.0 (fully opaque).
  300. * yes
  301. - * ``halo-radius``
  302. * length
  303. * The size of a halo to display around the lettering (to enhance
  304. readability). This is *required* to activate the halo feature.
  305. * yes
  306. - * ``halo-color``
  307. * color
  308. * The color for the halo
  309. * yes
  310. - * ``halo-opacity``
  311. * percentage
  312. * The opacity of the halo, from 0 (fully transparent) to 1.0 (fully opaque).
  313. * yes
  314. - * ``label-padding``
  315. * length
  316. * The amount of 'padding' space to provide around labels. Labels will
  317. not be rendered closer together than this threshold. This is
  318. equivalent to the :ref:`spaceAround<labeling_space_around>` vendor parameter.
  319. * no
  320. - * ``label-group``
  321. * one of: ``true`` or ``false``
  322. * If true, the render will treat features with the same label text as a
  323. single feature for the purpose of labelling. This is equivalent to the
  324. :ref:`group<labeling_group>` vendor parameter.
  325. * no
  326. - * ``label-max-displacement``
  327. * length
  328. * If set, this is the maximum displacement that the renderer will apply
  329. to a label. Labels that need larger displacements to avoid collisions
  330. will simply be omitted. This is equivalent to the
  331. :ref:`maxDisplacement<labeling_max_displacement>` vendor parameter.
  332. * no
  333. .. _css_properties_text2:
  334. Text symbology (labelling) - part 2
  335. -----------------------------------
  336. .. list-table::
  337. :widths: 15 15 60 10
  338. :header-rows: 1
  339. - * Property
  340. * Type
  341. * Meaning
  342. * Accepts Expression?
  343. - * ``label-min-group-distance``
  344. * length
  345. * This is equivalent to the minGroupDistance vendor parameter in SLD.
  346. * no
  347. - * ``label-repeat``
  348. * length
  349. * If set, the renderer will repeat labels at this interval along a line.
  350. This is equivalent to the :ref:`repeat<labeling_repeat>` vendor parameter.
  351. * no
  352. - * ``label-all-group``
  353. * one of ``true`` or ``false``
  354. * when using grouping, whether to label only the longest line that could
  355. be built by merging the lines forming the group, or also the other
  356. ones. This is equivalent to the :ref:`allGroup<labeling_all_group>`
  357. vendor parameter.
  358. * no
  359. - * ``label-remove-overlaps``
  360. * one of ``true`` or ``false``
  361. * If enabled, the renderer will remove overlapping lines within a group
  362. to avoid duplicate labels. This is equivalent to the
  363. removeOverlaps vendor parameter.
  364. * no
  365. - * ``label-allow-overruns``
  366. * one of ``true`` or ``false``
  367. * Determines whether the renderer will show labels that are longer than
  368. the lines being labelled. This is equivalent to the allowOverrun
  369. vendor parameter.
  370. * no
  371. - * ``label-follow-line``
  372. * one of ``true`` or ``false``
  373. * If enabled, the render will curve labels to follow the lines being
  374. labelled. This is equivalent to the
  375. :ref:`followLine<labeling_follow_line>` vendor parameter.
  376. * no
  377. - * ``label-max-angle-delta``
  378. * one of ``true`` or ``false``
  379. * The maximum amount of curve allowed between two characters of a label;
  380. only applies when 'follow-line: true' is set. This is equivalent
  381. to the :ref:`maxAngleDelta<labeling_max_angle_delta>` vendor parameter.
  382. * no
  383. - * ``label-auto-wrap``
  384. * length
  385. * Labels will be wrapped to multiple lines if they exceed this length in
  386. pixels. This is equivalent to the :ref:`autoWrap<labeling_autowrap>`
  387. vendor parameter.
  388. * no
  389. - * ``label-force-ltr``
  390. * one of ``true`` or ``false``
  391. * By default, the renderer will flip labels whose normal orientation
  392. would cause them to be upside-down. Set this parameter to false if you
  393. are using some icon character label like an arrow to show a line's
  394. direction. This is equivalent to the
  395. :ref:`forceLeftToRight<labeling_force_left_to_right>` vendor parameter.
  396. * no
  397. - * ``label-conflict-resolution``
  398. * one of ``true`` or ``false``
  399. * Set this to false to disable label conflict resolution, allowing
  400. overlapping labels to be rendered. This is equivalent to the
  401. :ref:`conflictResolution<labeling_conflict_resolution>` vendor
  402. parameter.
  403. * no
  404. - * ``label-fit-goodness``
  405. * scale
  406. * The renderer will omit labels that fall below this "match quality"
  407. score. The scoring rules differ for each geometry type. This is
  408. equivalent to the :ref:`goodnessOfFit<labeling_goodness_of_fit>` vendor
  409. parameter.
  410. * no
  411. - * ``label-priority``
  412. * expression
  413. * Specifies an expression to use in determining which
  414. features to prefer if there are labelling conflicts. This is equivalent
  415. to the :ref:`Priority<labeling_priority>` SLD extension.
  416. * yes
  417. .. _css_properties_text3:
  418. Text symbology (labelling) - part 3
  419. -----------------------------------
  420. .. list-table::
  421. :widths: 15 15 60 10
  422. :header-rows: 1
  423. - * Property
  424. * Type
  425. * Meaning
  426. * Accepts Expression?
  427. - * ``shield-resize``
  428. * string, one of ``none``, ``stretch``, or ``proportional``
  429. * Specifies a mode for resizing label graphics (such as
  430. highway shields) to fit the text of the label. The default mode,
  431. 'none', never modifies the label graphic. In ``stretch`` mode,
  432. GeoServer will resize the graphic to exactly surround the label text,
  433. possibly modifying the image's aspect ratio. In ``proportional`` mode,
  434. GeoServer will expand the image to be large enough to surround the text
  435. while preserving its original aspect ratio.
  436. * none
  437. - * ``shield-margin``
  438. * list of lengths, one to four elements long.
  439. * Specifies an extra margin (in pixels) to be applied to the label text when calculating label dimensions for use with the ``shield-resize`` option. Similar to the ``margin`` shorthand property in CSS for HTML, its interpretation varies depending on how many margin values are provided: 1 = use that margin length on all sides of the label 2 = use the first for top & bottom margins and the second for left & right margins. 3 = use the first for the top margin, second for left & right margins, third for the bottom margin. 4 = use the first for the top margin, second for the right margin, third for the bottom margin, and fourth for the left margin.
  440. * none
  441. - * ``label-underline-text``
  442. * one of ``true`` or ``false``
  443. * If enabled, the renderer will underline labels. This is equivalent to the :ref:`underlineText <labeling_underline_text>` vendor parameter.
  444. * no
  445. - * ``label-strikethrough-text``
  446. * one of ``true`` or ``false``
  447. * If enabled, the renderer will strikethrough labels. This is equivalent to the :ref:`strikethroughText <labeling_strikethrough_text>` vendor parameter.
  448. * no
  449. - * ``label-char-spacing``
  450. * an amount of pixels, can be negative
  451. * If present, expands or shrinks the space between subsequent characters in a label according to the value specified
  452. * no
  453. - * ``label-word-spacing``
  454. * an amount of pixels, must be zero or positive
  455. * If present, expands the space between subsequent words in a label according to the value specified
  456. * no
  457. .. _css_properties_raster:
  458. Raster symbology
  459. ----------------
  460. .. list-table::
  461. :widths: 15 15 60 10
  462. :header-rows: 1
  463. - * Property
  464. * Type
  465. * Meaning
  466. * Accepts Expression?
  467. - * ``raster-channels``
  468. * string
  469. * The list of raster channels to be used in the output. It can be "auto" to make the renderer choose the best course of action, or a list of band numbers, a single one will generate a gray image, three will generate an RGB one, four will generate a RGBA one. E.g., "1 3 7" to choose the first, third and seventh band of the input raster to make an RGB image
  470. * no
  471. - * ``raster-composite``
  472. * string
  473. * The composite mode to be used and the optional opacity separated with a comma. See the :ref:`full list of available modes <sld-extensions_composite-blend_modes>`.
  474. * no
  475. - * ``raster-geometry``
  476. * expression
  477. * The attribute containing the raster to be painted. Normally not needed, but it would work if you had a custom vector data source that contains a GridCoverage attribute, in order to select it
  478. * yes
  479. - * ``raster-opacity``
  480. * floating point
  481. * A value comprised between 0 and 1, 0 meaning completely transparent, 1 meaning completely opaque. This controls the whole raster transparency.
  482. * no
  483. - * ``raster-contrast-enhancement``
  484. * string
  485. * Allows to stretch the range of data/colors in order to enhance tiny differences. Possible values are 'normalize', 'histogram' and 'none'
  486. * no
  487. - * ``raster-gamma``
  488. * floating point
  489. * Gamma adjustment for the output raster
  490. * no
  491. - * ``raster-z-index``
  492. * integer
  493. * Controls the z ordering of the raster output
  494. * no
  495. - * ``raster-color-map``
  496. * string
  497. * Applies a color map to single banded input. The contents are a space separate list of ``color-map-entry(color, value)`` (opacity assumed to be 1 and label will have a null value), or ``color-map-entry(color, value, opacity, label)``. The values must be provided in increasing order.
  498. * no
  499. - * ``raster-color-map-type``
  500. * string
  501. * Controls how the color map entries are interpreted, the possible values are "ramp", "intervals" and "values", with ramp being the default if no "raster-color-map-type" is provided. The default "ramp" behavior is to linearly interpolate color between the provided values, and assign the lowest color to all values below the lowest value, and the highest color to all values above the highest value. The "intervals" behavior instead assigns solid colors between values, whilst "values" only assigns colors to the specified values, every other value in the raster is not painted at all
  502. * no
  503. - * ``raster-color-map-extended``
  504. * string
  505. * Enables "extended color map" mode, which makes the color map use 65536 entries instead of 256, and thus allows for a more precise color mapping. The default is "false", which means the color map is limited to 256 entries (if more than 256 colors are used, the extended color map mode is enabled automatically). This property is ignored if the "raster-color-map" property is not provided.
  506. * no
  507. - * ``raster-label-fi``
  508. * string
  509. * Controls if and how color map entry labels are included, as attributes, in the GetFeatureInfo output. Valid values are ``add``, adding the labels as extra attributes, ``replace``, using the labels in place of the actual value, or ``none`` (the default) which does not include the labels in the output.
  510. * no
  511. - * ``raster-label-name``
  512. * string
  513. * If color map entry labels are included in the GetFeatureInfo output, this property controls then name of the attribute that will contain them.
  514. * no
  515. .. _css_properties_shared:
  516. Shared
  517. ------
  518. .. list-table::
  519. :widths: 15 15 60 10
  520. :header-rows: 1
  521. - * Property
  522. * Type
  523. * Meaning
  524. * Accepts Expression?
  525. - * ``composite``
  526. * string
  527. * The composite mode to be used and the optional opacity separated with a comma. See the :ref:`full list of available modes <sld-extensions_composite-blend_modes>`.
  528. * no
  529. - * ``composite-base``
  530. * one of ``true`` or ``false``
  531. * This will tell the rendering engine to use that FeatureTypeStyle as the destination, and will compose all subsequent FeatureTypeStyle/Layers on top of it, until another base is found.
  532. * no
  533. - * ``geometry``
  534. * expression
  535. * An expression to use for the geometry when rendering features. This
  536. provides a geometry for all types of symbology, but can be overridden
  537. by the symbol-specific geometry properties.
  538. * yes
  539. - * ``sort-by``
  540. * string
  541. * A comma separated list of sorting directives, ``att1 A|D, att2 A|D, ...`` where ``att?`` are attribute names,
  542. and ``A`` or ``D`` are an optional direction specification,
  543. ``A`` is ascending, ``D`` is descending.
  544. Determines the loading, and thus painting, order of the features
  545. * no
  546. - * ``sort-by-group``
  547. * string
  548. * Rules with the different z-index but same sort-by-group id have their features sorted
  549. as a single group. Useful to z-order across layers or across different feature groups, like
  550. roads and rails, especially when using z-index to support casing
  551. * no
  552. - * ``transform``
  553. * function
  554. * Applies a rendering transformation on the current level. The function syntax is ``txName(key1:value1,key1:value2)``. Values can be single ones, or space separated lists.
  555. * no
  556. .. _css_properties_symbol:
  557. Symbol properties
  558. -----------------
  559. These properties are applied only when styling built-in symbols. See
  560. :ref:`css_styledmarks` for details.
  561. .. list-table::
  562. :widths: 15 15 60 10
  563. :header-rows: 1
  564. - * Property
  565. * Type
  566. * Meaning
  567. * Accepts Expression?
  568. - * ``size``
  569. * length
  570. * The size at which to render the symbol.
  571. * yes
  572. - * ``rotation``
  573. * angle
  574. * An angle through which to rotate the symbol.
  575. * yes