1. পণ্য
  2.   ছবি
  3.   PHP
  4.   WideImage
 
  

ছবি ম্যানিপুলেট করতে ওপেন সোর্স PHP API

PHP লাইব্রেরি যা সফ্টওয়্যার প্রোগ্রামারদের সহজে GIF, PNG, JPEG ছবিগুলিকে লোড করতে, রিসাইজ করতে এবং রূপান্তর করতে সক্ষম করে।

ওয়াইডইমেজ হল একটি ওপেন সোর্স অবজেক্ট-ওরিয়েন্টেড লাইব্রেরি যা সফ্টওয়্যার ডেভেলপারদের তাদের নিজস্ব পিএইচপি অ্যাপ্লিকেশনের মধ্যে ইমেজ ম্যানিপুলেট করার ক্ষমতা দেয়। লাইব্রেরি সবচেয়ে সাধারণ ইমেজ ফরম্যাটে ইমেজ লোড, ম্যানিপুলেট এবং সেভ করার একটি সহজ উপায় প্রদান করে। লাইব্রেরিটি চিত্রের আকার পরিবর্তন করা, ক্রপ করা, একত্রিত করা, ছায়া দিয়ে একটি পাঠ্য লেখা, অন্যান্য ফর্ম্যাটে রূপান্তর করা, চিত্র ক্লোনিং, ছবিতে একটি জলছাপ প্রয়োগ করা এবং আরও অনেক কিছুকে সমর্থন করে৷

লাইব্রেরিতে বর্তমানে কিছু সাধারণ ইমেজ ফাইল ফরম্যাটের সমর্থন রয়েছে যা সার্ভারে GD এক্সটেনশন যেমন GIF, PNG, JPG, GD, GD2, WBMP, XBM, এবং XPM দ্বারা স্থানীয়ভাবে সমর্থিত। এটি BMP (পড়ুন/লিখুন) এবং TGA (কেবল-পঠন) সমর্থন করে। লাইব্রেরিতে ক্রস-ফরম্যাট রূপান্তরের জন্য সমর্থন অন্তর্ভুক্ত করা হয়েছে। বিকাশকারীরা সহজেই তাদের পছন্দের বিন্যাসে একটি চিত্র লোড করতে পারে এবং তারপরে এটি অন্য কোনো সমর্থিত চিত্র ফাইল বিন্যাসে সংরক্ষণ করতে পারে।

লাইব্রেরিটি চিত্রগুলিতে সমর্থিত ক্রিয়াকলাপগুলির বেশিরভাগ সম্পাদন করতে জিডি এক্সটেনশন ব্যবহার করে। জিডি এক্সটেনশন কিছু ফাংশনকে সমর্থন করে না এবং কয়েকটি ধীর গতিতে কাজ করছে কারণ সেগুলি বিশুদ্ধ PHP-তে কোড করা হয়েছে। WideImage টিম লাইব্রেরি কোড অপ্টিমাইজ করার জন্য কঠোর পরিশ্রম করেছে এবং কর্মক্ষমতা উন্নত করতে GD ফাংশন আপডেট করেছে।

Previous Next

WideImage দিয়ে শুরু করা

এটির জন্য GD2 এক্সটেনশন সহ পিএইচপি 5.2+ প্রয়োজন৷ আপনি সহজেই PEAR এর মাধ্যমে WideImage লাইব্রেরি ইনস্টল করতে পারেন। নিম্নলিখিত কমান্ড ব্যবহার করুন.

PEAR এর মাধ্যমে WideImage ইনস্টল করুন

pear channel-discover pear.kozak.si
pear install kozak.si/WideImage 

PHP এর মাধ্যমে অন্যান্য ফরম্যাটে ছবি সংরক্ষণ করা

ওপেন সোর্স WideImage লাইব্রেরি একটি ফাইলে, সরাসরি একটি ব্রাউজারে ছবি সংরক্ষণ করার জন্য সমর্থন প্রদান করেছে, অথবা আপনার নিজের অ্যাপের মধ্যে একটি স্ট্রিং হিসাবে একটি চিত্র ডেটা পুনরুদ্ধার করতে পারে৷ একটি ফাইল সংরক্ষণ করতে আপনাকে ফাইলের নাম এবং প্যারামিটার হিসাবে এর পাথ পাস করতে হবে। JPEG বা PNG তে সেভ করার সময়, আপনি JPEG-এর জন্য ছবির মান এবং PNG-এর জন্য কম্প্রেশন লেভেল সেট করতে পারেন। একটি স্ট্রিং হিসাবে পুনরুদ্ধার করার সময়, আপনি অনায়াসে ইমেজ ডেটা ক্যাপচার করতে পারেন এবং এটি একটি ডাটাবেস বা ফাইলে সংরক্ষণ করতে পারেন। আপনি সরাসরি ব্রাউজারে ছবিটি সংরক্ষণ করতে পারেন। আপনাকে ইমেজ টাইপ প্যারামিটার পাস করতে হবে এবং এটি প্রস্তাবিত বিন্যাসে সংরক্ষণ করা হবে।

PHP API এর মাধ্যমে একটি ফাইলে ছবি সংরক্ষণ করুন

include "path-to/WideImage.php";
//load Image
$image = WideImage::load("path-to/image.jpg");
// save to jpeg, quality=40
$img->saveToFile('image.jpg', 40);
// save to png, compression level = 6
$img->saveToFile('image.png', 6);

PHP API এর মাধ্যমে ছবি লোড হচ্ছে

WideImage API সফ্টওয়্যার প্রোগ্রামারদের তাদের নিজস্ব PHP অ্যাপ্লিকেশনের ভিতরে সহজেই তাদের পছন্দের একটি ছবি লোড করতে দেয়। লাইব্রেরি ছবি লোড করার জন্য বিভিন্ন বিকল্প প্রদান করেছে, যেমন একটি ফাইল থেকে একটি ছবি লোড করা, একটি URL প্রদান করে, একটি বাইনারি স্ট্রিং থেকে, বা একটি বৈধ জিডি চিত্র সম্পদ থেকে। আপনাকে একটি সম্পূর্ণ ফাইল পাথ এবং ছবির নাম প্রদান করতে হবে। ডাটাবেস থেকে ছবি লোড করার প্রয়োজন হলে বাইনারি স্ট্রিং বিকল্পটি খুবই উপযোগী।

PHP এর মাধ্যমে ছবি লোড এবং সম্পাদনা করুন

$font = '/resources/assets/NOVABOLD.otf';
  $image = WideImage::load('name');
  $canvas = $image->getCanvas();
  $canvas->useFont($font, 20, $image->allocateColor(255, 255, 255));          
  $canvas->writeText('center', 'top', 'I am ');
   

ইমেজ রিসাইজ এবং ক্রপিং

বিনামূল্যের লাইব্রেরি WideImage পিএইচপি কমান্ড ব্যবহার করে চিত্রের আকার পরিবর্তন বা ক্রপ করার জন্য কার্যকারিতা প্রদান করেছে। আপনাকে ছবির নতুন মাত্রা প্রদান করতে হবে। যদি একটি মাত্রা প্রদান করা হয় এবং অন্যটি নির্দিষ্ট না করা হয় (বা শূন্য দেওয়া হয়), লাইব্রেরি স্মার্টভাবে এটি অন্য মাত্রার অনুপাত থেকে গণনা করে। আকার পরিবর্তন এবং ক্রপ করার মতো ক্রিয়াকলাপের জন্য যেখানে স্থানাঙ্কগুলি পরামিতি হিসাবে পাস করা হয়, স্মার্ট স্থানাঙ্ক বিকল্পটি খুব দরকারী।

PHP এর মাধ্যমে ছবি লোড এবং সম্পাদনা করুন

include "path-to/WideImage.php";
//load Image
$image = WideImage::load("path-to/image.jpg");
//Resize Image 
$resized = $image->resize(400, 300);
//Save Image
$resized->saveToFile("small.jpg");
 বাংলা