Open Source Swift API لمعالجة الصور من جانب الخادم

مكتبة Swift لدعم مضمّن لتحميل الصور وحفظها ومعالجتها. يسمح بإنشاء الصور بعرض وارتفاع مخصصين ، وتغيير حجم الصورة واقتصاص جزء معين من الصورة

SwiftGD هي مكتبة رائعة صغيرة الحجم تضمنت دعمًا لمعالجة صور Swift من جانب الخادم. إنه غلاف Swift رائع لـ libgd ، مما يسمح بإنشاء الصور وأشكال الرسم في الأماكن التي لا تتوفر فيها وظيفة Core Graphics. المكتبة سهلة الاستخدام للغاية ويمكنها بسهولة التعامل مع تحميل الصور وحفظها ومعالجتها باستخدام كود Swift. تتمثل إحدى الميزات الرائعة للمكتبة في أنها تدير موارد GD للمستخدمين ، لذلك يتم تحرير الذاكرة الأساسية عند تدمير الصور.

تضمنت المكتبة دعمًا للعديد من الميزات المهمة المتعلقة بمعالجة الصور مثل تحميل ملفات PNG و JPEG من القرص ، وحفظ صور PNG و JPEG على القرص ، وإنشاء صورة بعرض وارتفاع مخصصين ، ودعم تغيير حجم الصورة ، واقتصاص جزء معين من الصورة ، رسم الأشكال والخطوط ، وحفظ اللون من الإحداثيات ، وتقليب الصورة الأفقي أو العمودي ، ودعم التمسيد بالصورة ، والرسم أو ملء النص وغير ذلك الكثير. تضمنت المكتبة أيضًا العديد من التأثيرات المهمة مثل pixelate و blur و colorize و de-saturate وما إلى ذلك. . المكتبة مفتوحة المصدر ومتاحة بموجب ترخيص MIT.

Previous Next

الشروع في العمل مع SwiftGD

استنساخ أحدث المصادر باستخدام الأمر التالي.

قم بتثبيت SwiftGD عبر جيثب 

Install SwiftGD via Github 

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

إنشاء صور جديدة باستخدام Swift

تتيح مكتبة SwiftGD مفتوحة المصدر SwiftGD لمطوري البرامج إنشاء صور جديدة ببضعة سطرين فقط من كود Swift. يمكن للمطورين بسهولة إنشاء صورة من البداية من خلال توفير عرض الصورة وارتفاعها. كما أنه يدعم إنشاء الصور من حالات البيانات. يقوم أيضًا بإنشاء الصور أثناء قيام المستخدمين بإجراء عملية تغيير الحجم أو الاقتصاص ، مما يعني أن الصورة الأصلية لن يتم لمسها. يمكنك أيضًا تطبيق بعض التأثيرات الأساسية على الصور بسهولة.

إنشاء صور جديدة عبر مكتبة Swift

 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)
}

رسم الأشكال باستخدام Swift

تسهل مكتبة SwiftGD على مطوري البرامج رسم الأشكال ومعالجتها داخل تطبيقات Swift الخاصة بهم. قدمت المكتبة عدة طرق يمكن استخدامها للرسم في صورك ، مثل تطبيق التعبئة الفيضية من نقطة إلى أخرى ، ورسم خط من نقطة إلى أخرى ، ووضع البكسل نقطة معينة ، وملء القطع الناقص في المركز ، رسم قطع ناقص فارغ في المنتصف ، مستطيل فارغ يرسم من جانب إلى آخر وهكذا.

يرسم مستطيلات عبر Swift 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)
}

معالجة الصور داخل تطبيقات Swift

مكتبة SwiftGD مفتوحة المصدر تسمح لمبرمجي الكمبيوتر بمعالجة الصور بسهولة داخل تطبيقات Swift. قدمت المكتبة العديد من الطرق التي يمكن استخدامها لتطبيق التأثيرات على الصور مثل تطبيق تأثير التمويه الغاوسي ، وتطبيق صبغة الصورة ، وجعل الصورة ذات التدرج الرمادي ، وقلب صورتك أفقيًا ورأسيًا ، وتبسيط صورتك كبيرة جدًا من البكسل ، والكثير أكثر.

إنشاء التدرج عبر Swift 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".

قراءة الصور عبر Swift API

 let location = URL(fileURLWithPath: "/path/to/image.png")
let image = Image(url: location)
 عربي