2009-04-27 5 views
2

캔버스 요소는 불행히도 텍스트를 잘 처리하지 못합니다. 여러 가지 방법이 있지만 (예 : http://canvaspaint.org/blog/2006/12/rendering-text/ 참조) 대부분 해킹과 같이 보입니다. 내가 할 수있는 것은 크로스 플랫폼이며 내 글꼴을 내가 원하는 방식으로 만들 수있는 가장 융통성이 있습니까?HTML 캔버스 요소에 텍스트를 그리는 가장 좋은 방법은 무엇입니까?

+1

그 링크가 오래되었고 그것이 가리키는 스펙이 업데이트되었습니다. 텍스트 그리기 API 계정. 비슷하지만 도움이되는 질문은 http://stackoverflow.com/questions/719848/how-do-you-draw-text-on-a-canvas-tag-in-safari –

+0

fillText() 만 참조하십시오. 사파리와 파이어 폭스의 베타 버전 (다른 브라우저는 모름)에서 지원되기 때문에 매우 유용하지는 않습니다. 내 링크에서 언급 된 다양한 해킹은 대부분 교차 플랫폼입니다. – swampsjohn

답변

2

typeface.js, http://typeface.neocracy.org을 보았습니까? 나는 그것이 글씨 쓰기에 꽤 견고하다고 들었다. 여기에 자신의 사이트에서 다음과 같습니다.

"typeface.js는 HTML 문서에서 텍스트를 그릴 브라우저 '벡터 드로잉 capabilites를 사용하는 좋은 잠시 동안, 브라우저 벡터 드로잉에 대한 지원이 있었다 - 파이어 폭스, 사파리, 오페라는 <canvas> 요소를 지원 (SVG는 물론), IE는 VML을 지원합니다.

typeface.js 프로젝트에는 글꼴 변환을위한 perl 모듈과 브라우저에서 그리기위한 javascript 라이브러리의 두 가지 구성 요소가 있습니다. 트루 타입 글꼴을 만들고 JSON 형식으로 데이터를 작성한 다음 자바 스크립트 라이브러리는 HTML 문서를 가로 질러 <canvas> 또는 VML을 사용하여 글자를 그립니다.

<canvas>을 지원하는 브라우저에서는 텍스트를 선택할 수 있지만 신앙을 가져야합니다. 선택한대로 의견이 없으며 작동 중임을 알리는 강조 표시가 없습니다. 미래 연구는 강조와 텍스트를 선택하는 더 나은, 크로스 브라우저 지원을 구현하는 것을 목표로한다 "(http://typeface.neocracy.org/usage.html에서 인용)

관련 문제