$font = imageloadfont("farsifont");
کسی فونت فارسی برای استفاده در این تابع نداره؟
یا! : می شه روی یه عکس متن فارسی بنویسیم؟
این تاپیکو با عنوان Imageloadfont هم ایجاد کردم ولی کسی جواب نداد فکر کنم عنوانش یکم ترسناک بود!![]()
$font = imageloadfont("farsifont");
کسی فونت فارسی برای استفاده در این تابع نداره؟
یا! : می شه روی یه عکس متن فارسی بنویسیم؟
این تاپیکو با عنوان Imageloadfont هم ایجاد کردم ولی کسی جواب نداد فکر کنم عنوانش یکم ترسناک بود!![]()
دوست عزیزمون I,Nobody نوشتن که :
این مشکل اغلب برنامه نویس های ایرانی هست که فکر نمی کنم هنوز حل شده باشه.
البته یادمه قبلاً یکی دو نفر(یا تیم) این کارو انجام داده بودن ولی متاسفانه معماری رو توضیح ندادن و میخواستن ازش استفاده تجاری بکنن.
البته اونا هم فقط با یک فونت کار میکردن.
خیلی وقته که دیگه خبر ندارم که این مشکل حل شده یا نه؟ چون بهش نیاز پیدا نکردم.
اگه کسی چیزی پیدا کرده، لطفاً توی همین تاپیک قرار بده
برای ساخت فونت تو این عکس یه توضیحاتی داده ولی من چیزی . . .
فکر کنم فونتش باید فرمت خاصی داشته باشه![]()
نوشته شده توسط : I,Nobody
ساختن عکس با فونت های مختلف که کاری نداره.
PHP توابع غنی برای این کار داره.
مساله فارسی نویسی بدون اشکال در ساخت عکس هست.
متاسفانه این مشکل وجود داره و تابحال راه حلی به طور عمومی ارائه نشده، نظیر این مشکل در ساخت PDF توسط توابع مربوطه وجود داره که حل اون نیاز به کار تخصصی و با همکاری شورای حمایت از زبان پارسی در وب داره.
www.myview.ir
مشکل حل شد: http://developer.berlios.de/project/...?group_id=4533
مسیر دوم برای دانلود فایل ها: http://daszarrin.persiangig.com/PHP/...is-2.0.tar.bz2
قبلا در موردش تو همین انجمن بحث شده. سرچ بزنید!! فکر کنم در بخش تاپیک های مهم هم باشه. همانطر که گقته شد هنوز راه حل جامع ارایه نشده.
- هر کجا قرار گرفته اید, همانجا را مرکز دنیا بدانید.
- mrfarhad05.blogfa.com




من هم دارم یک کلاس ساده و راحت برای فارسی نویسی روی عکس مینویسم که به محض تکمیل، اینجا میگذارم. سعی کردم خیلی ساده تر از کدهای مشابه باشه و به کتابخانه خاصی هم نیاز نداره. موفق باشید.
تشکیل نهاد حمایت از برنامه نویسان
استخدام برنامه نویس PHP و برنامه نویس C++ در اصفهان با شرایط مناسب
مردم دنیا 10 دسته هستند: کسانی که باینری میفهمند و کسانی که باینری نمیفهمند !
آموزش علوم كامپیوتر بصورت رایگان در nCIS
سامانه پیامک nCIS
قوانین برنامه نویس
مهم اینه که درست کار کنه
اگه درست کار کنه فوقالعاده هست...




هم درست کار میکنه، هم اینکه همراه با آموزش هست که خودتون هم بتونید در موارد مشابه، دست به کار بشین. موفق باشید.
تشکیل نهاد حمایت از برنامه نویسان
استخدام برنامه نویس PHP و برنامه نویس C++ در اصفهان با شرایط مناسب
مردم دنیا 10 دسته هستند: کسانی که باینری میفهمند و کسانی که باینری نمیفهمند !
آموزش علوم كامپیوتر بصورت رایگان در nCIS
سامانه پیامک nCIS
قوانین برنامه نویس




این کد رو ببینید (البته اینجا کمی بهم ریخته، بخصوص خونه های آرایه های حاوی حروف فارسی که از آخر به اول نوشته شده - بخاطر ادیتور - و بخاطر همین فایلش رو هم ضمیمه کردم) :
این هم نمونه خروجی اون هست (من کد رو توی پوشه faimage و به اسم index.php ذخیره کردم و بصورت مهمان خوانده یا ناخوانده حبیب خداست=localhost/faimage/?string اون رو صدا زدم) :
<?php
function farsi_correct($string) {
// Reverse the string
$len = mb_strlen($string, 'utf-8');
$result = '';
for($i = ($len - 1); $i >= 0; $i--) {
$result .= mb_substr($string, $i, 1, 'utf-8');
}
// These chars work as space when a character comes after them, so the next character will not connect to them
$spaces_after = array('', ' ', 'ا', 'آ', 'أ', 'إ', 'د', 'ذ', 'ر', 'ز', 'ژ', 'و', 'ؤ');
// These chars work as space when a character comes before them, so the previous character will not connect to them
$spaces_before = array('', ' ');
// Persian chars with their different styles at different positions:
// Alone, After a non-space char, Before a non-space char, between two non-space chars
$chars = array();
$chars[] = array('آ', 'ﺂ', 'آ', 'ﺂ');
$chars[] = array('أ', 'ﺄ', 'ﺃ', 'ﺄ');
$chars[] = array('إ', 'ﺈ', 'ﺇ', 'ﺈ');
$chars[] = array('ا', 'ﺎ', 'ا', 'ﺎ');
$chars[] = array('ب', 'ﺐ', 'ﺑ', 'ﺒ');
$chars[] = array('پ', 'ﭗ', 'ﭘ', 'ﭙ');
$chars[] = array('ت', 'ﺖ', 'ﺗ', 'ﺘ');
$chars[] = array('ث', 'ﺚ', 'ﺛ', 'ﺜ');
$chars[] = array('ج', 'ﺞ', 'ﺟ', 'ﺠ');
$chars[] = array('چ', 'ﭻ', 'ﭼ', 'ﭽ');
$chars[] = array('ح', 'ﺢ', 'ﺣ', 'ﺤ');
$chars[] = array('خ', 'ﺦ', 'ﺧ', 'ﺨ');
$chars[] = array('د', 'ﺪ', 'ﺩ', 'ﺪ');
$chars[] = array('ذ', 'ﺬ', 'ﺫ', 'ﺬ');
$chars[] = array('ر', 'ﺮ', 'ﺭ', 'ﺮ');
$chars[] = array('ز', 'ﺰ', 'ﺯ', 'ﺰ');
$chars[] = array('ژ', 'ﮋ', 'ﮊ', 'ﮋ');
$chars[] = array('س', 'ﺲ', 'ﺳ', 'ﺴ');
$chars[] = array('ش', 'ﺶ', 'ﺷ', 'ﺸ');
$chars[] = array('ص', 'ﺺ', 'ﺻ', 'ﺼ');
$chars[] = array('ض', 'ﺾ', 'ﺿ', 'ﻀ');
$chars[] = array('ط', 'ﻂ', 'ﻃ', 'ﻄ');
$chars[] = array('ظ', 'ﻆ', 'ﻇ', 'ﻈ');
$chars[] = array('ع', 'ﻊ', 'ﻋ', 'ﻌ');
$chars[] = array('غ', 'ﻎ', 'ﻏ', 'ﻐ');
$chars[] = array('ف', 'ﻒ', 'ﻓ', 'ﻔ');
$chars[] = array('ق', 'ﻖ', 'ﻗ', 'ﻘ');
$chars[] = array('ک', 'ﻚ', 'ﻛ', 'ﻜ');
$chars[] = array('ك', 'ﻚ', 'ﻛ', 'ﻜ');
$chars[] = array('گ', 'ﮓ', 'ﮔ', 'ﮕ');
$chars[] = array('ل', 'ﻞ', 'ﻟ', 'ﻠ');
$chars[] = array('م', 'ﻢ', 'ﻣ', 'ﻤ');
$chars[] = array('ن', 'ﻦ', 'ﻧ', 'ﻨ');
$chars[] = array('و', 'ﻮ', 'ﻭ', 'ﻮ');
$chars[] = array('ؤ', 'ﺆ', 'ﺅ', 'ﺆ');
$chars[] = array('ی', 'ﯽ', 'ﯾ', 'ﯿ');
$chars[] = array('ي', 'ﻲ', 'ﻳ', 'ﻴ');
$chars[] = array('ئ', 'ﺊ', 'ﺋ', 'ﺌ');
$chars[] = array('ه', 'ﻪ', 'ﮬ', 'ﮭ');
$chars[] = array('ۀ', 'ﮥ', 'ﮬ', 'ﮭ');
$chars[] = array('ة', 'ﺔ', 'ﺗ', 'ﺘ');
$chars[] = array(' ', ' ', ' ', ' ');
$chars[] = array('0', '0', '0', '0');
$chars[] = array('1', '1', '1', '1');
$chars[] = array('2', '2', '2', '2');
$chars[] = array('3', '3', '3', '3');
$chars[] = array('4', '4', '4', '4');
$chars[] = array('5', '5', '5', '5');
$chars[] = array('6', '6', '6', '6');
$chars[] = array('7', '7', '7', '7');
$chars[] = array('8', '8', '8', '8');
$chars[] = array('9', '9', '9', '9');
// Start processing the reversed string
$string = $result;
$len = mb_strlen($string, 'utf-8');
$result = '';
for($i = 0; $i < $len; $i++) {
$previous_char = $i > 0 ? mb_substr($string, $i - 1, 1, 'utf-8') : '';
$current_char = mb_substr($string, $i, 1, 'utf-8');
$next_char = $i < ($len - 1) ? mb_substr($string, $i + 1, 1, 'utf-8') : '';
foreach($chars as $char) {
if(in_array($current_char, $char)) {
if(!in_array($next_char, $spaces_after) && !in_array($previous_char, $spaces_before)) {
$result .= $char[3];
}
elseif(!in_array($previous_char, $spaces_before)) {
$result .= $char[2];
}
elseif(!in_array($next_char, $spaces_after)) {
$result .= $char[1];
}
else {
$result .= $char[0];
}
}
}
}
return $result;
}
$string = isset($_GET['string']) ? farsi_correct($_GET['string']) : '';
$w = 300;
$h = 200;
$im = imagecreatetruecolor($w, $h);
$c_green = imagecolorallocate($im, 127, 255, 127);
$c_black = imagecolorallocate($im, 0, 0, 0);
imagefill($im, ceil($w / 2), ceil($h / 2), $c_green);
$box = imagettfbbox(10, 0, 'tahoma.ttf', $string);
imagettftext($im, 10, 0, ($w - $box[4]) / 2, ($h - $box[5]) / 2, $c_black, 'tahoma.ttf', $string);
header('Content-Type: image/png');
imagepng($im);
imagedestroy($im);
?>
faimage.jpg
فعلاً بصورت یک تابع نوشتمش. کار تابع مذکور (farsi_correct) تبدیل متن فارسی به شکل درست برای نمایش توسط GD هست. اگه فرصت کنم، بصورت یک کلاس در میارمش که بتونید به هر شکل دلخواه ازش استفاده کنید. هرجایی از کد نیاز به توضیح داشت، بفرمایید تا توضیحات لازم رو ارائه کنم.
موفق باشید.
تشکیل نهاد حمایت از برنامه نویسان
استخدام برنامه نویس PHP و برنامه نویس C++ در اصفهان با شرایط مناسب
مردم دنیا 10 دسته هستند: کسانی که باینری میفهمند و کسانی که باینری نمیفهمند !
آموزش علوم كامپیوتر بصورت رایگان در nCIS
سامانه پیامک nCIS
قوانین برنامه نویس




البته همونطور که میبینید، همه کارکترها رو توی این فایل نگذاشتم و خودتون میتونید تکمیلش کنید. مثلاً الآن نقطه و کاما و... یا ء (همزه) رو نمیشناسه. اگه بخواین این کارکترها رو اضافه کنید، باید هم در آرایه chars اونها رو قرار بدین (حالتهای تنها، چسبیده به حرف قبل، چسبیده به حرف بعد و ازدوطرف چسبیده رو باید تعریف کنید که مثلاً برای کاما و همزه و نقطه، هر چهار حالت مثل هم هست). ضمناً اگه کارکتر مربوطه به حرف بعدیش نمی چسبه، اون رو توی آرایه spaces_after و اگه به حرف قبلیش نمیچسبه، به spaces_before اضافه کنید. مثلاً نقطه توی هر دو آرایه قرار میگیره. اگه اینکار رو نکنید، حروف قبل و بعدش درست ظاهر نمیشه. موفق باشید.
تشکیل نهاد حمایت از برنامه نویسان
استخدام برنامه نویس PHP و برنامه نویس C++ در اصفهان با شرایط مناسب
مردم دنیا 10 دسته هستند: کسانی که باینری میفهمند و کسانی که باینری نمیفهمند !
آموزش علوم كامپیوتر بصورت رایگان در nCIS
سامانه پیامک nCIS
قوانین برنامه نویس
این کدی که قرار دادین خیلی خوبه ولی تنها اشکالی که داره اینکه اگه متن حروف انگلیسی توش باشه ائنا حذف میشن ... میتونین اینو اصلاح کنین ؟؟؟
تدریس خصوصی در تبریز
adeli.farhad@gmail.com
انجام پروژه و کسب در آمد




اینو امتحان کنید:
<?php
function farsi_correct($string) {
// Reverse the string
$len = mb_strlen($string, 'utf-8');
$result = '';
for($i = ($len - 1); $i >= 0; $i--) {
$result .= mb_substr($string, $i, 1, 'utf-8');
}
// These chars work as space when a character comes after them, so the next character will not connect to them
$spaces_after = array('', ' ', 'ا', 'آ', 'أ', 'إ', 'د', 'ذ', 'ر', 'ز', 'ژ', 'و', 'ؤ');
// These chars work as space when a character comes before them, so the previous character will not connect to them
$spaces_before = array('', ' ');
// Persian chars with their different styles at different positions:
// Alone, After a non-space char, Before a non-space char, between two non-space chars
$chars = array();
$chars[] = array('آ', 'ﺂ', 'آ', 'ﺂ');
$chars[] = array('أ', 'ﺄ', 'ﺃ', 'ﺄ');
$chars[] = array('إ', 'ﺈ', 'ﺇ', 'ﺈ');
$chars[] = array('ا', 'ﺎ', 'ا', 'ﺎ');
$chars[] = array('ب', 'ﺐ', 'ﺑ', 'ﺒ');
$chars[] = array('پ', 'ﭗ', 'ﭘ', 'ﭙ');
$chars[] = array('ت', 'ﺖ', 'ﺗ', 'ﺘ');
$chars[] = array('ث', 'ﺚ', 'ﺛ', 'ﺜ');
$chars[] = array('ج', 'ﺞ', 'ﺟ', 'ﺠ');
$chars[] = array('چ', 'ﭻ', 'ﭼ', 'ﭽ');
$chars[] = array('ح', 'ﺢ', 'ﺣ', 'ﺤ');
$chars[] = array('خ', 'ﺦ', 'ﺧ', 'ﺨ');
$chars[] = array('د', 'ﺪ', 'ﺩ', 'ﺪ');
$chars[] = array('ذ', 'ﺬ', 'ﺫ', 'ﺬ');
$chars[] = array('ر', 'ﺮ', 'ﺭ', 'ﺮ');
$chars[] = array('ز', 'ﺰ', 'ﺯ', 'ﺰ');
$chars[] = array('ژ', 'ﮋ', 'ﮊ', 'ﮋ');
$chars[] = array('س', 'ﺲ', 'ﺳ', 'ﺴ');
$chars[] = array('ش', 'ﺶ', 'ﺷ', 'ﺸ');
$chars[] = array('ص', 'ﺺ', 'ﺻ', 'ﺼ');
$chars[] = array('ض', 'ﺾ', 'ﺿ', 'ﻀ');
$chars[] = array('ط', 'ﻂ', 'ﻃ', 'ﻄ');
$chars[] = array('ظ', 'ﻆ', 'ﻇ', 'ﻈ');
$chars[] = array('ع', 'ﻊ', 'ﻋ', 'ﻌ');
$chars[] = array('غ', 'ﻎ', 'ﻏ', 'ﻐ');
$chars[] = array('ف', 'ﻒ', 'ﻓ', 'ﻔ');
$chars[] = array('ق', 'ﻖ', 'ﻗ', 'ﻘ');
$chars[] = array('ک', 'ﻚ', 'ﻛ', 'ﻜ');
$chars[] = array('ك', 'ﻚ', 'ﻛ', 'ﻜ');
$chars[] = array('گ', 'ﮓ', 'ﮔ', 'ﮕ');
$chars[] = array('ل', 'ﻞ', 'ﻟ', 'ﻠ');
$chars[] = array('م', 'ﻢ', 'ﻣ', 'ﻤ');
$chars[] = array('ن', 'ﻦ', 'ﻧ', 'ﻨ');
$chars[] = array('و', 'ﻮ', 'ﻭ', 'ﻮ');
$chars[] = array('ؤ', 'ﺆ', 'ﺅ', 'ﺆ');
$chars[] = array('ی', 'ﯽ', 'ﯾ', 'ﯿ');
$chars[] = array('ي', 'ﻲ', 'ﻳ', 'ﻴ');
$chars[] = array('ئ', 'ﺊ', 'ﺋ', 'ﺌ');
$chars[] = array('ه', 'ﻪ', 'ﮬ', 'ﮭ');
$chars[] = array('ۀ', 'ﮥ', 'ﮬ', 'ﮭ');
$chars[] = array('ة', 'ﺔ', 'ﺗ', 'ﺘ');
$chars[] = array(' ', ' ', ' ', ' ');
$chars[] = array('0', '0', '0', '0');
$chars[] = array('1', '1', '1', '1');
$chars[] = array('2', '2', '2', '2');
$chars[] = array('3', '3', '3', '3');
$chars[] = array('4', '4', '4', '4');
$chars[] = array('5', '5', '5', '5');
$chars[] = array('6', '6', '6', '6');
$chars[] = array('7', '7', '7', '7');
$chars[] = array('8', '8', '8', '8');
$chars[] = array('9', '9', '9', '9');
$engs = array_merge(range('A', 'Z'), range('a', 'z');
foreach($engs as $eng) {
$chars[] = array($eng, $eng, $eng, $eng);
}
// Start processing the reversed string
$string = $result;
$len = mb_strlen($string, 'utf-8');
$result = '';
for($i = 0; $i < $len; $i++) {
$previous_char = $i > 0 ? mb_substr($string, $i - 1, 1, 'utf-8') : '';
$current_char = mb_substr($string, $i, 1, 'utf-8');
$next_char = $i < ($len - 1) ? mb_substr($string, $i + 1, 1, 'utf-8') : '';
foreach($chars as $char) {
if(in_array($current_char, $char)) {
if(!in_array($next_char, $spaces_after) && !in_array($previous_char, $spaces_before)) {
$result .= $char[3];
}
elseif(!in_array($previous_char, $spaces_before)) {
$result .= $char[2];
}
elseif(!in_array($next_char, $spaces_after)) {
$result .= $char[1];
}
else {
$result .= $char[0];
}
}
}
}
return $result;
}
$string = isset($_GET['string']) ? farsi_correct($_GET['string']) : '';
$w = 300;
$h = 200;
$im = imagecreatetruecolor($w, $h);
$c_green = imagecolorallocate($im, 127, 255, 127);
$c_black = imagecolorallocate($im, 0, 0, 0);
imagefill($im, ceil($w / 2), ceil($h / 2), $c_green);
$box = imagettfbbox(10, 0, 'tahoma.ttf', $string);
imagettftext($im, 10, 0, ($w - $box[4]) / 2, ($h - $box[5]) / 2, $c_black, 'tahoma.ttf', $string);
header('Content-Type: image/png');
imagepng($im);
imagedestroy($im);
?>
تشکیل نهاد حمایت از برنامه نویسان
استخدام برنامه نویس PHP و برنامه نویس C++ در اصفهان با شرایط مناسب
مردم دنیا 10 دسته هستند: کسانی که باینری میفهمند و کسانی که باینری نمیفهمند !
آموزش علوم كامپیوتر بصورت رایگان در nCIS
سامانه پیامک nCIS
قوانین برنامه نویس
برعکس چاپ میکنه![]()
تدریس خصوصی در تبریز
adeli.farhad@gmail.com
انجام پروژه و کسب در آمد
ok خودم درستش کردم ... کدشو کاملتر کردم که تمام حروف رو شامل بشه ...
الان جملات انگلیسی هم درست چاپ میشن ...
function farsi_correct($string)
{
// Reverse the string
$len = mb_strlen($string, 'utf-8');
$result = '';
for ($i = ($len - 1); $i >= 0; $i--) {
$result .= mb_substr($string, $i, 1, 'utf-8');
}
// These chars work as space when a character comes after them, so the next character will not connect to them
$spaces_after = array('', ' ', 'ا', 'آ', 'أ', 'إ', 'د', 'ذ', 'ر', 'ز', 'ژ', 'و', 'ؤ');
// These chars work as space when a character comes before them, so the previous character will not connect to them
$spaces_before = array('', ' ');
// Persian chars with their different styles at different positions:
// Alone, After a non-space char, Before a non-space char, between two non-space chars
$chars = array();
$chars[] = array('آ', 'ﺂ', 'آ', 'ﺂ');
$chars[] = array('أ', 'ﺄ', 'ﺃ', 'ﺄ');
$chars[] = array('إ', 'ﺈ', 'ﺇ', 'ﺈ');
$chars[] = array('ا', 'ﺎ', 'ا', 'ﺎ');
$chars[] = array('ب', 'ﺐ', 'ﺑ', 'ﺒ');
$chars[] = array('پ', 'ﭗ', 'ﭘ', 'ﭙ');
$chars[] = array('ت', 'ﺖ', 'ﺗ', 'ﺘ');
$chars[] = array('ث', 'ﺚ', 'ﺛ', 'ﺜ');
$chars[] = array('ج', 'ﺞ', 'ﺟ', 'ﺠ');
$chars[] = array('چ', 'ﭻ', 'ﭼ', 'ﭽ');
$chars[] = array('ح', 'ﺢ', 'ﺣ', 'ﺤ');
$chars[] = array('خ', 'ﺦ', 'ﺧ', 'ﺨ');
$chars[] = array('د', 'ﺪ', 'ﺩ', 'ﺪ');
$chars[] = array('ذ', 'ﺬ', 'ﺫ', 'ﺬ');
$chars[] = array('ر', 'ﺮ', 'ﺭ', 'ﺮ');
$chars[] = array('ز', 'ﺰ', 'ﺯ', 'ﺰ');
$chars[] = array('ژ', 'ﮋ', 'ﮊ', 'ﮋ');
$chars[] = array('س', 'ﺲ', 'ﺳ', 'ﺴ');
$chars[] = array('ش', 'ﺶ', 'ﺷ', 'ﺸ');
$chars[] = array('ص', 'ﺺ', 'ﺻ', 'ﺼ');
$chars[] = array('ض', 'ﺾ', 'ﺿ', 'ﻀ');
$chars[] = array('ط', 'ﻂ', 'ﻃ', 'ﻄ');
$chars[] = array('ظ', 'ﻆ', 'ﻇ', 'ﻈ');
$chars[] = array('ع', 'ﻊ', 'ﻋ', 'ﻌ');
$chars[] = array('غ', 'ﻎ', 'ﻏ', 'ﻐ');
$chars[] = array('ف', 'ﻒ', 'ﻓ', 'ﻔ');
$chars[] = array('ق', 'ﻖ', 'ﻗ', 'ﻘ');
$chars[] = array('ک', 'ﻚ', 'ﻛ', 'ﻜ');
$chars[] = array('ك', 'ﻚ', 'ﻛ', 'ﻜ');
$chars[] = array('گ', 'ﮓ', 'ﮔ', 'ﮕ');
$chars[] = array('ل', 'ﻞ', 'ﻟ', 'ﻠ');
$chars[] = array('م', 'ﻢ', 'ﻣ', 'ﻤ');
$chars[] = array('ن', 'ﻦ', 'ﻧ', 'ﻨ');
$chars[] = array('و', 'ﻮ', 'ﻭ', 'ﻮ');
$chars[] = array('ؤ', 'ﺆ', 'ﺅ', 'ﺆ');
$chars[] = array('ی', 'ﯽ', 'ﯾ', 'ﯿ');
$chars[] = array('ي', 'ﻲ', 'ﻳ', 'ﻴ');
$chars[] = array('ئ', 'ﺊ', 'ﺋ', 'ﺌ');
$chars[] = array('ه', 'ﻪ', 'ﮬ', 'ﮭ');
$chars[] = array('ۀ', 'ﮥ', 'ﮬ', 'ﮭ');
$chars[] = array('ة', 'ﺔ', 'ﺗ', 'ﺘ');
$chars[] = array(' ', ' ', ' ', ' ');
$chars[] = array('0', '0', '0', '0');
$chars[] = array('1', '1', '1', '1');
$chars[] = array('2', '2', '2', '2');
$chars[] = array('3', '3', '3', '3');
$chars[] = array('4', '4', '4', '4');
$chars[] = array('5', '5', '5', '5');
$chars[] = array('6', '6', '6', '6');
$chars[] = array('7', '7', '7', '7');
$chars[] = array('8', '8', '8', '8');
$chars[] = array('9', '9', '9', '9');
$string = $result;
$len = mb_strlen($string, 'utf-8');
$result = '';
$buffer = array();
for ($i = 0; $i < $len; $i++) {
$previous_char = $i > 0 ? mb_substr($string, $i - 1, 1, 'utf-8') : '';
$current_char = mb_substr($string, $i, 1, 'utf-8');
$next_char = $i < ($len - 1) ? mb_substr($string, $i + 1, 1, 'utf-8') : '';
$in_array = false;
foreach ($chars as $char) {
if (in_array($current_char, $char)) {
$in_array = true;
if (!in_array($next_char, $spaces_after) && !in_array($previous_char, $spaces_before)) {
if ($current_char == ' ') {
if (!in_farsi_array($chars, $next_char) && !in_farsi_array($chars, $previous_char))
$in_array = false;
else
$result .= $char[3];
} else
$result .= $char[3];
} elseif (!in_array($previous_char, $spaces_before)) {
$result .= $char[2];
}
elseif (!in_array($next_char, $spaces_after)) {
$result .= $char[1];
}
else {
$result .= $char[0];
}
continue;
}
}
if (!$in_array) {
$buffer[] = $current_char;
$in_array = false;
} else {
$result .= implode('', array_reverse($buffer));
$buffer = array();
}
}
if (!empty($buffer))
$result .= implode('', array_reverse($buffer));
return $result;
}
function in_farsi_array(&$farsi, $text)
{
foreach ($farsi as $t) {
if (in_array($text, $t))
return true;
}
return false;
}
آخرین ویرایش به وسیله exlord : دوشنبه 15 خرداد 1391 در 12:09 عصر دلیل: کاملتر کردن کد
تدریس خصوصی در تبریز
adeli.farhad@gmail.com
انجام پروژه و کسب در آمد
Warning: imagettfbbox() [function.imagettfbbox]: any2eucjp(): something happen in E:\xampp\htdocs\faimage\faimage\index.php on line 136
Warning: imagettftext() [function.imagettftext]: any2eucjp(): something happen in E:\xampp\htdocs\faimage\faimage\index.php on line 137
Warning: Cannot modify header information - headers already sent by (output started at E:\xampp\htdocs\faimage\faimage\index.php:136) in E:\xampp\htdocs\sobhansoft\quota\faimage\faimage\i ndex.php on line 138
‰PNG IHDR,ÈݽK–IDATxœíÙOh×uÇñïúå6Æ Ööc bBèr·¼Yø<ÌÔƒQ;Ф`‡ô¢—uØIªCF ‡Ýü]&;'æPå¥VÊí'nΦ[‡"v°?“µ×o¿=‡ßåûÏû÷ýòäóýñk X(€œgÒÀF'B!„‰ÂDa"„0B˜!L„& B!„‰ÂDa"„0B˜!L„&B!„‰ÂDa" „0B˜!L„&B!„‰ÂDa"„0B˜!L„&B !„‰ÂDa"„0B˜!L„&B!„‰ÂDa" 0B˜!L„&B!„‰ÂDa"„0B˜!L„&B !„‰ÂDa"„0B˜!L„&B!„‰ÂDa" 0B˜!L„&B!„‰ÂDa"„0B˜!L„&B !„‰ÂDa"„0B˜!L„&B!„‰ÂDa"„ °gÓüi°i°ÜS~â¥û÷ÏÎýï˪?V+ý• ßÝÝúÆÖC_j.7¯ú«¾l¹Zžó)¾Îrëån¬ Z‰°s[çñï?ñÒ…Þ+ZVé¯tnëüíackcC©!=ÔÆÒ NoQ‹‹&ls{¥¿²ôxÉSøõaù¥r¹§|ó ³›»>Ø5vq¬gwOz¢ grlräôÈÄ×¥ÆRÓsMEQ,>Z,•Jé¹jW½½ŽEÑ ÷yßOo6NÝšÚ÷ñ¾ô8ËÂÜÂÐî¡öÛOŽŸ<3{æH Hz¢u ÞN¢(¶¼¾åÔS³wf;¶v¤gÙp¦Ç§ç«ó{Î íiéjIϲnÔáIXE©©¤ÀˆrOyS˦ëŸ\Ÿþaz| xüò»—ÓµrVªþÝ5÷~¾·Òek°Åÿ7p-Ïù¯ËšÚ›uøÊ{W®ž»Úýj÷Ž·vL~;¹Ò]–‹?Ž5Ð0°4Ú(êõuÖB˜!L„&B!„ ‰ÂDa"„0B˜!L„&B!„‰ÂDa"„0B !L„&B!„‰ÂDa"„0B˜!L„&B!„ ÂDa"„0B˜!L„&B!„‰ÂDa"„0B˜ !L„&B!„‰ÂDa"„0B˜!L„&B!„ ÂDa"„0B˜!L„&B!„‰ÂDa"„0B˜ !L„&B!„‰ÂDa"„0B˜!L„&B!„‰ ÂDa"„0B˜!L„&B!„‰ÂDa"„0B˜! L„&B!„ý¿¢}d¤IEND
ایرور میده
www.sobhansoft.com
www.sobhansoft.net
www.4-afg.com
www.narjobs.com
ی , ه هم مشکل داره
www.sobhansoft.com
www.sobhansoft.net
www.4-afg.com
www.narjobs.com
درستش کردم ولی یه مشکل هنوزم دارم چطوری حرف دیگه رو اضافه کنم , ><)( ".
www.sobhansoft.com
www.sobhansoft.net
www.4-afg.com
www.narjobs.com
در حال حاضر 1 کاربر در حال مشاهده این تاپیک هستند. (0 کاربر عضو و 1 مهمان)
بوک مارک کردن این تاپیک