সার্ভার-সাইড ইমেজ প্রসেসিংয়ের জন্য ওপেন সোর্স সুইফট API

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

SwiftGD হল একটি ছোট আকারের বিস্ময়কর লাইব্রেরি যা সার্ভার-সাইড সুইফট ইমেজ ম্যানিপুলেশনের জন্য সমর্থন অন্তর্ভুক্ত করেছে। এটি libgd-এর জন্য একটি চমত্কার সুইফ্ট র‍্যাপার, যেখানে কোর গ্রাফিক্স কার্যকারিতা উপলব্ধ নয় এমন জায়গায় ছবি তৈরি এবং আকৃতি আঁকার অনুমতি দেয়। লাইব্রেরিটি ব্যবহার করা খুবই সহজ এবং সুইফট কোড ব্যবহার করে সহজেই ইমেজ লোড করা, সেভ করা এবং ম্যানিপুলেট করা যায়। লাইব্রেরির একটি দুর্দান্ত বৈশিষ্ট্য হল এটি ব্যবহারকারীদের জন্য জিডি সংস্থানগুলি পরিচালনা করে, তাই চিত্রগুলি ধ্বংস হয়ে গেলে অন্তর্নিহিত মেমরি প্রকাশিত হয়।

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

Previous Next

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

নিম্নলিখিত কমান্ড ব্যবহার করে সর্বশেষ উত্স ক্লোন করুন।

Github এর মাধ্যমে SwiftGD ইনস্টল করুন 

Install সুইফটজিডি via Github 

 $ git clone https://github.com/twostraws/SwiftGD.git

সুইফট ব্যবহার করে নতুন ছবি তৈরি করা

ওপেন সোর্স সুইফট লাইব্রেরি SwiftGD সফ্টওয়্যার ডেভেলপারদের সুইফট কোডের মাত্র কয়েকটি লাইন দিয়ে নতুন ছবি তৈরি করতে সক্ষম করে। বিকাশকারীরা সহজেই চিত্রটির প্রস্থ এবং উচ্চতা প্রদান করে স্ক্র্যাচ থেকে একটি চিত্র তৈরি করতে পারে। এটি ডেটা দৃষ্টান্ত থেকে ছবি তৈরি করতেও সমর্থন করে। ব্যবহারকারীরা একটি রিসাইজ বা ক্রপ অপারেশন করার সময় এটি চিত্রগুলিও তৈরি করে, যার অর্থ আসল চিত্রটি অস্পর্শ করা হবে। আপনি সহজেই চিত্রগুলিতে কিছু মৌলিক প্রভাব প্রয়োগ করতে পারেন।

সুইফট লাইব্রেরির মাধ্যমে নতুন ছবি তৈরি করা

 import Foundation
import SwiftGD
// figure out where to save our file
let currentDirectory = URL(fileURLWithPath: FileManager().currentDirectoryPath)
let destination = currentDirectory.appendingPathComponent("output-1.png")
// attempt to create a new 500x500 image
if let image = Image(width: 500, height: 500) {
    // flood from from X:250 Y:250 using red
    image.fill(from: Point(x: 250, y: 250), color: Color.red)
    // draw a filled blue ellipse in the center
    image.fillEllipse(center: Point(x: 250, y: 250), size: Size(width: 150, height: 150), color: Color.blue)
    // draw a filled green rectangle also in the center
    image.fillRectangle(topLeft: Point(x: 200, y: 200), bottomRight: Point(x: 300, y: 300), color: Color.green)
    // remove all the colors from the image
    image.desaturate()
    // now apply a dark red tint
    image.colorize(using: Color(red: 0.3, green: 0, blue: 0, alpha: 1))
    // save the final image to disk
    image.write(to: destination)
}

সুইফট ব্যবহার করে অঙ্কন আকৃতি

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

সুইফট API এর মাধ্যমে আয়তক্ষেত্র আঁকে

 import Foundation
import SwiftGD
let currentDirectory = URL(fileURLWithPath: FileManager().currentDirectoryPath)
let destination = currentDirectory.appendingPathComponent("output-2.png")
if let image = Image(width: 500, height: 500) {
    var counter = 0
    for i in stride(from: 0, to: 250, by: 10) {
        let drawColor: Color
        if counter % 2 == 0 {
            drawColor = .blue
        } else {
            drawColor = .white
        }
        image.fillRectangle(topLeft: Point(x: i, y: i), bottomRight: Point(x: 500 - i, y: 500 - i), color: drawColor)
        counter += 1
    }
    image.blur(radius: 10)
    image.write(to: destination)
}

সুইফট অ্যাপের ভিতরে ইমেজ ম্যানিপুলেশন

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

সুইফট API এর মাধ্যমে গ্রেডিয়েন্ট তৈরি করুন

 import Foundation
import SwiftGD
let currentDirectory = URL(fileURLWithPath: FileManager().currentDirectoryPath)
let destination = currentDirectory.appendingPathComponent("output-3.png")
let size = 500
if let image = Image(width: size, height: size) {
    for x in 0 ... size {
        for y in 0 ... size {
            image.set(pixel: Point(x: x, y: y), to: Color(red: Double(x) / Double(size), green: Double(y) / Double(size), blue: 0, alpha: 1))
        }
    }
    image.write(to: destination)
}

ছবি লোড হচ্ছে এবং পড়া হচ্ছে

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

সুইফট এপিআই এর মাধ্যমে ছবি পড়া

 let location = URL(fileURLWithPath: "/path/to/image.png")
let image = Image(url: location)
 বাংলা