تغییر اندازه تصویر با php

جمعه ۲۷ دی ۱۳۸۷ - ۰۸:۱۲ بعد از ظهر

بازدید: 876 مرتبه

سلام به دوستان خوبم
امروز برای دوستان پی اچ پی کار یه کد می‌خوام بزارم، که استفاده این کد در طراحی وب سایت خیلی زیاده.

 

چند روز پیش آقا نبی یه سایت به من معرفی کردن که قبلا هم دیده بودمش ولی زیاد بهش توجهی نکرده بودم، ولی الان  بیشتر جواب سوال هامو از این سایت پیدا می‌کنم با یه جستجوی کوچولو درش.

با استفاده از این کدی که می‌خوام آموزش بدم، می‌تونید عکس مورد نظرتونون رو با سایز دلخواه در هر کجا به نمایش در بیارید.
شاید بگید این چه کاریه، خوب به تگ <img> ارتفاع و عرض دلخواه رو اعمال می‌کنیم، نـــــه، خیلی خیلی اشتباه می‌کنید، چون شما یه عکس با سایز ۴۰۰px باشه و شما به تگ <img> سایز ۱۰۰px رو بدید، و به نظر خودتون که حجمش کمتر میشه، نخیر این این طور نیست، چون شما به زور سایز عکس رو می‌خوایید تغییر بدید، ممکنه عکس کوچیکتر بشه ولی حجمش همونه.
حالا یه نگاه بندازید که چه راحت می‌شه سایز تصویر رو با php تغییر داد.

خوب شما اول این فایل رو دانلود کنید، تا بعد بگم چطور کار میکنه

لینک دانلود: images.zip

خوب شما تنها کافیه فایل دانلود شده رو درون یک پوشه و یه فایل html و یا php در کنارش قرار بدید و محتوای فایل رو  به شکل زیر وارد کنید.

<img src="image.php?size=[size]&amp;file=[image]" alt="" />

 توضیح کد: شما باید آدرس عکستون رو به جای [image] و سایز عکس رو به جای [size] به pixel وارد کنید.

و علاوه بر اون می‌تونید بهش بگید که width و یا height عکس رو به سایز x تغییر بده، برای این کار به اول سایزتون، کلمه w برای width و یا h برای height اضافه کنید.

اینم یه چند تا مثال:

<img src="image.php?size=200&amp;file=pic.jpg" alt="" />
<img src="image.php?size= w200&amp;file=pic.jpg" alt="" />
<img src="image.php?size=h200&amp;file=pic.jpg" alt="" />

اگر سوالی داشتید در قسمت نظرات می‌تونید بپرسید.

 

منبع: http://www.alistapart.com

دسته: پی اچ پی

 | 

نویسنده: محمد جواد (admin)


۵ نظر برای [ تغییر اندازه تصویر با php ]

  1. نویسنده: نبی
    یکشنبه ۲۹ دی ۱۳۸۷ - ۰۱:۵۱ قبل از ظهر
     

    روش و کد خوبیه… اما یه امای بزرگ داره!

    نباید فراموش کرد که به هر حال این کار یه رکوئست و یک پردازش به سرور تحمیل میکنه، اون هم فقط برای نمایش یک عکس! مسئله کش شدن هم مطرحه که در این روش بخوبی اینکار صورت نمیگیره.
    در حالی که به راحتی با لینک دادن به یک عکس علاوه بر خوب کش شدن تصاویر، هیچ بار اضافی به cpu سرور تحمیل نمیشه.
    در کل بجز در مواقع ضرروی که تعداد تصاویر و صفحات محدود هستند و سایت هم خیلی بازدید نداره پیشنهاد نمیشه.
    مخصوصاً برای آپلود سنترها که اصلاً پیشنهاد نمیشه و منطقی تر اینه که یک نسخه از تصویر با اندازه واقعی و یک تصویر با اندازه سفارشی و دلخواه مثلاً به عنوان thumbnail ذخیره بشه. یعنی وقتی عین آدمیزاد میشه عکس رو نمایش داد، دیگه چرا PHP رو به زحمت انداخت؟!

    برای آزمایش میتونید مثلاً به تعداد ۱۰۰ تا از این لینکها رو در یک صفحه قرار بدید و در صفحه مشابه توسط تگ img به صورت معمول همون عکسها رو نمایش بدید.
    و سرعت نمایش در مرتبه های دوم و … را برای تست نحوه کش شدن فایلها امتحان کنید.
    و حتماً به لود cpu هم نگاهی داشته باشید تا ببینید با همین روش در صورتی که تعداد لینکهای یک صفحه زیاد و یا درخواست ها دریک لحظه زیاد باشن حتی تا مرحله دون شدن سرور هم ممکنه پیش بره!!!
    در یک کلام، در استفاده از این روش نباید زیاده روی کرد ;)

    و در کل ممنون از مطالب شما و ببخشید اگه که توی ذوقتون خورد :D

  2. نویسنده: محمد جواد (admin)
    یکشنبه ۲۹ دی ۱۳۸۷ - ۱۲:۳۹ بعد از ظهر
     

    نه مطلب جالبی بود، ممنون که راهنمایمون کردید ;)

  3. نویسنده: محمدرضا
    شنبه ۱ فروردین ۱۳۸۸ - ۰۶:۲۹ بعد از ظهر
     

    سلام
    تشکر می کنم از این مطلبتون ،
    واقعا کارمو راه انداخت !

  4. نویسنده: محمدرضا
    شنبه ۱ فروردین ۱۳۸۸ - ۰۶:۳۶ بعد از ظهر
     

    راستی شما فقط نوشیتید که برای تغییر width از w و برای تغییر height از h استفاده کنید !
    اگه بخوایم هردوشو مشخص کنیم چه کنیم ؟
    مثلا یه عکس ۳۰۰ در ۴۰۰ رو بکنیم ۶۰ در ۸۰
    با تشکر !

  5. نویسنده: محمد جواد (admin)
    شنبه ۱ فروردین ۱۳۸۸ - ۱۰:۴۹ بعد از ظهر
     

    تا اونجایی که من می‌دونم در php سایز یک تصویر خراب نمیشه، یعنی مثلا عکس باریک و یا دراز نمیشه.

    برا همینه که این کلاس هم به این شکل نوشته شده که با دادن width و یا height سایز دوم هم به صورت مقیاس تعیین میشه، و بر روی عکس عمل میکنه.

نظری بنویسید.