Βιβλιοθήκη Ανοιχτού Κώδικα Επεξεργασίας Εικόνας υψηλού επιπέδου Go
Go API που επιτρέπει την περιστροφή εικόνων, Εικόνες Fit, δημιουργία μικρογραφιών εικόνας, μεγέθυνση της εικόνας, ενσωμάτωση ή επέκταση μιας εικόνας, προσθήκη εφέ θαμπώματος σε μια εικόνα και πολλά άλλα.
Το bimg είναι μια βιβλιοθήκη Go υψηλού επιπέδου επεξεργασίας εικόνων ανοιχτού κώδικα που παρέχει τη δυνατότητα ανάγνωσης και χειρισμού εικόνων με μερικές μόνο γραμμές κώδικα Go. Η βιβλιοθήκη είναι μικρότερη σε μέγεθος αλλά παράγει πολύ καλά οργανωμένα και αποτελεσματικά αποτελέσματα. Η βιβλιοθήκη είναι πολύ γρήγορη σε σύγκριση με άλλες διαθέσιμες βιβλιοθήκες που απαιτούν πολύ μικρή μνήμη για την ολοκλήρωση της εργασίας.
Η bimg είναι μια βιβλιοθήκη υψηλού επιπέδου C που είναι χτισμένη πάνω από το libvips που είναι μια πολύ ισχυρή βιβλιοθήκη για την επεξεργασία εικόνων. Παρέχει υποστήριξη για την ανάγνωση ορισμένων πολύ δημοφιλών μορφών αρχείων εικόνας όπως JPEG, PNG, WEBP, TIFF, PDF, GIF, SVG κ.λπ. Μπορείτε επίσης να εξάγετε εύκολα εικόνες σε μορφές JPEG, PNG, WEBP καθώς και σε διαφανείς εικόνες.
Η βιβλιοθήκη bimg περιλαμβάνει υποστήριξη για πολλές σημαντικές λειτουργίες επεξεργασίας εικόνας, όπως αλλαγή μεγέθους εικόνων, μεγέθυνση της εικόνας, περικοπή εικόνας συμπεριλαμβανομένης της υποστήριξης έξυπνης περικοπής, αναστροφή ή περιστροφή εικόνων, δημιουργία μικρογραφιών εικόνας, υποστήριξη μεγέθυνσης εικόνας, προσθήκη υδατογραφήματος και εφέ Gaussian blur, ειδική εξαγωγή περιοχή από μια εικόνα, περικοπή εικόνων, μετατροπή εικόνας σε άλλες μορφές και πολλά άλλα.
Ξεκινώντας με το bimg
Ο ευκολότερος και προτεινόμενος τρόπος εγκατάστασης του bimg είναι μέσω του GitHub.
Εγκαταστήστε το bimg μέσω GitHub
go get -u gopkg.in/h2non/bimg.v1
Μετατροπή εικόνας σε άλλες μορφές μέσω Go
Η βιβλιοθήκη bimg ανοιχτού κώδικα επιτρέπει στους προγραμματιστές λογισμικού να μετατρέπουν μέσω προγραμματισμού εικόνες σε άλλες υποστηριζόμενες μορφές αρχείων με μόνο μερικές γραμμές κώδικα Go. Ας υποθέσουμε ότι έχετε ένα σε μορφή JPEG και θέλετε να το μετατρέψετε σε PNG. Πρέπει να παρέχετε πληροφορίες εικόνας, όπως όνομα εικόνας, διεύθυνση και μορφή μετατροπής. Η εικόνα θα μετατραπεί με επιτυχία στην προτεινόμενη μορφή με ευκολία.
Μετατροπή JPG εικόνων σε NG μέσω βιβλιοθήκης
buffer, err := bimg.Read("image.jpg")
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
newImage, err := bimg.NewImage(buffer).Convert(bimg.PNG)
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
if bimg.NewImage(newImage).Type() == "png" {
fmt.Fprintln(os.Stderr, "The image was converted into png")
}
Περικοπή ή αλλαγή μεγέθους εικόνων
Η δωρεάν βιβλιοθήκη bimg δίνει στους προγραμματιστές λογισμικού τη δυνατότητα να αλλάξουν το μέγεθος καθώς και να περικόψουν τις εικόνες τους μέσα στις δικές τους εφαρμογές Go. Πρέπει επίσης να δώσετε το πλάτος και το ύψος της νέας εικόνας και τοποθεσίας. Υποστηρίζει επίσης επιβολή λειτουργιών αλλαγής μεγέθους χωρίς διατήρηση της αναλογίας διαστάσεων. Μπορείτε επίσης να προσθέσετε κείμενο και να εξαγάγετε την περιοχή της επιλογής σας από μια εικόνα. Η περικοπή περικόπτει την εικόνα στο ακριβές μέγεθος που έχει καθοριστεί.
Αποθήκευση εικόνων μέσω βιβλιοθήκης
buffer, err := bimg.Read("image.jpg")
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
newImage, err := bimg.NewImage(buffer).Resize(800, 600)
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
size, err := bimg.NewImage(newImage).Size()
if size.Width == 800 && size.Height == 600 {
fmt.Println("The image size is valid")
}
bimg.Write("new.jpg", newImage)
Προσθήκη υδατογραφημάτων σε εικόνες
Το bimg API έχει συμπεριλάβει λειτουργικότητα για την εύκολη προσθήκη υδατογραφημάτων σε εικόνες εντός εφαρμογών Go. Η προσθήκη υδατογραφήματος είναι μια πολύ χρήσιμη δυνατότητα για την προστασία των εικόνων σας. Η υδατογράφηση είναι ο ευκολότερος και πολύ χρήσιμος τρόπος για να προστατεύσετε τις φωτογραφίες σας στο διαδίκτυο. Μπορείτε εύκολα να τοποθετήσετε ένα λογότυπο ή ένα υδατογράφημα κειμένου. Η βιβλιοθήκη σάς βοηθά να προσθέσετε μέσω προγραμματισμού ένα υδατογράφημα στην εικόνα σας σε οποιαδήποτε επιλεγμένη θέση καθώς και την αδιαφάνεια.
Προσθήκη υδατογραφήματος σε εικόνα μέσω του Go API
buffer, err := bimg.Read("image.jpg")
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
watermark := bimg.Watermark{
Text: "Chuck Norris (c) 2315",
Opacity: 0.25,
Width: 200,
DPI: 100,
Margin: 150,
Font: "sans bold 12",
Background: bimg.Color{255, 255, 255},
}
newImage, err := bimg.NewImage(buffer).Watermark(watermark)
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
bimg.Write("new.jpg", newImage)
Αναστροφή και περιστροφή εικόνων
Η βιβλιοθήκη ανοιχτού κώδικα bimg δίνει στους προγραμματιστές λογισμικού τη δυνατότητα να περιστρέφουν τις εικόνες τους σύμφωνα με τις ανάγκες τους χρησιμοποιώντας εντολές γλώσσας Go. Υπάρχει μια μέθοδος για αυτόματη περιστροφή εικόνας. Η λειτουργία Auto Rotate περιστρέφει αυτόματα την εικόνα χωρίς πρόσθετο μετασχηματισμό με βάση τα μεταδεδομένα προσανατολισμού EXIF, εάν είναι διαθέσιμα. Παρέχει επίσης υποστήριξη για εικόνες flip ή flop, ερμηνεία εικόνας, μήκος εικόνας, μεταδεδομένα εικόνας και πολλά άλλα.
Περιστρέψτε την εικόνα στο εσωτερικό των εφαρμογών Go
buffer, err := bimg.Read("image.jpg")
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
newImage, err := bimg.NewImage(buffer).Rotate(90)
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
bimg.Write("new.jpg", newImage)