Estoy buscando una manera de mostrar texto en el mapa de folleto usando marcadores o cualquier otra cosa sin mostrar ningún ícono. Quiero mostrar solo texto y poder estilizarlo y rotarlo ... ¿Alguna sugerencia?
Estoy buscando una manera de mostrar texto en el mapa de folleto usando marcadores o cualquier otra cosa sin mostrar ningún ícono. Quiero mostrar solo texto y poder estilizarlo y rotarlo ... ¿Alguna sugerencia?
Respuestas:
Resolví mi problema usando la función Leaflet L.DivIcon que representa un ícono liviano para marcadores que usa un elemento div simple en lugar de una imagen ... Estos marcadores tienen un html y una opción className que me permite crear etiquetas con CSS controlado estilos ...
Actualización para Leaflet 1.0: a partir de Leaflet 1.0, el complemento Leaflet.label está depracado, ya que se ha incluido con el núcleo de Leaflet como L.Tooltip
. No es necesario incluir el script de origen, y la sintaxis ha cambiado ligeramente. Uso de la muestra:
var marker = new L.marker([39.5, -77.3], { opacity: 0.01 }); //opacity may be set to zero
marker.bindTooltip("My Label", {permanent: true, className: "my-label", offset: [0, 0] });
marker.addTo(map);
El estilo CSS se puede aplicar a la clase de la misma manera que antes.
.my-label {
position: absolute;
width:1000px;
font-size:20px;
}
También parece que la opacidad del marcador se puede establecer completamente en 0.
<script src="scripts/leaflet.label.js"></script>
Con el complemento de etiqueta de folleto, las etiquetas están directamente vinculadas a los marcadores, pero puede establecer la opacidad del marcador en casi cero para que solo la etiqueta sea visible. (Si establece la opacidad del marcador en 0, la etiqueta asociada también desaparecerá).
var marker = new L.marker([39.5, -77.3], { opacity: 0.01 });
marker.bindLabel("My Label", {noHide: true, className: "my-label", offset: [0, 0] });
marker.addTo(map);
Luego puede usar CSS para diseñar sus etiquetas como mejor le parezca:
.my-label {
position: absolute;
width:1000px;
font-size:20px;
}
L.Tooltip
dentro de onEachFeature, aparece el error: "Error de tipo no capturado: no se pudo ejecutar 'appendChild' en 'Nodo': el parámetro 1 no es del tipo 'Nodo'".
.toString()
al final. marker.bindTooltip(feature.properties['prabhag_number'].toString(), {...
Puede comenzar aquí con este complemento de folleto . Probablemente cree o edite un marcador a su gusto. ¿El texto proviene de atributos de características?
marker.bindTooltip("text here", { permanent: true, offset: [0, 12] });
Esto funciona para mi