کاراکتر های فارسی در عکس توسط PHP

اکـسـیـژن

شنبه، 29 مرداد 1384

کاراکتر های فارسی در عکس توسط PHP

ارسال شده توسط امید در پی‌اچ‌پی در 09:56


پروژه Persian Log2Vis version 1 beta 1

یکی از مشکلات موجود برای کتابخانه GD، پشتیبانی نکردن از کاراکتر های فارسی (کاراکتر های "راست به چپ" و "دو جهته") است. تعدادی توسعه برای این کتابخانه نوشته شده اند که تقریبا هیچ کدام به طور کامل قابل استفاده نیستند.

تابعی توسط توسعه های FriBiDi و Multibyte String موجود در PHP نوشتم که این کار را به خوبی انجام می دهد. نمونه ای از تصاویر گرفته شده توسط این تابع را در ادامه مطلب مشاهده کنید.



با توجه به اینکه این تابع از توسعه FriBiDi استفاده می کند و این توسعه در بخش PECL سایت PHP می باشد و هنوز در توسعه های رسمی و نهایی PHP منتشر نمی شود، باید این توسعه، پایین گذاری شده و روی PHP در سرور نصب شود. راهنمای نصب PECL در manual اصلی PHP قرار دارد.

خواهشمندم، نظرات خودتون و مشکلات تابع رو قسمت نظرات بنویسید.

پروژه در سایت berlios قرار گرفت، می تونید از آدرس زیر اطلاعات لازم رو دریافت کنید:
http://developer.berlios.de/projects/persian-log2vis/

نظر ها (30) | دنبالک ها (0) | بیشترین خروج ها (0)

18688 hits

دنبالک ها
یک آدرس دنبالک برای ارسال

هیچ دنبالکی وجود ندارد

نظر ها
نمایش نظرات به صورت (خطی | بند کشی شده)

salam,
shoma tabetoon be darde tolide PDF nemikhoreh?
dar zemn be addresi ke dadid raftam vali neveshteh ke projeie morede nazar hanooz upload nashodeh.
Mamnoon
#1 omid (سایت) در 1384-05-30 06:45 (پاسخ)
سلام،

این تابع کلا کارش تبدیل رشته ای از کاراکتر های منطقی به کاراکتر هایی است که قابلیت نمایش دارند (البته فعلا فقط برای utf8)

برای همین، کلا باید برای کارهای گرافیکی مناسب باشه.... من هم به این دلیل این مورد رو ذکر نکردم، چون مورد هایی غیر از GD رو تست نکردم (اعم از Imagick یا PDFlib یا ...) ممنون می شم اگر تست کردید، من رو هم خبر کنید.

در مورد لینک فوق هم، زمانی که شما لینک رو دیدید، هنوز فعال نشده بود، به زودی مشکلش رو حل می کنم.
#1.1 امید (سایت) در 1384-05-30 12:32 (پاسخ)
سلام
کار خیلی مفیدیه امید جان ..
اتفاقا میلاد هم کارایی داره میکنه (که حکما خودتم خبر داری)
موفق باشی ...
#2 علی ستاری (سایت) در 1384-05-31 02:05 (پاسخ)
سلام علی جان...
ممنون به خاطر نظرت.

برنامه میلاد رو هم در جریانش هستم :-) کار خوبی رو شروع کرده و در مورد متون فارسی خوب کار می کنه، اما برای جملات bidi (یا دو جهته) در نسخ فعلی مشکل داره.

ضمن اینکه تابع میلاد عزیز، به هیچ تابع اضافی ایکه ذاتا در PHP نصب نیست نیاز نداره، اما برنامه من از یکی از توسعه های pecl (البته فعلا) استفاده می کنه که باید روی سیستم طرف نصب بشه و این کار روی اغلب سرور ها غیر ممکنه!!

خدا رو چه دیدی، شاید روزی برنامه ایشون با این برنامه تلفیق بشه :-) (یا بالعکس!! :-D)
#2.1 امید (سایت) در 1384-05-31 02:32 (پاسخ)
تصاویر دیگه ای از این پروژه رو می تونید در اینجا زیر ببینید:

http://developer.berlios.de/dbimage.php?id=1994

http://developer.berlios.de/dbimage.php?id=1993

http://developer.berlios.de/dbimage.php?id=1995
#3 امید (سایت) در 1384-05-31 04:11 (پاسخ)
نسخه 0.2 از این تابع منتشر شد.

در این نسخه، مشکل حروفی مصل فتحه و کسره و تنوین و تشدید حل شد.
اما به دلیل مشکلات توابع GD در PHP برای پردازش این علامت ها، رشته هایی با چنین علاماتی، کمی در بخش نمایش دچار مشکل می شوند، و این مشکل ربطی به کار این تابع ندارد.

در عین حال، دوستان می توانند تابعی ساده برای GD بنویسند تا رشته خروجی این پروژه را دریافت کند تا درست دیده شود.
#4 امید (سایت) در 1384-06-01 10:20 (پاسخ)
یاهو
دوست عزیز تمتم این مطالب در خود libهای php ساپورت میشود. فقط به کمک utf-8
#5 Rahim (سایت) در 1384-06-01 18:04 (پاسخ)
سلام...
ممنون میشم توضیحات بیشتری بدین، من منظور شما رو نفهمیدم.
#5.1 امید (سایت) در 1384-06-01 23:42 (پاسخ)
نسخه 1RC1 منتشر شد.
در این نسخه تعدادی از باگ های برنامه برطرف شد و دیگه اینکه امکان اضافه کردن چندین انکودینگ و زبان به برنامه اضافه شد.
هنوز تا انتشار نهایی اولین (و شاید آخرین) نسخه باید 2-3 کار دیگه روش انجام بدم :-)

منتظر پیشنهادات و نظرات شما هستم.

موفق باشید.
#6 امید (سایت) در 1384-06-03 03:59 (پاسخ)
یاهو
سلام و عرض پوزش !!! من درست موضوع رو نگرفتم !!! کار قشنگ و ردیفی انجام دادی... خسته نباشید داره..
#7 Rahim در 1384-06-04 15:14 (پاسخ)
ممنونم، موفق و پیروز باشی :-)
#7.1 امید (سایت) در 1384-06-05 03:53 (پاسخ)
albatteh man dide boodam ke ye nafar ba ye technic e sade ba ye class bedoon niaz be load extension i in kar ro karde bood
#8 ali masoudi (سایت) در 1384-06-06 04:33 (پاسخ)
ممنون میشم لینک اون یه نفر رو بهم بدین :-)

آخه مسلما برای این کار طرف باید بایت های فارسی و انگلیسی رو از هم تشخیص بده، انجام این کار با کد نویسی هم میشه، ولی من ترجیح دادم از امکانات موجود استفاده کنم (MB)

در مورد استفاده از fribidi هم، الگوریتم این روش و سورس های C این برنامه رو تو اینترنت دیدم، اما احتیاج به کد زنی زیادی داره که باز هم به دلایلی، تصمیم گرفتم با این توسعه کار کنم و مسلما برای اینکه بخوایم با این تابع کار نکنیم، احتیاج به کد زنی نسبتا زیادی داره......

در نهایت، فکر نکنم بشه با یک تکنیک ساده این مشکل رو حل کرد :-)
#8.1 امید (سایت) در 1384-06-06 09:27 (پاسخ)
http://www.phpclasses.org/browse/package/2132.html
#9 ali masdoui (سایت) در 1384-06-07 12:36 (پاسخ)
به نظر می رسه تابع فوق با فونت های ساختگی آقای عابدینی (خود برنامه نویس) کار کنه و این به نظر من اصلا مطلوب نیست.
در حالی که کد من با هر نوع فونتی که بشه گفت در خانواده یونیکد قرار می گیره، می تونه کار کنه.

ضمن اینکه حدس می زنم کد ایشون نتونه با جملات bidi کار کنه :-)

به زودی بررسی اش می کنم.

ممنون.
#9.1 امید (سایت) در 1384-06-09 03:50 (پاسخ)
من هم احتمالا برای چک کردن کارکتر ها بیارمش روی mbstring چون این طوری که من درست کردم مشکل پیش اومده
فکر کنم کد رو دیده باشی پر از if شده !!! :-))
#10 میلاد (سایت) در 1384-06-17 12:32 (پاسخ)
آره، خوبه.
حداقل mbstring الان جزو توسعه های رسمی PHP هست و حداقل روی تمام سرور هایی که من کانفیگ کردم، فعالش کردم، چون ایرانی ایم!! ;-)
#10.1 امید (سایت) در 1384-06-17 23:33 (پاسخ)
نسخه 1.1RC2 منتشر شد.
#11 امید (سایت) در 1384-10-05 00:28 (پاسخ)
جدا کار قشنگیه !
موفق باشی
#12 صادق (سایت) در 1385-01-07 10:19 (پاسخ)
It's really amazing you did a great job.
chejoori begam vaghean damet garm! heif ke nemitoonam be farsi khodemoon benevisam.

don't you want to turn it to a web service? using the UTF-8 font series from FarsiWeb Project, it can be a unique web service for Iraninans!
#13 Aziz (سایت) در 1385-01-09 14:05 (پاسخ)
ممنون صادق و عزیز :-)
پیشنهاد وب سرویس برای این تابع، فکر خیلی خوبیه، اما در ابعاد فعلی ای که دارم، از انتشار چنین مطالبی، و هجوم کاربران(درخواست ها)، و کم آوردن سرور و سایتم می ترسم :-)
دوست ندارم یک سرویسی رو راه بندازم که 4 روز بعدش مجبور بشم ببندمش!!
به هر حال ممنونم، پیشنهاد عالی ای بود :-)
#13.1 امید (سایت) در 1385-01-10 02:51 (پاسخ)
سلام خسته نباشید.توی php 5 که اصلا extension fribidi نداریم باید برای فارسی سازسی چیکارکنیم؟؟؟؟؟؟
#14 ArtCom در 1385-11-07 03:21 (پاسخ)
می تونید نسخه مربوط به ویندوز + PHP5 رو از اینجا بگیرید :-)
http://www.php.net/get/pecl-5.2.0-Win32.zip/from/a/mirror

اگر لینوکس دارید بگید تا لینک اون رو براتون بذارم.
#14.1 امید (سایت) در 1385-11-07 03:43 (پاسخ)
ممنون من اینو در حال حاضر برا windows می خوام . ولی لطف میکنید اگر برا linux هم لینکشو بذارید . بازم ممنون.
#15 ArtCom در 1385-11-07 04:44 (پاسخ)
سورس برنامه رو از اینجا بگیرید:
http://pecl.php.net/package/fribidi
#15.1 امید (سایت) در 1385-11-07 04:50 (پاسخ)
سلام خیلی متشکرم . میشه لطف کنید و مراحل انجام کار و استفاده از این کدها رو یه بار بنویسید . خیلی ممنون میشم.
با تشکر موفق باشید.
#16 ArtCom در 1385-11-08 02:39 (پاسخ)
خواهش می کنم...

تو لینوکس یا تو ویندوز؟!
تا حالا برنامه ای توی لینوکس کامپایل کردی؟! اگر نکردی که بیخیال شو... یعنی برو اول این مورد رو برای خودت برطرف کن، اونوقت نصب این توسعه رو پیگیری کن :-)
#16.1 امید (سایت) در 1385-11-08 02:45 (پاسخ)
ادامه‌ی این مطلب و توسعه های بعدی رو می تونید در لینک زیر ببینید:
http://oxygenws.com/blog/archives/63-persian_log2vis-RC3.html
#17 امید (سایت) در 1386-09-16 13:34 (پاسخ)
Hello

I can't understand Persian, but I have this problem when I try to run example.php

I get this error

Fatal error: Call to undefined function fribidi_log2vis() in D:\MyWeb\test\writeimage\persian_log2vis.php on line 134

I followed all the steps in the install file and enabled all the required extensions

any idea what's wrong?
#18 Saleh در 1387-05-08 15:07 (پاسخ)
It seems that you didn't install fribidi pecl extension.

///////

If you are using *Linux*, you should download fribidi from PECL site from:
http://pecl.php.net/package/fribidi

There are three ways to install a PECL extension, you should read them from here:
http://us3.php.net/manual/en/install.pecl.php
And, shared compile is preferred.

///////

If you are in *Windows*, please go to the following URL and download PECL extensions, and install it on your PHP:
http://pecl.php.net/package/fribidi

to install PECL, go to this URL:
http://us3.php.net/manual/en/install.pecl.windows.php

///////

Saleh, thanks for using this ext. And please leave me address of that website that you built with this extension.
#18.1 امید (سایت) در 1387-05-09 00:33 (پاسخ)

ارسال نظر

Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
Standard emoticons like :-) and ;-) are converted to images.
BBCode format allowed
:'( :-) :-| :-O :-( 8-) :-D :-P ;-) 
E-Mail addresses will not be displayed and will only be used for E-Mail notifications

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

 
نظرات ارسال شده قبل از نمایش داده شدن، باید مدیریت شوند.
 
 
این سایت توسط امید متقی راد با ایدهء اصلی از طرح ولادیمیر سیمو ویچ طراحی شده است و هرگونه کپی برداری از آن با ذکر منبع آزاد است.

خوراک‌ها

XML RSS 2.0 feed
XML RSS 2.0 نظر ها

ایمیل من

omi...@gmail.com

Google the Site

موضوعات

  • XML فایرفاکس (1)
  • XML لینوکس (10)
  • XML متفرقه (23)
  • XML چیستان (2)
  • XML پی‌اچ‌پی (15)
  • XML زنگ تفریح (2)
  • XML طراحی وب (4)

تمامی موضوعات

محبوب ترین مطالب

تقویم فارسی برای Google Personalized Homepage
(95)
روش های نگهداری فیلم - بخش دوم - تبدیل فایل های تصویری
(42)
زمین و گربه
(39)
تکامل چیست؟
(36)
روش های نگهداری فیلم - بخش سوم - تبدیل فایل های تصویری DVD
(35)
بزرگ ترین عدد
(32)
کاراکتر های فارسی در عکس توسط PHP
(30)
11 نکته مفید در مورد فایرفاکس
(28)
تغییر ظاهر وبلاگ
(26)
چگونگی فارسی سازی phpMyAdmin
(25)

آمار

آخرین نوشته: 1387-03-31 01:22
تعداد مطالب: 59
تعداد نظر ها: 733

لینک

لینک های روزانه

مقایسه‌ی کرنل ویندوز و لینوکس
عضویت در تیم اهدای عضو
Who uses Linux?
ده تغییر مهم مهاجران به لینوکس!
بهینه سازی فایرفاکس
امنیت شبکه (باگ تراک)
طریقه توسعه افزونه، برای فایرفاکس
اینترنت اکسپلورر 7 را بمباران کنید
رفع مشکل حافظه فایرفاکس
نمایش محتویات cache شده در فایرفاکس

قبل | بعد

PageRank Counter

کپی برداری از مطالب سایت طبق لایسنس CC مجاز می باشد

Creative Commons License - Some Rights Reserved
Original content in this work is licensed under a Creative Commons License

نظر ها

امید about فایرفاکس ۳ در ایران
ش، 25.08.1387 11:16
رای‌نامه‌ام که اون گ وشه هست! آی‌دی‌های یاهو و کوفت و زهرمار رو هم که بلدی، یه پ یام بده دیگه :-D


امیر about فایرفاکس ۳ در ایران
ش، 25.08.1387 08:40
سلام، راه حلی داری ک ه چطور میشه پیدات کر د؟ من شماره هات را گ میدم در نتیجه خودت ر و هم ... 8-)


امید about روش های نگهداری فیلم - بخش دوم - تبدیل فایل های تصویری
د، 13.08.1387 04:43
دقیق نمی‌تونم پاسخت رو بدم، چون کاری که می‌گی رو تا الان انج ام ندادم. اما فکر کن م XviD بهترین [...]


احسان about روش های نگهداری فیلم - بخش دوم - تبدیل فایل های تصویری
د، 13.08.1387 01:59
سلام باز هم متشکر م که جواب دادبد.منظو ر اصلی من این بود که من الان این فایلها را با فرمت MP4 [...]


امید about روش های نگهداری فیلم - بخش دوم - تبدیل فایل های تصویری
ی، 12.08.1387 13:21
خواهش می‌کنم، نظر لط ف‌تونه. MP4 یه رو شی است که از روی اون کدک‌هایی مثل DivX و XviD رو درست [...]


احسان about روش های نگهداری فیلم - بخش دوم - تبدیل فایل های تصویری
ی، 12.08.1387 10:26
سلام به آقا امید من خیلی شیفته این مق الات شما شدم. البته تا حدودی متوجه میشم میخواستم اگر م [...]


محمود about روش های نگهداری فیلم - بخش دوم - تبدیل فایل های تصویری
ی، 07.07.1387 14:11
دستت درد نکنه.


امید about فایرفاکس ۳ در ایران
چ، 20.06.1387 14:54
سلام، ممنون، یه م قداری درگیر زندگی‌ام ، ضمن این‌که فعلا ای ده‌ی جالب و هیجان ان گیزی برای نوشت [...]


آرین about فایرفاکس ۳ در ایران
چ، 20.06.1387 10:04
سلام سه ماهی هست که خبری ازت نیست کجایی ؟


امید about کاراکتر های فارسی در عکس توسط PHP
چ، 09.05.1387 00:33
It seems that you di dn't install fribidi pecl extension. /////// If you ar e using *Linux [...]


مدیریت وبلاگ

باز کردن صفحه ورود