2011-08-22 5 views
6

Webbings 글리프를 사용하는 정상적으로 성능이 저하되는 코드를 작성하고 싶습니다. 아마도 Webdings는 universally available across platforms 인 글꼴 중 하나이지만 Webdings가없는 이상한 이유가있을 경우 브라우저가 기본 글꼴로 표시하려고하지 않습니다.글꼴을 사용할 수없는 경우 텍스트를 숨기는 방법이 있습니까?

이렇게 할 방법이 있습니까?

+1

대신에'@ font-face'를 사용하여 대체 글꼴을 포함해야합니다. 텍스트를 숨기는 것보다 훨씬 낫습니다. 모든 브라우저에서 작동합니다. – thirtydot

+0

당신이 맞습니다. 그것이 정말로 질문의 정신에서 가장 좋은 해결책입니다. 이것을 대답으로 적어두면 받아 들일 것입니다. –

답변

2

... 당신이 이런 식으로 사용할 수 있도록이 글꼴에 대한 권한이 가정하는 경우 나도 몰라, 저작권에 관한 것 댓글 :

대신에 @font-face을 사용하여 대체 글꼴을 포함해야합니다. 텍스트를 숨기는 것보다 훨씬 낫고 "모든 브라우저"에서 작동합니다.

나는 @font-face을 처리하기 위해 Font Squirrel Generator을 사용하는 것을 선호합니다. 매우 쉽습니다.

1

플래시 만 있으면 컴퓨터에 설치된 글꼴을 감지 할 수 있습니다. Flash에서 글꼴 목록을 가져 와서이 목록을 JavaScript에 전달하는 방법을 보여주는 블로그 게시물이 있습니다. 자바 스크립트에서이 있으면, 텍스트를 표시/숨기기가 용이해야한다 :

http://rel.me/2008/06/26/font-detection-with-javascript-and-flash/

+0

흥미로운 대답과 좋은 알기. –

2

당신은 jQuery를 함께 같은 것을 할 수 있습니다 :

$('p').each(function(){ 
    var s = $(this).css('font-family'); 
    if(s != "verdana"){ 
     $(this).hide(); 
    }  
}); 

예 : http://jsfiddle.net/jasongennaro/GXjvK/

따라서 요소의 글꼴을 확인하십시오. 그것이 없으면 숨 깁니다.

+3

그래도 작동하지 않습니다. CSS를 Verdana로 설정하고 Verdana를 실제로 사용할 수없는 경우 jQuery는 여전히 CSS를 "Verdana"로보고 할 것입니다. –

+0

이 스크립트는 스타일 시트에서 읽습니다. 이는 글꼴의 가용성을 나타내는 것은 아닙니다. –

1

JavaScript에서 글꼴을 사용할 수 있는지 테스트 할 수있는 기본 방법이 없습니다.

그러나 lalit은 "각 문자가 다른 글꼴로 다르게 표시되기 때문에 각기 다른 글꼴은 같은 글꼴 크기의 동일한 문자열에 대해 서로 다른 너비와 높이를 사용합니다".

그는 좋은 기사를 작성하고, 그냥이해야 할 코드의 괜찮은 작품을 만들었습니다 : http://www.lalit.org/lab/javascript-css-font-detect/

1

당신은 모든 사람이 CSS3 호환 갖는 의미 웹 사이트에 글꼴이하는 CSS3 속성을 사용할 수 있습니다 웹 브라우저는 원하는대로 "텍스트"를 볼 것입니다. 나는에 말했듯이

@font-face { 
font-family: myFirstFont; /* in your case webdings */ 
src: url('Sansation_Light.ttf'), 
url('Sansation_Light.eot') format("opentype"); /* IE */ 
} 

내 유일한 집착은 이제

관련 문제