انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید

نویسنده موضوع: چگونه می توان ترمینال متنی با پشتیبانی زبان فارسی ساخت؟  (دفعات بازدید: 6255 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین محمدرضا ح.

  • High Hero Member
  • *
  • ارسال: 3117
  • جنسیت : پسر
  • Your Future is our Past!
اگه بخوام از fribidi توی یک برنامه ی C استفاده کنم باید چه کار کنم؟

اطلاعی ندارم.
قاضی : تو السالوادور چه کار میکردی؟
چه‌گوارا : آفتاب میگرفتم
قاضی : پس چرا ساختمان دادگستری رو منفجر کردی؟
چه‌گوارا : جلوی آفتاب رو گرفته بود

آفلاین majidkamali1370

  • Hero Member
  • *
  • ارسال: 928
  • جنسیت : پسر
در تکمیل صحبتهای آقای قادری عرض کنم که هر کاراکتر یک عدد متناظر داره که اخیرا Unicode استاندارد شده ولی قبلا ASCII استاندارد بود. توی BIOS هم همین ASCII رو میشناسه. یعنی یه سری کاراکتر رو متناظر میکنه با یه سری عدد. مثلا عدد ۶۵ متناظر با کاراکتر a هست (اگه اشتباه نکنم). حالا این عددا به چه درد میخوره؟
کیبورد موقعی که یه دکمش فشرده میشه یک یا چند بایت میفرسته به سیستم عامل (بستگی داره دکمه های کنترلی {ALT و ALTGR و CTRL و SHIFT و META} رو بگیرید یا نه). از اینجا به بعدش رو دو قسمت میکنم.

۱. قدیم: فقط ASCII بوده و صفحات همگی خط فرمانی بودن. هر کاراکتر توی یه عرض ثابت چاپ میشده روی مانیتور. مثلا اگه ۲۰ تا i مینوشتن و توی خط پایینش ۲۰ تا m، ایندوتا یه عرض رو اشغال میکردن. اون عددی که از کیبورد گرفته میشده میرفته به سیستم عامل و بر اساس اون یه آرایه مثلا ۷*۱۵ از پیکسل ها رو یه تعدادیش رو روشن میکرده. که مثلا خروجیش میشده حرف a

(البته توی عکس بالا ابعاد کاراکترها فرق دارن)

۲. جدید: حالا Unicode اومده و صفحات هم از حالت خط فرمانی در اومدن. حالا اون عددی که از کیبورد گرفته میشه، طبق فونتی که توسط سیستم عامل استفاده میشه، تبدیل میشه به یه آرایه چند*چند که ابعادش متغیره. (دقیقا مثل عکس بالا). حالا اگه من ۲۰ تا i بنویسم عرض کمتری رو اشغال میکنه تا اینکه من ۲۰ تا m بنویسم. (البته بعضی فونتها مثل monospace و... کاراکترهای با عرض یکسان تولید میکنن)

حالا این همه چرت گفتم که به چی برسم؟ اینکه شما میبینی توی مثلا ترمینال میشه فارسی نوشت به خاطر اینه که از فونت استفاده شده. اگه شما میخوای توی ترمینال سیستم عاملی که نوشتی بتونی فارسی بنویسی ۲ تا راه داری.
۱. مثل راه اول رو بری ولی مثلا عدد ۶۵ رو متناظر کنی با مثلا حرف «ب».
۲. طبق استاندارد پیش بری ولی حداقل یه فونت تعریف کرده باشی برای نمایش کاراکترهای فارسی.

امیدوارم جایی اشتباه نگفته باشم.
Ubuntu 14.04 LTS 64-bit - unity