2012-03-22 3 views
2

Fabric.js와 연결된 캔버스 외부에 Cufon 라이브러리를 사용하려고하면 여기에 문제가 있습니다. 응용 프로그램에서 사용 가능한 글꼴을 표시 할 텍스트 글꼴 선택기를 만들려고합니다. 선택기는 글꼴 이름을 Photoshop 등의 글꼴 샘플로 표시합니다. 그래서 샘플 이름을 만들기 위해 Cufon을 사용하여 글꼴 스타일을 바꾸려고했지만 Fabric.js는 캔버스 외부에서 사용할 수 없습니다. Fabric.js는 Cufon이 캔버스 내부에서 대체하는 텍스트를 보여줍니다. 누군가 이것을 해결하는 방법을 알고 있습니까? 감사.Fabric.js와 연결된 캔버스 외부에서 Cufon 사용

답변

1

Fabf.js 외부에서 Cufon을 사용하는 방법을 찾았지만 실제로는 더러운 마약입니다.

먼저 github에서 다른 cufon.js를 페이지에 추가했습니다. 그런 다음 편집기에서 열어서 'Cufon'을 'CufonBase'로 자동 이름 변경했습니다.

내가 Cufon 위해 두 번 호출 registerFont에 wraper 기능을 작성한

및 CufonBase는 :

var makeWrap = function(fn1, fn2){ 
    return function(){ 
    try{ 
     fn2.apply(this, arguments); 
     return fn1.apply(this, arguments); 
    }catch(ex){ 
     ErrorHandler.Exception(ex); 
    } 
    }; 
}; 

Cufon.registerFont = makeWrap(Cufon.registerFont, CufonBase.registerFont); 

이 글꼴을로드하고, 그래서 또한 CufonBase.registerFont를 호출 Cufon의 기본 방법을 덮어 씁니다 글꼴 j를 수정할 필요가 없습니다.

그리고 당신은 호출 할 수

CufonBase.replace('h1', {fontFamily: 'font_name'}); 

그리고 그것은 나를 위해 작동합니다.