X

X

X

HTML এনকোডিং (Encoding Character Sets)


আগের দিনে অর্থাৎ কয়েকবছর আগে কম্পিউটারে খুব বেশি অক্ষর লিখা যেতো না। যেমন, বাংলাভাষা আগে কম্পিউটারে লিখা যেতো না। পরে প্রযুক্তি উন্নয়নের সাথে সাথে এই সমস্যা দূর হয়েছে।

কম্পিউটারে বাইনারী সংখ্যা পদ্ধতি ব্যবহার করা হয়। কেননা ইলক্ট্রনিক্স ডিভাইসের ইলেক্ট্রিক্যাল স্টেট বা অবস্থা দুইটা। চালু-বন্ধ বা লোভোল্টেজ-হাইভোল্টেজ ইত্যাদি। এই দুটি অবস্থা দিয়েই মূলত কম্পিউটার সবধরণের কাজ করে।

বাইনারী সংখ্যা পদ্ধতিতে দুটি অঙ্ক (Digit) ব্যবহার করা হয়। 0 ও 1 । বাইনারী পদ্ধতিতে এদেরকে বিট বলা হয়। এখন ধরুণ , আপনাকে দুটি বিট দিয়ে বলা হলো এটি দুটি দিয়ে সংখ্যা তৈরি করুন যেগুলো দৈর্ঘ্য হবে দুটি বিটের। তাহলে আপনি চারটি সংখ্যা তৈরি করতে পারবেন, যেমন – ০০, ০১, ১০, ১১।
কিন্তু যদি এখন ৩ দৈর্ঘ্য বিশিষ্ট সংখ্যা ঐ দুটি বিট দিয়ে তৈরি করতে বলা হয়, তাহলে আটটি সংখ্যা তৈরি করতে পারবেন। যেমন – ০০০, ০০১, ০১০, ০১১, ১০০, ১০১, ১১০, ১১১।

এখন এভাবে যদি ৮ কিংবা ১৬ দৈর্ঘ্য বিশিষ্ট সংখ্যা তৈরি করতে বলা হয়, তবে কয়েক মিলিয়ন সংখ্যা তৈরি করতে পারবেন। কম্পিউটার প্রতিটি অক্ষরকে এক একটি সংখ্যা মান হিসেবে সেভ করে রাখে। বিভিন্ন দৈর্ঘ্য বিশিষ্ট অক্ষর রয়েছে। এগুলোকে আলাদাভাবে এককেটি ক্যারেক্টার সেট বলে। আগে ৮ দৈর্ঘ্য বিশিষ্ট সংখ্যা পদ্ধতি ব্যবহার করা হতো। এখন ১৬ এমনকি কিছু কিছু ক্ষেত্রে ৩২ থেকে ৬৪ বিট দৈর্ঘ্য বিশিষ্ট ক্যারেকটার সেট ব্যবহার করা হয়। একারণে ইদানীং আমরা পৃথিবীর প্রায় সব অক্ষর কম্পিউটারে লিখতে পারি।

যেহেতু কম্পিউটারে অনেকগুলো ক্যারেক্টার সেট ইন্সটল করা থাকে, কাজেই একটি ওয়েব পেজ উপস্থাপণ করার সময় কোন ক্যারেক্টার সেট ব্যবহার করা হলো সেটি পেজে উল্লেখ্য করা উচিৎ। তা না হলে ভুল তথ্য উপস্থাপিত হতে পারে। কেননা একই সংখ্যামান একেক ক্যারেক্টার সেটে আলাদা অক্ষরের প্রতিনিধিত্ব করতে পারে।


ক্যারেকটার এনকোডিং বলতে কি বোঝায়?

ASCII হলো প্রথম ক্যারেক্টার এনকোডিং স্ট্যান্ডার্ড যেটি American Standard Code for Information Interchange নামে পরিচিত। এত ১২৮ ক্যারেক্টারের বর্ণনা করা হয়েছে যেগুলো ইন্টারনেটে তথ্য উপস্থাপণে ব্যবহৃত হয়। এগুলো হলো- সংখ্যা (0-9), ইংরেজি অক্ষর (A-Z) এবং কিছু বিশেষ চিহ্ন ! $ + – ( ) @ < > . ইত্যদি।

ANSI (Windows-1252) হচ্ছে প্রথম ক্যারেক্টার সেটি যেটিতে ৩৫৬ টি ক্যারেক্টারের ব্যবহার বর্ণনা করা হয়েছে।

ISO-8859-1 হচ্ছে HTML 4 এর ডিফল্ট ক্যারেক্টার সেট। এটি ২৫৬ টি ক্যারক্টার সাপোর্ট করে।

যেহেতু ANSI এবং ISO-8859-1 এ খুবই সীমিত চিহ্নের বর্ণনা করা হয়েছে কাজেই HTML 4 UTF-8 character encoding সাপোর্ট করে।

UTF-8 (Unicode) মোটামুটিভাবে পৃথিবীর সবধরণের ক্যারেকটার উপস্থাপণ করা যায়।

HTML5 এ ডিফল্ট ক্যারেক্টার এনকোডিং হচ্ছে UTF-8


HTML charset Attribute

ওয়েব পেজ সঠিকভাবে উপস্থাপণের জন্য পেজে কোন ক্যারেক্টার সেট ব্যবহার করা হয়েছে তা ব্রাউজারকে জানাতে হবে।
<meta> tag -এর মাধ্যমে এটি বর্ণনা করা হয়।

HTML4 এর জন্য :

<meta http-equiv=”Content-Type” content=”text/html;charset=ISO-8859-1″>

FHTML5 এর জন্য :

<meta charset=”UTF-8″>
যদি ব্রাউজার কোনো ওয়েবপেজে ISO-8859-1 ক্যারেক্টার এনকোডিং ডিটেক্ট করে তাহলে ব্রাউজার ANSI ক্যারেক্টার এনকোডিং ব্যবহার করে কেননা ISO-8859-1 ANSI এর মতই। উপরন্তু এতে ৩২ টি অক্ষর বেশি রয়েছে।

Character Sets গুলোর মধ্যে পার্থক্য

নিচের টেবিলে পার্থক্যগুলোর বর্ণনা দেওয়া হলো..

সংখ্যা মান ASCII ANSI 8859 UTF-8 বর্ণনা
32 space (স্পেস)
33 ! ! ! ! exclamation mark (বিস্ময়সূচক চিহ্ন)
34 quotation mark (কোটেশন চিহ্ন)
35 # # # # number sign (সংখ্যা প্রতীক)
36 $ $ $ $ dollar sign (ডলার চিহ্ন)
37 % % % % percent sign (শতকরা চিহ্ন)
38 & & & & ampersand (এমপারস্যান্ড)
39 apostrophe
40 ( ( ( ( left parenthesis (বাম প্রথম বন্ধনী)
41 ) ) ) ) right parenthesis (ডান প্রথম বন্ধনী)
42 * * * * asterisk (তারকা চিহ্ন)
43 + + + + plus sign (যোগ)
44 , , , , comma (কমা)
45 hyphen-minus (হাইফেন)
46 . . . . full stop (ফুল স্টপ)
47 / / / / solidus
48 0 0 0 0 digit zero (শূন্য)
49 1 1 1 1 digit one (এক)
50 2 2 2 2 digit two (দুই)
51 3 3 3 3 digit three (তিন)
52 4 4 4 4 digit four (চার)
53 5 5 5 5 digit five (পাচ)
54 6 6 6 6 digit six (ছয়)
55 7 7 7 7 digit seven (সাত)
56 8 8 8 8 digit eight (আট)
57 9 9 9 9 digit nine
58 : : : : colon
59 ; ; ; ; semicolon
60 < < < < less-than sign
61 = = = = equals sign
62 > > > > greater-than sign
63 ? ? ? ? question mark
64 @ @ @ @ commercial at
65 A A A A Latin capital letter A
66 B B B B Latin capital letter B
67 C C C C Latin capital letter C
68 D D D D Latin capital letter D
69 E E E E Latin capital letter E
70 F F F F Latin capital letter F
71 G G G G Latin capital letter G
72 H H H H Latin capital letter H
73 I I I I Latin capital letter I
74 J J J J Latin capital letter J
75 K K K K Latin capital letter K
76 L L L L Latin capital letter L
77 M M M M Latin capital letter M
78 N N N N Latin capital letter N
79 O O O O Latin capital letter O
80 P P P P Latin capital letter P
81 Q Q Q Q Latin capital letter Q
82 R R R R Latin capital letter R
83 S S S S Latin capital letter S
84 T T T T Latin capital letter T
85 U U U U Latin capital letter U
86 V V V V Latin capital letter V
87 W W W W Latin capital letter W
88 X X X X Latin capital letter X
89 Y Y Y Y Latin capital letter Y
90 Z Z Z Z Latin capital letter Z
91 [ [ [ [ left square bracket
92 \ \ \ \ reverse solidus
93 ] ] ] ] right square bracket
94 ^ ^ ^ ^ circumflex accent
95 _ _ _ _ low line
96 ` ` ` ` grave accent
97 a a a a Latin small letter a
98 b b b b Latin small letter b
99 c c c c Latin small letter c
100 d d d d Latin small letter d
101 e e e e Latin small letter e
102 f f f f Latin small letter f
103 g g g g Latin small letter g
104 h h h h Latin small letter h
105 i i i i Latin small letter i
106 j j j j Latin small letter j
107 k k k k Latin small letter k
108 l l l l Latin small letter l
109 m m m m Latin small letter m
110 n n n n Latin small letter n
111 o o o o Latin small letter o
112 p p p p Latin small letter p
113 q q q q Latin small letter q
114 r r r r Latin small letter r
115 s s s s Latin small letter s
116 t t t t Latin small letter t
117 u u u u Latin small letter u
118 v v v v Latin small letter v
119 w w w w Latin small letter w
120 x x x x Latin small letter x
121 y y y y Latin small letter y
122 z z z z Latin small letter z
123 { { { { left curly bracket
124 | | | | vertical line
125 } } } } right curly bracket
126 ~ ~ ~ ~ tilde
127 DEL
128 euro sign
129    NOT USED
130 single low-9 quotation mark
131 ƒ Latin small letter f with hook
132 double low-9 quotation mark
133 horizontal ellipsis
134 dagger
135 double dagger
136 ˆ modifier letter circumflex accent
137 per mille sign
138 Š Latin capital letter S with caron
139 single left-pointing angle quotation mark
140 ΠLatin capital ligature OE
141    NOT USED
142 Ž Latin capital letter Z with caron
143    NOT USED
144    NOT USED
145 left single quotation mark
146 right single quotation mark
147 left double quotation mark
148 right double quotation mark
149 bullet
150 en dash
151 em dash
152 ˜ small tilde
153 trade mark sign
154 š Latin small letter s with caron
155 single right-pointing angle quotation mark
156 œ Latin small ligature oe
157    NOT USED
158 ž Latin small letter z with caron
159 Ÿ Latin capital letter Y with diaeresis
160 no-break space
161 ¡ ¡ ¡ inverted exclamation mark
162 ¢ ¢ ¢ cent sign
163 £ £ £ pound sign
164 ¤ ¤ ¤ currency sign
165 ¥ ¥ ¥ yen sign
166 ¦ ¦ ¦ broken bar
167 § § § section sign
168 ¨ ¨ ¨ diaeresis
169 © © © copyright sign
170 ª ª ª feminine ordinal indicator
171 « « « left-pointing double angle quotation mark
172 ¬ ¬ ¬ not sign
173 soft hyphen
174 ® ® ® registered sign
175 ¯ ¯ ¯ macron
176 ° ° ° degree sign
177 ± ± ± plus-minus sign
178 ² ² ² superscript two
179 ³ ³ ³ superscript three
180 ´ ´ ´ acute accent
181 µ µ µ micro sign
182 pilcrow sign
183 · · · middle dot
184 ¸ ¸ ¸ cedilla
185 ¹ ¹ ¹ superscript one
186 º º º masculine ordinal indicator
187 » » » right-pointing double angle quotation mark
188 ¼ ¼ ¼ vulgar fraction one quarter
189 ½ ½ ½ vulgar fraction one half
190 ¾ ¾ ¾ vulgar fraction three quarters
191 ¿ ¿ ¿ inverted question mark
192 À À À Latin capital letter A with grave
193 Á Á Á Latin capital letter A with acute
194 Â Â Â Latin capital letter A with circumflex
195 Ã Ã Ã Latin capital letter A with tilde
196 Ä Ä Ä Latin capital letter A with diaeresis
197 Å Å Å Latin capital letter A with ring above
198 Æ Æ Æ Latin capital letter AE
199 Ç Ç Ç Latin capital letter C with cedilla
200 È È È Latin capital letter E with grave
201 É É É Latin capital letter E with acute
202 Ê Ê Ê Latin capital letter E with circumflex
203 Ë Ë Ë Latin capital letter E with diaeresis
204 Ì Ì Ì Latin capital letter I with grave
205 Í Í Í Latin capital letter I with acute
206 Î Î Î Latin capital letter I with circumflex
207 Ï Ï Ï Latin capital letter I with diaeresis
208 Ð Ð Ð Latin capital letter Eth
209 Ñ Ñ Ñ Latin capital letter N with tilde
210 Ò Ò Ò Latin capital letter O with grave
211 Ó Ó Ó Latin capital letter O with acute
212 Ô Ô Ô Latin capital letter O with circumflex
213 Õ Õ Õ Latin capital letter O with tilde
214 Ö Ö Ö Latin capital letter O with diaeresis
215 × × × multiplication sign
216 Ø Ø Ø Latin capital letter O with stroke
217 Ù Ù Ù Latin capital letter U with grave
218 Ú Ú Ú Latin capital letter U with acute
219 Û Û Û Latin capital letter U with circumflex
220 Ü Ü Ü Latin capital letter U with diaeresis
221 Ý Ý Ý Latin capital letter Y with acute
222 Þ Þ Þ Latin capital letter Thorn
223 ß ß ß Latin small letter sharp s
224 à à à Latin small letter a with grave
225 á á á Latin small letter a with acute
226 â â â Latin small letter a with circumflex
227 ã ã ã Latin small letter a with tilde
228 ä ä ä Latin small letter a with diaeresis
229 å å å Latin small letter a with ring above
230 æ æ æ Latin small letter ae
231 ç ç ç Latin small letter c with cedilla
232 è è è Latin small letter e with grave
233 é é é Latin small letter e with acute
234 ê ê ê Latin small letter e with circumflex
235 ë ë ë Latin small letter e with diaeresis
236 ì ì ì Latin small letter i with grave
237 í í í Latin small letter i with acute
238 î î î Latin small letter i with circumflex
239 ï ï ï Latin small letter i with diaeresis
240 ð ð ð Latin small letter eth
241 ñ ñ ñ Latin small letter n with tilde
242 ò ò ò Latin small letter o with grave
243 ó ó ó Latin small letter o with acute
244 ô ô ô Latin small letter o with circumflex
245 õ õ õ Latin small letter o with tilde
246 ö ö ö Latin small letter o with diaeresis
247 ÷ ÷ ÷ division sign
248 ø ø ø Latin small letter o with stroke
249 ù ù ù Latin small letter u with grave
250 ú ú ú Latin small letter u with acute
251 û û û Latin small letter with circumflex
252 ü ü ü Latin small letter u with diaeresis
253 ý ý ý Latin small letter y with acute
254 þ þ þ Latin small letter thorn
255 ÿ ÿ ÿ Latin small letter y with diaeresis

ASCII Character Set (উচ্চারণ ass-key)

এটি ০ থেকে ৩১ পর্যন্ত (এবং ১২৭) কন্ট্রোল ক্যারেক্টার উপস্থাপনের জন্য ব্যবহার করে। এরপর ৩২ থেকে শুরু করে ১২৬ পর্যন্ত অক্ষর, সংখ্যা এবং অন্যান্য প্রতীকের জন্য ব্যবহার করে। ১২৮ থেকে ২৫৫ পর্যন্ত কোনো অক্ষর ASCII-তে নেই।


ANSI Character Set (Windows-1252)

০ থেকে ১২৭ পর্যন্ত ANSI ও ASCII এর ক্যারেক্টার একই রকম। এতে ১২৮ থেকে ১৫৯ পর্যন্তও ক্যারেক্টার রয়েছে। ১৬০ থেকে ২৫৫ পর্যন্ত ANSI ও UTF-8 এর ক্যারেক্টার একইরকম।


ISO-8859-1 Character Set

০ থেকে ১২৭ পর্যন্ত 8859-1 ও ASCII এর ক্যারেক্টার একইরকম। ১২৮ থেকে ১৫৯ পর্যন্ত কোনো ক্যারেক্টার এটিতে নেই। 8859-ও UTF-8 এর মান ১৬০ থেকে ২৫৫ পর্যন্ত একইরকম।


UTF-8 Character Set

০ থেকে ১২৭ পর্যন্ত UTF-8 ও ASCII এর মান একই রকম। ১২৮ থেকে ১৫৯ পর্যন্ত এতে কোনো ক্যারেক্টার নাই। UTF-8 , ANSI ও 8859-1 ১৬০ থেকে ২৫৫ পর্যন্ত একই রকম। ২৫৬ থেকে এটি নতুন ক্যারেক্টার নির্দেশ করে। এতে ১০,০০০ এরও বেশি ক্যারেক্টার রয়েছে।