2012-06-18 8 views
5

सर्वर में संग्रहीत एक फ़ाइल है, उदाहरण के लिए 400 x 600 पिक्सल का आयाम है। लेकिन वेबसाइटों के विभिन्न हिस्सों में, हमें अलग-अलग आयाम की एक ही तस्वीर की आवश्यकता है। थंबनेल के लिए, हमें आमतौर पर 50 एक्स 50 पिक्सेल की आवश्यकता होती है और यदि हम मूल आयाम के साथ एक ही तस्वीर डाउनलोड करना चुनते हैं, तो इसमें अधिक समय लगेगा और पेज लोड धीमा हो जाएगा। यदि उस तस्वीर का आकार बदल गया है तो इसका आकार बहुत नीचे जाएगा (जैसे, 500 केबी से 50 केबी)। तो, मैं चाहता हूं कि ब्राउजर तस्वीर डाउनलोड करने से पहले, सर्वर को पीएचपी स्क्रिप्ट में आवश्यक आयामों को चित्र का आकार बदलना चाहिए।PHP - ब्राउज़र डाउनलोड करने से पहले सर्वर में छवि का आकार बदलें

+4

कि ऐसा करने का सबसे अच्छा तरीका है, जबकि सर्वर पर मूल छवि अपलोड 50 * 50 के थंबनेल बनाने के लिए है । ताकि आवश्यकता के अनुसार आप प्रासंगिक छवि खींच सकें। – neeraj

+0

हमारे पास हजारों उपयोगकर्ता हो सकते हैं। उनमें से प्रत्येक की छवियों के विभिन्न संस्करणों को संग्रहीत करने में बहुत सारी संग्रहण स्थान लगेगी ... –

+3

इसे लाइव कर रहा है और भंडारण नहीं करना है कि आप इसे हजारों बार करेंगे और किसी भी समय आप इसे स्टोर करने का निर्णय लेंगे। –

उत्तर

1

आपको कोड को thumbnail code में एक नई फ़ाइल में डालने की आवश्यकता है image.php कहें और फिर छवि स्क्रिप्ट, चौड़ाई और ऊंचाई के पैरामीटर के साथ आईएमजी टैग के स्रोत के रूप में इस स्क्रिप्ट का उपयोग करें।

<img src="http://path-to-directory/image.php?img=abc.jpg&width=50&height=50" /> 

आप $ _GET प्रतिध्वनित करने के लिए "DSC01088.jpg" बदलने की जरूरत है [ 'img']; उचित सत्यापन के बाद।

1

आपको PHP की जीडी लाइब्रेरी की आवश्यकता होगी, फिर this और this पर एक नज़र डालें और फिर एक php फ़ाइल को लिंक करें जो छवि के बजाय आकार बदलता है।

नीरज के सुझाव को भी ध्यान दें, ताकि आप बेहतर प्रदर्शन प्राप्त करने के लिए अपलोड करते समय इसका आकार बदल सकें।

यदि आपके होस्ट में PHP जीडी की कमी है - जो कि बेहद असंभव है - आपको this या this पर एक नज़र रखना चाहिए।

0

हां, ज़ाहिर है!

पीएचपी छवि आकार कोड के लिए गूगल samples

फिर एक डाउनलोड स्क्रिप्ट बनाने और मानकों से कॉल करने की, इस तरह:,

http:///www.mysite.com/image.php?image=path/to/my/image.png&width=50&height=50&crop=1 

स्क्रिप्ट छवि लोड होगा प्रदान की चौड़ाई के लिए इसे आकार परिवर्तन और ऊंचाई और वैकल्पिक रूप से इसे फसल करें, फिर डाउनलोड करने के लिए उचित शीर्षलेखों के साथ गूंज करें ...

ऐसा करने के कई तरीके हैं ... कभी-कभी एसई में पूछने से पहले Google का उपयोग करना बेहतर होता है ...

+0

ऐसा नहीं है कि मैंने Google नहीं किया था। मैं बस कम समय में विशिष्ट उत्तर तक पहुंचना चाहता था, जैसे कि मैं आपके उत्तर में पहुंचा। फिर भी धन्यवाद.. –

0

उपयोग जी.डी. लाइब्रेरी थंबनेल

बनाने के लिए

सबसे पहले फ़ोल्डर में सभी छवियों की सूची प्राप्त

function thumb() 
{ 
    $img_dir_path='images/'; 
    $thumb_dir_path='images/thumbs/'; 

    $img_array=GLOB($img_dit_path.'*.{jpg,jpeg}',GLOB_BRACE); 

    foreach($img_array as $img) 
    { 
     list($path,$file)=explode('/', $img); 
     list($fileName, $extension)=explode('.',$file); 

     $thumb-file=$thumb_di_path . $fileName. '-thumb.jpg'; 

     if(file_exists($thumb-file)) 
     { 
       //do nothing 
     } 
     else 
     { 
      //create file using GD and set width and height proportionally 
      // Example $width=$orig_width * 0.1; $height =$orig_height * 0.1 
     } 
    } 
} 
संबंधित मुद्दे