| 1 | [[TranslatedPages(revision=13)]] |
| 2 | = MapCSS Lernilo = |
| 3 | |
| 4 | === Ekzemplo 1 === |
| 5 | |
| 6 | {{{#!html |
| 7 | <table width="100%"> |
| 8 | <tr> |
| 9 | <td valign="top"> |
| 10 | <pre class="wiki"> |
| 11 | node[amenity=restaurant] |
| 12 | { |
| 13 | icon-image: "presets/food/restaurant.svg"; |
| 14 | text: auto; |
| 15 | } |
| 16 | </pre> |
| 17 | </td> |
| 18 | <td align="right" valign="top" width="100%"><img src="/raw-attachment/wiki/Help/Styles/MapCSSTutorial/example01.png" /></td> |
| 19 | </tr> |
| 20 | </table> |
| 21 | }}} |
| 22 | Ĉi tio desegnas restoracian ikonon kaj tekstan etikedon por ĉiu nodo, kiu estas markita kun `amenity=restaurant`. La bildo povas esti specifita en unu el la sekvaj formoj: |
| 23 | * absoluta vojo |
| 24 | * URL |
| 25 | * vojo rilata al la nuna *.mapcss dosiero |
| 26 | * rilata vojo, kiu referencas al enkonstruita bildo (vidu Ekzemplon 1). La `josm-tested.jar` dosiero estas simpla zip-arkivo; vi povas elpaki ĝin kaj uzi ĉiujn dosierojn el la `images` dosierujo. |
| 27 | La deklaro **`text: auto;`** diras al JOSM aŭtomate derivi la tekston por la etikedo. Ĉe la tempo de skribado, la sekvaj etikedoj estas serĉitaj kaj la unua trovita estos uzata: "`name:`"+''<LANG>'', "`name`", "`int_name`", "`ref`", "`operator`", "`brand`" kaj "`addr:housenumber`". Vi ankaŭ povas elekti specifan etikedon, ekzemple **`text: "cuisine";`**. |
| 28 | |
| 29 | === Ekzemplo 2 === |
| 30 | {{{#!html |
| 31 | <table width="100%"> |
| 32 | <tr> |
| 33 | <td valign="top"> |
| 34 | <pre class="wiki"> |
| 35 | way[highway=residential] |
| 36 | { |
| 37 | width: 4; |
| 38 | color: lightgray; |
| 39 | } |
| 40 | </pre> |
| 41 | </td> |
| 42 | <td align="right" valign="top" width="100%"><img src="/raw-attachment/wiki/Help/Styles/MapCSSTutorial/example02.png" /></td> |
| 43 | </tr> |
| 44 | </table> |
| 45 | }}} |
| 46 | Ĉi tie ni havas ĉiujn loĝejajn vojojn desegnitajn en helgriza koloro kaj kun linia larĝo de 4 rastrumeroj. Koloro povas esti donita en unu el la sekvaj formatoj: |
| 47 | * nomita koloro kiel trovebla en [http://www.w3.org/TR/css3-color/#svg-color ĉi tiu] listo |
| 48 | * html-stilo: **`#ff0000`** |
| 49 | * **`rgb(0.0, 1.0 , 0.2)`** - rgb valoro kun argumentoj de 0.0 ĝis 1.0 |
| 50 | |
| 51 | === Ekzemplo 3 === |
| 52 | {{{#!html |
| 53 | <table width="100%"> |
| 54 | <tr> |
| 55 | <td valign="top"> |
| 56 | <pre class="wiki"> |
| 57 | way[highway=living_street] |
| 58 | { |
| 59 | width: 7; |
| 60 | color: #c0c0c0; |
| 61 | dashes: 15,9; |
| 62 | dashes-background-color: #00ff00; |
| 63 | |
| 64 | text: "name"; |
| 65 | text-position: line; |
| 66 | text-offset: 9; |
| 67 | font-size: 12; |
| 68 | font-color: lightyellow; |
| 69 | } |
| 70 | </pre> |
| 71 | </td> |
| 72 | <td align="right" valign="top" width="100%"><img src="/raw-attachment/wiki/Help/Styles/MapCSSTutorial/example03.png" /></td> |
| 73 | </tr> |
| 74 | </table> |
| 75 | }}} |
| 76 | En la unua parto de la deklaroj, ni difinas strekan ŝablonon de griza kaj verda. Forlasu la `dashes-background-color` por montri interrompitan linion sen koloro inter la strekoj. |
| 77 | |
| 78 | En la dua parto, la nomo de la strato (**`text: "name";`**) estos montrita laŭ la linio (**`text-position: line;`**) kun vertikala deŝovo de 9 rastrumeroj. Deŝovo de 0 metus la tekston sur la linion. |
| 79 | |
| 80 | === Ekzemplo 4 === |
| 81 | {{{#!html |
| 82 | <table width="100%"> |
| 83 | <tr> |
| 84 | <td valign="top"> |
| 85 | <pre class="wiki"> |
| 86 | area[building] |
| 87 | { |
| 88 | fill-color: orange; |
| 89 | } |
| 90 | </pre> |
| 91 | </td> |
| 92 | <td align="right" valign="top" width="100%"><img src="/raw-attachment/wiki/Help/Styles/MapCSSTutorial/example04.png" /></td> |
| 93 | </tr> |
| 94 | </table> |
| 95 | }}} |
| 96 | |
| 97 | La **`area`** tipo-selektilo agas sur vojoj kaj multipoligonaj rilatoj. La kondiĉo **`[building]`** aplikiĝas al ĉiuj objektoj, kiuj havas la ŝlosilon `building` agorditan al iu ajn valoro. Notu, ke la konturo de la konstruaĵo estas ankaŭ pentrita, kvankam ni ne specifis iujn ajn liniajn propraĵojn. Tio estas ĉar JOSM ĉiam desegnos almenaŭ unu linian elementon por ĉiu vojo. Se neniuj liniaj propraĵoj estas trovitaj, defaŭlta linia elemento estas generita. |
| 98 | |
| 99 | === Ekzemplo 5 === |
| 100 | |
| 101 | {{{#!html |
| 102 | <table width="100%"> |
| 103 | <tr> |
| 104 | <td valign="top"> |
| 105 | <pre class="wiki"> |
| 106 | area[landuse=forest], area[natural=wood] |
| 107 | { |
| 108 | fill-image: "http://trac.openstreetmap.org/export/25265/applications/rendering/mapnik/symbols/forest.png"; |
| 109 | fill-opacity: 0.8; |
| 110 | |
| 111 | text: auto; |
| 112 | text-position: center; |
| 113 | } |
| 114 | </pre> |
| 115 | </td> |
| 116 | <td align="right" valign="top" width="100%"><img src="/raw-attachment/wiki/Help/Styles/MapCSSTutorial/example05.png" /></td> |
| 117 | </tr> |
| 118 | </table> |
| 119 | }}} |
| 120 | |
| 121 | Ĉi tio montras, kiel vi povas listigi multoblajn selektilojn por unu regulo. Ni plenigas la areon kun ŝablono, se ĝi estas markita kun `landuse=forest` aŭ `natural=wood`. La opakeco estas agordita al 0.8, kie 1.0 signifas opakan kaj 0.0 estas tute travidebla. Vi povas agordi opakecon, kiam ajn koloro aŭ bildo estas difinita. Ekzemple `icon-opacity` por `icon-image` kaj `opacity` por `color`. Etikedo por la objekto estas metita en la centro de la areo. |
| 122 | |
| 123 | |
| 124 | == Vidu ankaŭ == |
| 125 | * la [wikitr:/Help/Styles/MapCSSImplementation JOSM implementada referenco] listigas la subtenatajn mapcss-trajtojn pli detale. |
| 126 | * la [wikitr:/Help/Validator/MapCSSTagChecker etikedkontrolilo] uzas multajn el ĉi tiuj trajtoj. |