gd-persian و windows-1256

golden

Member
من می خواستم با gd-persian (کلاسی که آقای میلاد راستیان برای نوشتن عبارات فارسی در gd ارایه کردند) یه عبارت که تحت windows-1256 در MySql ذخیره شده را روی یه تصویر بخصوص نمایش بدم. اما به جای عبارت مورد نظر یه سری کاراکتر خراب را نشان میده.مشکل از اینجاست که gd-persian فقط utf-8 را پشتیبانی می کنه.
حالا کسی راه حلی داره؟
 
آخرین ویرایش:

golden

Member
خب مثل اینکه کسی حواسش به ما نیست.
برای رفع این مشکل من به این فکر افتادم که windows-1256 را به utf-8 تبدیل کنم. خود php یه extension به نام iconv داره که به راحتی انواع unicode را به هم تبدیل می کنه اما چون سرور من این extension را نصب نکرده دنبال یه class گشتم که این کار را برای ما انجام بده و به کلاس ConvertCharset برخوردم.
حالا ابتدا مقادیر را از دیتابیس میخونم بعد به utf-8 تبدیلشون میکنم و بعد با استفاده از gd-persian بر روی تصویر میندازمش.
 
آخرین ویرایش:

iman_ebru

Active Member
golden گفت:
مشکل از اینجاست که gd-persian فقط utf-8 را پشتیبانی می کنه.
utf-8 فقط شامل کاراکترهایی که میلاد انتخاب کرده نمیشه و همونطور که از اسم این کلاس پیداست gd-persian محدود به کاراکترهای زبان فارسی (Persian) هست و اینکه بگیم فقط utf-8 روپشتیبانی میکنه درست نیست!

توصیه میکنم از کتابخانه fribidi استفاده بکنی. چون تا زمانی که بصورت رسمی کاراکترهای زبان فارسی توسط PHP ساپورت نشه تنها راه چاره همین هست. fribidi علاوه بر پشتیبانی از کاراترهای utf-8 مشکل bidi رو هم حل کرده و جالبتر اینکه فقط برای GDlib مجبور نیستید ازش استفاده کنید.

مثلا در libswf هم براحتی میتونی ازش استفاده کنی! persian/arabic log2vis فعلا چاره این مشلات هست و چند روز پیش نگارش یکم RC2 منتشر شد و انکودینگ iso8859_6 هم بهش اضافه شده ...!
 

miladmovie

Active Member
ها ! قضیه سر چی بیده ؟ !
ایمان یک بار دیگه می گی این fribidi چی کار می کنه ؟
 

جدیدترین ارسال ها

بالا