2013-10-14 21 views
0

我想用print()函數寫文本。我添加了cufon文件。不幸的是,文本不顯示。爲什麼?請幫幫我。拉斐爾。使用print()的文本。爲什麼不工作?

<html> 
<head> 
    <title></title> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
    <script src="jquery.js" type="text/javascript"></script> 
    <script src="raphael.js" type="text/javascript"></script> 
    <script src="harabara.cufonfonts.js" type="text/javascript"></script> 

</head> 
<body> 
    <script> 

     window.onload = function() { 

     var r = new Raphael('holder', 640, 480); 


    var font1 = r.getFont("Harabara"); 

    var text1 = r.print(10,100, "click me", font1, 48).attr({"stroke-width": 3, fill: "red", "stroke": "blue"}); 


    }; 
    </script> 
    <style type="text/css"> 
     #holder { width: 640px; height: 480px; border: 2px solid #aaa; } 
    </style> 
    <div id="holder"></div> 
</body> 

回答

0

有一件事我馬上看到:

var text1 = r.print(10,100, "click me", font1, 48).attr({"stroke-width": 3, fill: "red", "stroke": "blue"}); 

返回拉斐爾路徑對象。所以你需要把這條路徑分配給你的Raphael紙。

Paper.print()創建表示使用 給定的字體與在給定的大小給定的位置給定的文本寫入路徑。該方法的結果是 包含整個文本作爲單獨路徑的路徑元素。

http://raphaeljs.com/reference.html#Paper.print

沒有測試過,但只是讓你的代碼寫不會打印出任何東西到紙張的方式。

還有一件事:保持您的style標籤在您的header

+0

請給我一個正確的例子,說明如何做到這一點。 我試過這樣: var text1path = r.path(text1); 不幸的是,文本不顯示。 – indi