2010-08-29 21 views
9

जब एक HTML दस्तावेज में HTML निकाय सहित निर्धारित करते हैं, संस्थाओं को एक ही वर्ण एन्कोडिंग सेट है कि दस्तावेज़ का उपयोग करने की निर्दिष्ट किया जाता है से होने की जरूरत है?एचटीएमएल चरित्र संस्थाओं और वर्ण एन्कोडिंग

उदाहरण के लिए, अगर मैं एक HTML दस्तावेज है कि UTF-8 के रूप में निर्दिष्ट किया जाता है में कॉपीराइट संकेत का उपयोग करने के लिए जा रहा हूँ, यह आवश्यक यूनिकोड HTML इकाई (©) का उपयोग करने के लिए है या यह इस तरह के रूप में अन्य संस्थाओं, उपयोग करने के लिए ठीक है ASCII HTML इकाई (©)?

कृपया अपने उत्तर की व्याख्या। मुझे पता है कि यह "काम करेगा", लेकिन क्या ऐसा कोई मामला है जहां यह काम नहीं करेगा?

धन्यवाद!

+0

ASCII में एन्कोड किए गए वर्णों के सेट में कॉपीराइट प्रतीक शामिल नहीं है। – Thanatos

+0

शायद वह सिर्फ आईएसओ -885 9 -1 (आईएसओ लैटिन 1) था।मैंने सुना है कि बहुत से लोग एएससीआईआई का उपयोग उस एन्कोडिंग के साथ एक दूसरे के साथ करते हैं और जब यह तकनीकी रूप से एक ही बात नहीं है, तो मुझे लगता है कि उनका मतलब लैटिन 1. – RibaldEddie

+0

असल में, मैं इस तरह की एक टेबल से जा रहा था: http://www.ascii.cl /htmlcodes.htm मुझे लगता है कि, चूंकि तालिका कॉपीराइट प्रतीक के लिए एक ASCII कॉलम प्रदर्शित करती है, क्योंकि यह एन्कोडिंग में थी। –

उत्तर

9

© और © समान वर्ण निर्दिष्ट करें - 16 9 हेक्साडेसिमल ए 9 के बराबर है। ये दोनों एक कॉपीराइट प्रतीक निर्दिष्ट करते हैं। एचटीएमएल में कैरेक्टर इकाइयां हमेशा यूनिकोड कोड पॉइंट्स को संदर्भित करती हैं, यह HTML 4 Standard में शामिल है। इस प्रकार, भले ही आपका चरित्र सेट बदलता है, फिर भी आपकी संस्थाएं एक ही वर्ण को संदर्भित करती हैं।

यह भी मतलब है कि आप अक्षर हैं जो वास्तव में अपनी पसंद के चरित्र सेट के भीतर दिखाई नहीं देते सांकेतिक शब्दों में बदलना कर सकते हैं। मैंने अभी आईएसओ -885 9 -1 चरित्र सेट में एक दस्तावेज़ बनाया है, लेकिन इसमें ग्रीक लैम्ब्डा भी शामिल है। साथ ही, ASCII सीधे कॉपीराइट प्रतीक को एन्कोड करने में सक्षम नहीं है, लेकिन यह चरित्र इकाइयों के माध्यम से हो सकता है।

संपादित करें: अन्य जवाब पर टिप्पणियाँ पढ़ी, मैं इस एक सा स्पष्ट करना चाहते हैं। यदि आप अपने दस्तावेज़ के लिए अक्षर एन्कोडिंग के रूप में यूटीएफ -8 का उपयोग कर रहे हैं, तो आप कच्चे HTML स्रोत के भीतर, जैसे ही कॉपीराइट प्रतीक लिख सकते हैं। (आपको इसे इनपुट करने के लिए कुछ रास्ता खोजने की ज़रूरत है, ज़ाहिर है: कॉपी-पेस्ट सामान्य होना चाहिए।) यूटीएफ -8 आपको सीधे इच्छित किसी भी प्रतीक को एन्कोड करने की अनुमति देगा। आईएसओ -885 9 -1 बहुत सीमित है, और ASCII और भी बहुत कुछ है। उदाहरण के लिए, मेरी HTML के भीतर, अगर मेरे दस्तावेज़ एक UTF-8 दस्तावेज है, मैं कर सकते हैं:

<p>Hi there. This document is ©2010. Good day!</p> 

या:

<p>Hi there. This document is &#xA9;2010. Good day!</p> 

या:

पहले ही है मान्य अगर चरित्र सेट "©" का समर्थन करता है। अन्य दो हमेशा वैध हैं, लेकिन कम पठनीय हैं। जो कुछ भी पाठ संपादक का उपयोग कर रहे हैं, अगर यह अपने वजन के लायक है, आपको बताने के लिए क्या चरित्र सेट में दस्तावेज़ एन्कोडिंग है सक्षम होना चाहिए।

आप ऐसा करते हैं, तो आप यकीन है कि अपने वेब सर्वर को सूचित करने की जरूरत है ग्राहक सही अक्षरों के समूह की, या कि आपके दस्तावेज़ की तरह कुछ के साथ यह घोषणा करता है:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 

मैं का उपयोग किया है UTF-8 वहाँ एक उदाहरण के रूप। एक्सएचटीएमएल में शुरुआती <?xml ... ?> टैग में वर्ण सेट होना चाहिए।

+0

सही, इसलिए यदि आपके दस्तावेज़ चरित्र सेट के रूप में न तो लैटिन 1 और यूनिकोड का उपयोग करने के किसी कारण के लिए, तो आप अभी भी उन इकाइयों का उपयोग करके कॉपीराइट प्रतीक प्रदर्शित कर सकते हैं। – RibaldEddie

+0

@ तानाटोस इस जानकारी का आधिकारिक स्रोत कहां है? मैं ऐसा काम कर रहा हूं जो इस उपयोग-मामले से अधिक कवर करता है और कुछ और विवरण प्राप्त करना चाहता है। धन्यवाद। –

+0

@jeyoung उन पोस्ट का कौन सा हिस्सा आप स्रोत ढूंढ रहे हैं? प्रविष्टियों को एन्कोड करने के लिए कैसे पोस्ट किया गया है, हालांकि आज, मैं एचटीएमएल 5 मानक से लिंक करूंगा (लेकिन मुझे नहीं लगता कि एचटीएमएल 5 इस पहलू को संशोधित करता है)। यदि आप केवल संख्या की तलाश में हैं (उदाहरण के लिए, '©' में अनुवाद कैसे करें: सबसे पहले, मैं यूटीएफ -8 का उपयोग करने की सिफारिश करता हूं और केवल अक्षर को अक्षर लिखता हूं, यानी, बस अपने स्रोत में © या इसी तरह के, चूंकि यह तब मनुष्य द्वारा सीधे पठनीय है (रिबाल्डएडी का जवाब)। अन्यथा, संख्या सिर्फ यूनिकोड कोड बिंदु है। shapecatcher.com आपको उस चरित्र को आकर्षित करने देगा जो आपको चाहिए, – Thanatos

4

UTF-8 एन्कोडिंग का सौंदर्य है कि आप बस द्विआधारी चरित्र वास्तव में शामिल कर सकते हैं। आपको इसे एक इकाई के रूप में एन्कोड करने की आवश्यकता नहीं है। Thusly: ©

ओह, तुम सिर्फ दो संस्थाओं के बीच का अंतर जानना चाहते हैं? वहां कोई नहीं है। एक हेक्स में बाइट और दूसरे में दशमलव का वर्णन करता है।

+0

"बाइनरी कैरेक्टर" द्वारा, क्या आपका मतलब है कि मैं सिर्फ आपके उत्तर से प्रतीक कॉपी कर सकता हूं और इसे अपने पेस्ट में पेस्ट कर सकता हूं एचटीएमएल दस्तावेज़ (जिसका अर्थ है कि यह कोड में प्रतीक की तरह दिखेगा) और, जब तक यह यूटीएफ -8 है, ठीक है ?? –

+0

यह। यदि आप इकाइयों में सबकुछ एन्कोड करने जा रहे हैं तो यूटीएफ -8 का उपयोग करने का क्या मतलब है? यूनिकोड क्या है! – You

+0

सही। कुछ पात्रों को अभी भी एन्कोडेड इकाई होने की आवश्यकता है, लेकिन केवल वे लोग जिनके पास HTML में अर्थपूर्ण अर्थ है, जैसे कि उससे कम और उससे अधिक। लेकिन कॉपीराइट साइन सिर्फ काम करता है (टीएम)। – RibaldEddie

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