چرا کاراکترهای فارسی بیشتر از انگلیسی فضا اشغال میکنند
حتما در بسیاری مواقع دیده اید که به هنگام تایپ SMS با حروف فارسی ، تعداد حروف 2 برابر حروف انگلیسی محاسبه میشود.
و یا اگر در Notepad دو متن فارسی و انگلیسی با تعداد حروف یکسان داشته باشیم، حجم فایل فارسی 2 برابر فایل انگیسی است.
شاید برای بسیاری این سوال پیش آمده باشد که علت این اشغال شدن فضا توسط حروف فارسی چیست؟
در ادامه مطلب علت اشغال فضای بیشتر کارکترهای فارسی را توضیح خواهیم داد.
حروف انگلیسی بر اساس الگوی کدگذاری به نام ASCII طراحی شدهاند. ASCI مخفف American Standard Code for Information Interchange است و اولین بار در سال 1967 در ایالات متحده آمریکا مورد استفاده قرار گرفت. در اسکی هر کارکتر انگلیسی یک بایت فضا اشغال میکند.
کارکترهای انگلیسی بخشی از کارکترهای لاتین به شمار میروند که اسکی به خوبی از آنها پشتیبانی میکند. در زبان انگلیسی 26 حرف وجود دارد که فارغ از اینکه بزرگ هستند یا کوچک، فضای یکسانی از حافظه را اشغال میکنند.
در دهه 1960 و زمانی که کامپیوترها از حافظه ذخیرهسازی بسیار محدودی بهره میبردند، استاندارد ASCII خلق شد تا کارکترها به روش استانداردی در حافظه تمام کامپیوترهای عرضه شده در آمریکا، ذخیره شوند. در آن زمان تصمیم گرفته شد تا با تکنیک خاصی هر کارکتر در 8 بیت معادل یک بایت ذخیره شوند. در واقع هر کارکتر انگلیسی 7 بیت فضا اشغال میکند و بیت هشتم برای چککردن زوج یا فرد بودن عدد است.
با راه یافتن کامپیوتر به کشورهای مختلف جهان و نیاز به واردنمودن زبانهای مختلف دنیا که هر کدام کارکترهای خاص خود را دارند، استانداردهای کدگذاری مختلفی تعریف شد که از جهات گوناگون با ASCII متفاوت بودند. معروفترین این استانداردها که امروزه بسیار مورد استفاده قرار میگیرد و پشتیبانی بسیار خوبی نیز از زبان فارسی دارد، Unicode است. در یونیکد، تمام کارکترهای زبانهای مختلف دنیا در قالب یک مجموعه کارکتر ذخیره شدهاند.
معروفترین روش در کدگذاری یونیوکد، UTF-8 است که امروزه بیشتر از باقی استانداردها مورد توجه قرار گرفته است. این استاندارد به شکلی طراحی شده است که از استانداردهای دیگر از جمله ASCII پشتیبانی کند. در UTF-8 هر کارکتر 2 بایت (یا بیشتر) فضا اشغال میکند.
پس از آنجایی که حروف انگلیسی براساس استاندارد ASCII ذخیره میشوند، 1 بایت فضا اشغال میکنند. اما حروف فارسی که عموما براساس استاندارد UTF-8 ذخیره میشوند 2 بایت یا بیشتر فضا اشغال میکنند.
با توجه به این توضیحات اگر در حال ارسال پیامک انگلیسی باشید 160 بایت یا 160 کارکتر انگلیسی در اختیار خواهید داشت، و این در حالی است که این محدودیت برای پیامکهای فارسی به کمتر از نصف کاهش مییابد.
چگونه ایمیل فارسی بنویسیم؟
نوشتن Email به فارسی و به صورتی که بتوان برای آن راه حلی کلی و جامع ارائه کرد ، تا قبل از آمدن Windows 2000 امکان پذیر نبود. برای نوشتن نامه های فارسی و Chat کردن رایج ترین روش استفاده از زبان Finglish بود (و چه بسا بتوان گفت هست) . در این روش کلمات فارسی با استفاده از کاراکترهای انگلیسی تایپ می شدند.
در مورد وب سایت های فارسی نیز دو روش رایج بود: اول استفاده از فونت هایی که برای هر سایت میتوانست فرق کند . بنابراین شما برای خواندن یک وب سایت فونت مخصوصش را download و نصب می کنید و برای سایت دیگر فونت دیگری را و الی آخر.
روش دوم استفاده از سیستم PDF است که گر چه از نظر نصب فونت و ... مشکلات اولی را ندارد ، ولی به خاطر حجیم بودن فایلها معمولا در اینترنت از آن استقبال زیادی نمی شود. در همین روش می توان به تبدیل مطالب به عکس نیز اشاره کرد ( البته PDF هم به نوعی همین ساختار است ، ولی با امکانات بیشتر ، مثل قابلیت جست و جو درون مطالب PDF شده ، امکان گذاردن link و...). در روش تبدیل مطالب فارسی به عکس با استفاده از نرم افزارهای گرافیکی مطلبی که در آن نرم افزار و یا جای دیگر تایپ شده است ، به عکس با فورمت GIF و یا JPG تبدیل می شود . دراین حالت نیز اگر چه حجم فایل ها به اندازه سیستم PDF حجیم نخواهد بود ولی باز هم حجیم بودن مطالب از مشکلات استفاده از آن است.
در حال حاضر با توجه به سیستم UniCode که شرکت مایکروسافت آن را همزمان با Windows 2000 معرفی کرد ، استفاده از زبان فارسی چه در وب سایت ها و چه در email ها حالتی استانداردتر به خود گرفته است. UniCode که مخفف Universal Code و به معنی کد جهانی است مجموعه ای از بسیاری از زبان های رایج در دنیا و از جمله فارسی را دارد که در صورت استفاده از سیستم عامل ویندوز ، دیگر نیازی به نصب فونت بخصوصی وجود ندارد و کافی است روی آن صفحه right click کنید ، Encoding و سپس UTF-8) UniCode ) را انتخاب کنید.
استفاده از سیستم UniCode علاوه بر تمام مزایای فوق ، یک مزیت دیگر نیز دارد و آن این است که آن سایت بخصوص راحت تر در جست و جوگرهای فارسی ثبت خواهد شد ، چرا که جست و جو گرهایی که خدمات جست و جو به زبانهای دیگر را می دهند ( مثلgoogle.com که از جمله قابلیت جست و جو به زبان فارسی را دارد) ساختار جست و جوی خود را بر اساس سیستم Unicode بنا نهاده اند و بنابراین عدم استفاده از این سیستم سایت شما را از ثبت شدن در این جست و جو گرها باز می دارد.
البته همانطور که اشاره شد این سیستم فقط در سیستم عامل ویندوز و مرورگر Internet Explorer کاربرد دارد . بنابراین اگر شما سیستم عامل مکینتاش و یا مرورگر Netscape داشته باشید نمی توانید این گونه صفحات را ببینید. و اما برای نامه نگاری در اینترنت – ارسال و دریافت e-mail نیز همان دو روش که در مورد وب سایت ها اشاره شد کاربرد دارد: یکی استفاده از عکس و دیگری استفاده از سیستم Unicode توصیه می شود. البته در این حالت علاوه بر ایرادهایی که اشاره شد این محدودیت نیز وجود دارد که حتماًٌ باید دارای سیستم عامل windows 2000 و یا windows xp باشید.
برای آنکه بتوانید از این سیستم استفاده کنید ابتدا لازم است قابلیت تایپ کاراکترهای فارسی را در ویندوز 2000 یا xp خود تعریف کنید. برای این کار به Control Panel بروید ، Regional , Language Options را انتخاب کنید و زبان فارسی را به مجموعه زبان های مورد استفاده کامپیوتر خود اضافه کنید. از این به بعد در پایین صفحه سمت راست کنار ساعت کامپیوتر شما مربعی ظاهر خواهد شد که درآن FA ( برای فارسی) و یا EN ( برای انگلیسی) ظاهر می شود که با کلیک کردن روی آن می توانید بین این دو زبان سوئیچ کنید.
بعد از آنکه زبان کاراکترهای کامپیوتر خود را فارسی کردید ، کافی است به همان صورتی که مثل همیشه Email می نویسید ، عمل کنید و تنها هنگامی که می خواهید متن نامه را بنویسید از زبان فارسی استفاده کنید. در این حالت مهم نیست که شما از سیستم Web based email و یا نرم افزارهای ویرایشگر مثل Outlook Express استفاده می کنید.
برای خواندن چنین نامه هایی نیز کافی است که محیطی که در آن نامه را می خوانید سیستم Unicode را پشتیبانی کند. بنابراین اگر از سیستم Web based email استفاده می کنید کافی است تا تنظیمات Internet Explorer را به گونه ای تغییر دهید که Unicode را پشتیبانی کند و اگر از Outlook Express استفاده می کنید کافی است تا در قسمت view, Encoding, Unicode را انتخاب کنید.