2012-08-28 31 views
5

में मैं की तरह कुछ करने की जरूरत है:  राफेल जे एस

paper.text(Left, Top, " " + this._p.Label + ":"); 
paper.text(Left, Top, " " + this._p.Label + ":"); 

लेकिन प्रीपेंड खाली स्थान के दिखाने या पाठ में   के रूप में नहीं दिखाया जाएगा।

मैं कोशिश की है:

label.attr({"xml:space": "preserve"}); 

... कोई प्रभाव के साथ।

तो मैं सेट कर सकते हैं राफेल जे एस में एसवीजी नोड का उपयोग करने के लिए वैसे भी वहाँ है

setAttributeNS("http://www.w3.org/XML/1998/namespace","space","preserve"); 

(या इस को हल करने के किसी भी अन्य तरीका है?)

उत्तर

3

हाँ, आप निश्चित रूप से लागू कर सकते हैं namespaced राफेल द्वारा प्रबंधित एसवीजी तत्व को सीधे विशेषता।

paper.canvas.setAttributeNS("http://www.w3.org/XML/1998/namespace", "xml:space","preserve"); 

कार्यात्मक here होना करने के लिए प्रदर्शन: यह इस आसान है।

+0

धन्यवाद! आप कमाल के है! क्या आप यह भी जानते हैं कि अविभाज्य एसवीजी तत्वों को कैसे प्राप्त किया जाए? –

+2

मैं उस भयानक नहीं हूं - मैंने इसे किसी अन्य रूप में किसी अन्य रूप में पूछकर इस प्रश्न का उत्तर सीखा है =) किसी भी मामले में, आप 'element.node' का संदर्भ देकर राफेल ऑब्जेक्ट से जुड़े svg तत्वों तक पहुंच सकते हैं। चीयर्स! –

2

हालांकि यह लगता है कुछ हद तक [1] हल, मैं this discussion में एक ही मुद्दा है, जो बल्कि \u00a0 साथ की जगह रिक्त स्थान पता चलता है के बारे में आया था। स्ट्रिंग फ़ंक्शन .replace(/ /g,'\u00a0') का उपयोग कर इसे आसानी से हासिल किया जा सकता है।


दिए गए लिंक में टेक्स्ट नोड की प्रमुख रिक्त स्थान मैक सफारी v.6.0.5 के लिए काम नहीं करती है। मुझे यकीन नहीं है कि यह अन्य ब्राउज़रों और ओएसई में कैसा दिखता है।

संबंधित मुद्दे