ایجاد متن روی عکس با PHP

سلام به همه دوستان عزیز 😀 میخوام یه اموزش دیگه در مورد نحوه ی کار با کتابخونه ی WideImage توی PHP براتون بزارم. اگه نمیدونید چیه و چجوری باید باهاش کار کرد میتونید اینجا رو ببینید(کلیک کنید) و دوباره به همین پست برگردید , سورس کد مربوط به اموزش هایی که در این پست میزارم رو میتونید از انتهای همین پست دانلود کنید.

برای ایجاد یک متن روی عکس با استفاده از WideImage کافیه که به صورت زیر عمل کنید:

در دستورات بالا ابتدا عکس اصلی خودمون که میخوایم روش متن مورد نظرمون رو بنویسیم لود میکنیم , بعدش سایز عکس رو ۴۰۰ در ۴۰۰ در نظر میگیریم. در مرحله بعد Canvas یا همون بوم نقاشی خودمون رو توی متغیر ذخیره میکنیم. حالا با استفاده از این Canvas میتونیم روی عکس هرکاری میخوایم بکنیم 😀 یه فونت لود میکنیم و اندازه ی اون رو ۱۴ پیکسل قرار میدیم. بعدش رنگش رو مشخص میکنیم. برای مشخص کردن رنگ کافیه که به صورت RGB توی CSS عمل کنید , میتونید سه تا عدد بین ۰ تا ۲۵۵ برای هر رنگ مشخص کنید.

در مرحله بعد با استفاده از تابع writeText روی عکس خودمن متن مورد نظر رو درج میکنیم. دقت کنید دو ارگومان اول برای محل نوشتن متن و ارگومان اخر نیز متن مورد نظر ما رو مشخص میکنه. محل نوشته شدن متن رو میتونید با عدد (که پیکسل در نظر گرفته میشه) و یا درصد و یا دستورات top , left , bottom , right مشخص کنید. در اخر با استفاده از دستور saveToFile یه اسم میدیم تا عکس ما با اسمی که دادیم ذخیره بشه.

نکته : اگه میخواید متن فارسی روی عکس بنویسید باید از فونت های فارسی استفاده کنید و اگه میخواید متن انگلیسی بنویسید باید فونتی که انتخاب میکنید انگلیسی باشه در غیر این صورت متن به صورت مربع های بدون معنا در میاد!

توی PHP شما وقتی که متن فارسی رو میخواید روی عکس درج کنید متن به صورت ltr (چپ به راست) و حروف جدا از هم درج میشه. برای حل این مشکل میتونید از کتابخونه FarsiGD استفاده کنید به صورت زیر :

در مثال بالا متن رو قبل از اینکه روی عکس درج کنیم فارسی سازی کردیم و توی متغیر x قرار دادیم و بعدش روی عکس نوشتیم 😀 به همین راحتی مشکل درج متن فارسی روی عکس در PHP رو حل کردیم 😀

مثال هایی که در این اموزش زدیم به همراه سورس کد کتابخونه wideImage و persianGD رو میتونید از انتهای همین اموزش دانلود کنید. دوستانی که سوال یا مشکلی دارند از بخش نظرات پایین همین پست مطرح کنند تا پاسخ بدم. موفق باشید.

درج متن روی عکس با WideImage در PHP
128.1 KiB
72 Downloads
اطلاعات بیشتر
به اشتراک بگذارید:Email this to someoneShare on FacebookTweet about this on TwitterShare on Google+Digg thisShare on LinkedInPin on PinterestShare on StumbleUponFlattr the authorShare on RedditBuffer this pageShare on TumblrPrint this pageShare on YummlyShare on VK
  1. abolfazl

    سلام
    من روی هاست و لوکال هاست تست کردم ولی تو هیچکدومشون هیچ اتفاقی نیفتاد 🙁

    • کدها همه تست شده هست! حتما جایی اشتباه کردید. نسخه php خودتون رو چک کنید کمتر از ۵٫۶ نباشه

  2. abolfazl

    هم توضیح خوبی بود هم سبک بیان
    پیشنهاد میکنم کانال تلگرام بسازید و روش وقت بذارید 😉
    بازم ممنون

می‌خواهید دیدگاهتان را بیان کنید؟