2013-04-09 149 views
0

我正在使用cufon.js呈現一些文本。該文本不在同樣存在於頁面上的結構畫布中。刪除fabric.js允許文本呈現OK,但是當我將fabric.js放回時會斷開。呈現文字的腳本是:cufon.js與fabric.js發生衝突

<script type="text/javascript"> 
Cufon.replace('#signature'); 
</script> 

我該如何解決這個問題?

更新:

這些頁面上的腳本的鏈接我有(fabric.js是all.min.js 1.1.0版在dist文件夾中找到)

<script type="text/javascript" src="../scripts/cufon-yui.js" type="text/javascript"></script> 
<script type="text/javascript" src="../scripts/font.js" type="text/javascript"></script> 
<script type="text/javascript" src="../scripts/fabric.js" type="text/javascript"></script> 
+0

我使用的面料版本0.9.15 ... – IlludiumPu36 2013-04-09 02:00:02

+0

會出現這種情況有較新版本? 1.1.0例如https://github.com/kangax/fabric.js/tags – kangax 2013-04-09 08:27:30

+0

這不是在http://fabricjs.com/底部使用的相同鏈接,它表示「下載最新版本」。無論如何,使用OP中更新的腳本鏈接(fabric.js是在dist文件夾中找到的all.min.js),問題會與1.1.0一致。 – IlludiumPu36 2013-04-09 08:45:24

回答

0

你需要渲染所有的字體替換。看看這個:

$("#signature").change(function(e){ 
    var object = canvas.getActiveObject(); 
    if(object && object.type == "text"){ 
     object.fontFamily = $(this).val(); 
     canvas.renderAll(); 
    } 
}); 

或者

Cufon.replace('#signature', {fontFamily: '<font_name>'}); 

檢查:

http://jsfiddle.net/ptCoder/tcVUt/