<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="transparent">
    <p>Le 21/06/2017 à 12:43, Christian Quest - <a class="moz-txt-link-abbreviated" href="mailto:cquest@openstreetmap.fr">cquest@openstreetmap.fr</a>
      a écrit :<br>
    </p>
    <blockquote type="cite"
      cite="mid:811b7417-47e5-8919-f0ce-de72a003972e@openstreetmap.fr">Une
      carte papier a deux différences principales à mon avis par rapport
      à une carte en ligne:
      <br>
      <br>
       (...)
      <br>
      <br>
      - on travaille sur une emprise limitée (ça simplifie)
      <br>
    </blockquote>
    Mais dans un cadre limité (ça complique).<br>
    Car si sur une tuile tu peux couper un texte, par exemple mettre
    l'étiquette Brest à l'ouest de la ville et Strasbourg au nord (pour
    mettre Kehl au sud), sur une carte papier de la France tu ne peux le
    faire (sauf à autoriser l'utilisation des marges le cas échéant).<br>
    Sur les cartes nautiques marines électroniques, il faut que les
    données soient visibles à l'écran mais il n'y a pas à ma
    connaissance de feuille de style qui le fasse (déjà pour les règles
    d'affichages ce sont des procédures style ordres à des imprimantes).<br>
    World Wind (qui existe en Java comme en Javascript) a de bons
    systèmes de placements de labels.<br>
    Là encore pas vraiment de la feuille de style et peut-être quelque
    chose à ajouter à Mapnik pour styler comme ça (*) mais je connais
    trop peu Mapnik pour être affirmatif.<br>
    <br>
    Quand une feuille de style affichera l"Avenue Maréchal Jean de
    Lattre de Tassigny" sur une rue courte et tordue (par exemple Av. M<sup>al</sup>
    T<sup>gny</sup>)...<br>
    Au niveau de zoom 19, le rendu <a moz-do-not-send="true"
      href="http://www.openstreetmap.org/query?lat=47.88031&lon=6.76335">par
      défaut</a> comme le rendu <a moz-do-not-send="true"
href="http://layers.openstreetmap.fr/?lat=47.88031&lon=6.76335&zoom=19">OSM
      FR</a> n'arrive pas à afficher une "simple" <a
      moz-do-not-send="true"
href="http://www.openstreetmap.org/query?lat=47.88031&lon=6.76335#map=19/47.88040/6.76338">Place
      Maréchal de Lattre de Tassigny</a>. Le rendu <a
      moz-do-not-send="true"
href="http://layers.openstreetmap.fr/?lat=47.88031&lon=6.76335&zoom=19&layers=000B0FFFFFFFFFFFFFFFFFFFFFF">HOT</a>
    y arrive.<br>
    <br>
    Si tu as un plan avec l'index des rues et un rendu style OSM, ne pas
    avoir le nom de la place sur la carte mais dans l'index des rues un
    "Pl. Maréchal de Lattre de Tassigny" en disons M9, et que tu vois un
    mémorial Maréchal de Lattre de Tassigny au milieu d'une place dans
    le carreau M9, tu vas deviner.<br>
    C'est un peu l'exemple de JB avec ses deux parkings qu'il rassemble
    graphiquement et déplace : savoir qu'il y a un parking à côté du
    belvédère, c'est ce qui intéresse l'usager. Sur place il verra bien
    où est exactement le parking (ici les parkings).<br>
    <br>
    Ce genre de truc (ne pas afficher des icônes ou des textes) en
    fonction du contexte ça semble difficilement automatisable.<br>
    Par contre j'aime l'idée d'avoir une liste d'objets pas affichés (ou
    partiellement affichés) proposés à un traitement ultérieur.<br>
    Et la possibilité de se rappeler les recettes de cuisine (comme JB
    le propose), par exemple pour afficher des traits de rappels en <a
      moz-do-not-send="true"
href="https://gisunchained.wordpress.com/2015/01/12/etiquetas-com-guias-em-qgis-e-postgis-labels-leading-lines-with-qgis-and-postgis/">semi
      automatique via QGis et Postgres</a>.<br>
    <br>
    Certaines abréviations peuvent être utilisées mais pas partout (Rue
    de l'Avenue peut devenir r. de l'Avenue pas Rue de l'Av.) et on a la
    contrainte de la langue (Rue * en français = r. * si nécessaire, pas
    dans d'autres langues).<br>
    <br>
    (*) de mémoire le système calcule l'empreinte (ou des empreintes
    possibles : repliement de lignes ou pas suivant les besoins) et les
    positions possibles. Par exemple pour une ville le nom doit être
    idéalement au nord mais si besoin on peut ne pas centrer, ou le
    placer au sud, à l'est ou à l'ouest.<br>
    Voir mettre des traits de report pour signaler que le texte est
    déplacé par rapport à l'icône (ou le polygone) ? C'est un calcul de
    masque.<br>
    Donc il place les icônes (dans un ordre prédéterminé) puis les
    différentes étiquettes en acceptant plus ou moins les recouvrements
    (si le texte est détouré par un halo blanc semi transparent, on peut
    par exemple avoir un P de Parking dans le halo mais pas un texte) et
    en acceptant un certain nombre de positions possibles.<br>
    <br>
    Mettons que l'on affiche Strasbourg au centre. Quand on veut
    afficher Kehl <a moz-do-not-send="true"
      href="www.openstreetmap.org/#map=9/48.5675/7.8662">ça ne passe pas</a>
    (au centre, ou aux 3 points cardinaux). L'algo essaye alors de
    placer Strasbourg à l'ouest. Ça passe donc on a une ville de plus
    d'affichée et sur une carte de passage frontière, les deux villes
    sont importante.<br>
    <br>
    Pour les traits reliant les étiquettes, sous QGis il y a le greffon
    <a moz-do-not-send="true"
      href="https://georezo.net/forum/viewtopic.php?id=98277">"Easy
      custom labelling"</a>. Je n'ai pas testé.<br>
    Sinon sur QGis il y a pas mal d'infos dans la <a
      moz-do-not-send="true"
      href="http://planet.qgis.org/planet/tag/labeling/">doc</a> autant
    sur des greffons que sur la bonne utilisation de l'existant.<br>
    <br>
    Bon, je relève les copies dans 4h, c'est l'époque ;-)<br>
    <br>
    Jean-Yvon<br>
  </body>
</html>