Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

234
Visualizações
Líneas SVG con texto en la parte superior

Tengo una línea SVG y se mueve a través de js y quiero colocar un texto a lo largo de ella, así:
ingrese la descripción de la imagen aquí

y cada vez que la línea se mueve, el texto debería moverse automáticamente junto con ella mientras permanece siempre en el centro de la línea sin importar la longitud

Intenté un enfoque ingenuo como este, pero obviamente no funcionó:

 <svg height="210" width="500"> <line x1="0" y1="0" x2="200" y2="200" style="stroke:rgb(255,0,0);stroke-width:2"> Hello there </line> </svg>

¿es posible tal cosa o tendré que programar el texto para que se mueva también en javascript?

about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

cada vez que la línea se mueve, el texto debería moverse automáticamente junto con ella

Creo que la forma más sencilla de hacerlo sería:

  • agrupa la <line> y el <text> juntos usando un <g> ; y entonces
  • transición o anime el elemento <g> con su javascript.

NB : he usado una animación CSS en lugar de javascript en el ejemplo a continuación, pero el principio se mantiene.


Ejemplo de trabajo:

 svg { width: 500px; height: 210px; } g { transform-origin: 100%; animation: rotateGroup 3s linear infinite; } line { stroke: rgb(255,0,0); stroke-width: 4px; } text { fill: rgb(255, 0, 0); font-size: 36px; } @keyframes rotateGroup { 0% {transform: rotate(0deg);} 100% {transform: rotate(360deg);} }
 <svg viewBox="0 0 105 250"> <g> <line x1="0" y1="185" x2="200" y2="185" /> <text x="22" y="176">Hello there</text> </g> </svg>


Nota adicional:

Mencionaste:

mientras permanece siempre en el centro de la línea sin importar la longitud

Para lograr esto, puede volver a calcular el valor x de <text> cada vez que vuelva a calcular los valores x1 y x2 de <line> .

about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda