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

171
Visualizações
hacer que el tamaño de fuente del texto HTML5 Canvas se base en el tamaño del texto en la página en lugar de la resolución de Canvas

En el proyecto tengo el siguiente Textarea:

 <textarea ref={textAreaRef} className='relative z-30 w-11/12 h-full font-sans text-xs bg-transparent outline-none resize-none ' />

y lienzo:

 <canvas id={'canvas'} ref={boardRef} })} onMouseDown={onMouseDown} onMouseUp={onMouseUp} onMouseMove={throttle(onMouseMove, 15)} onTouchStart={onMouseDown} onTouchEnd={onMouseUp} onMouseLeave={onPaletteLeave} onTouchCancel={onMouseUp} onTouchMove={throttle(onMouseMove, 15)} width={1600} height={900} style={isLayer ? canvasStyle : null} />

El área de texto puede contener texto con un tamaño de fuente específico en píxeles que cambia según la entrada del usuario.

El problema es que si comparamos el mismo texto con las mismas propiedades en el área de texto y en el lienzo, el texto impreso en el lienzo es claramente más pequeño que los que se encuentran en el área de texto.

Traté de usar la relación de dimensión de la página para tratar de escalar el texto resultante del lienzo, pero no dio buenos resultados:

 function ratioSize(size) { const canvasRatio = currentCanvas.current.clientWidth / currentCanvas.current.clientHeight; const pageRatio = window.screen.width / window.screen.height; return (pageRatio * size) / canvasRatio; } }
about 4 years ago · Juan Pablo Isaza
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