logo2

-----------------------------------------------

** (160 جلسه) آموزش کامل و 0 تا 100 برنامه نویسی PHP **

آخرین مطالب ارسال شده

مطالب بر اساس ماه

تبلیغات

تبلیغات

پست ثابت

برای ورود کلیک کنید

تبلیغات

پست ثابت

برای ورود کلیک کنید

فرض کنید که یک عکس داریم و می خواهیم که یک طرح (watermark – stamp) در گوشه پایین و سمت راست آن عکس قرار بدهیم. طرح شامل دو متن خواهد بود که آنها را در کدها تعیین می کنیم و یک کادر مستطیلی شکل هم به دور آن دو متن، ساخته می شود. این طرح به صورت نیمه شفاف خواهد بود و میزان شفافیت را هم می توانیم تغییر بدهیم. دقت کنید که از توابع کتابخانه GD (یعنی GD library) استفاده می کنیم که در شماره های جدید PHP موجود است (بعید است که نسخه PHP شما، آنها را نداشته باشد).

فرض کنید که عکس اصلی دارای نام image.jpeg باشد و آن را در همان فولدر حاوی صفحه PHP قرار داده باشیم، کدهای PHP زیر را می نویسیم :

عکس اصلی به صورت زیر می باشد :

scriptbaran-exm-php1

بعد از اجرای کدها، یک عکس با نام image_stamp.png درون همان فولدر حاوی فایل PHP شامل کدها، ساخته می شود که به آن، طرح (watermark – stamp) مورد نظرمان افزوده شده است.

 

شرح کدهای PHP :

برای باز کردن عکس های با پسوند jpg و jpeg و ذخیره اطلاعات آنها در حافظه، تابع imagecreatefromjpeg به کار می رود :

درون تابع imagecreatetruecolor ، اندازه طول و عرض کادر مستطیلی را نوشته ایم :

اگر دقت کنید، کادر دور متن ها، خود از دو مستطیل توپر با اندازه ها و رنگ های مختلف تشکیل شده است که باعث می شوند که روی هم قرار گرفتن آنها، کادر مورد نظرمان را بسازد (مستطیل توپر با تابع imagefilledrectangle ساخته می شود). مختصات x و y دو نقطه شروع و پایان کادرهای مستطیلی را درون پرانتز تابع imagefilledrectangle نوشته ایم (رنگ مستطیل ها نیز درون پرانتز تابع imagefilledrectangle نوشته شده است) :

دو متن مورد نظرمان را با تابع imagestring ساخته ایم و متن مورد نظر، محل قرارگیری آنها و نیز رنگشان را هم درون پرانتز تابع imagestring ذکر کرده ایم :

تابع imagesx ، عرض (width) عکس را برمی گرداند و تابع imagesy ، ارتفاع (height) عکس را بر می گرداند.

 

تابع imagecopymerge برای کپی کردن یک بخش از یک عکس به درون عکس دیگر به کار می رود. ما از تابع imagecopymerge ، به صورت زیر استفاده کرده ایم :

آخرین پارامتر نوشته شده درون پرانتز دستور imagecopymerge ، برابر 50 در نظر گرفته شده است، این پارامتر، میزان شفاف بودن طرح را تعیین می کند. 50 به معنای 50 درصد است. اگر این عدد را به 0 تغییر بدهیم، اصلا طرح بر روی عکس اصلی نمایش داده نمی شود و اگر عدد را به 100 تغییر بدهیم، طرح بدون هیچگونه شفافیتی، بر روی عکس اصلی قرار می گیرد و آن را می پوشاند (پس زمینه آن که بخشی از عکس اصلی است، قابل دیدن نیست).

 

تابع imagepng برای ساخت یا ذخیره (save) یک عکس با فرمت PNG به کار می رود :

تابع imagedestroy برای آزاد کردن حافظه اشغال شده توسط اطلاعات عکس، به کار می رود (اطلاعات عکس را از حافظه پاک می کند) :

 

جعبه دانلود

ورژن :

پسورد فایل ها : www.scriptbaran.com

قابل توجه مدیران وبسایت های ایرانی : تمامی مطالب سایت اسکریپت باران بصورت اختصاصی ترجمه و منتشر می شوند و کپی برداری از آن ها فقط با ذکر نام منبع مجاز است.

  • 1. از نوشتن دیدگاه های غیر مرتبط با پست جدا خودداری کنید ؛ پرسش های غیرمرتبط را در انجمن مطرح کنید
  • 2. در خواست های خود برای اسکریپت ها و افزونه ها را فقط از طریق تماس با ما ارسال کنید.
  • 3. فقط فارسی تایپ کنید و برای سوال مجدد در صفحه از دکمه پاسخ دادن استفاده نمایید.
  • 4. قبل از ارسال کامنت حتما متن پست + نظرات سایر دوستان را بخوانید .
  • 5. نظر شما ممکن است بدون پاسخ تایید شوند که در این صورت باید منتظر پاسخ از سوی دیگر کاربران باشید .

به اسکریپت باران امتیاز دهید