Go API pour le traitement d'images basé sur HTTP
Bibliothèque Go Open Source qui prend en charge le recadrage intelligent en ligne, le retournement ou la rotation des images, la création de vignettes d'images, le zoom d'image, l'ajout de filigrane aux fichiers PNG, WEBP, TIFF, PDF, GIF et SVG, etc.
L'imaginaire est une source ouverte très puissante de traitement de l'image HTTP G API qui permet aux concepteurs de logiciels d'effectuer des opérations d'image avancées par des services privés ou publics HTTP avec moins de dépendance. Il appuie des opérations avancées telles que l'autorisation de API jetées, la protection de la signature, la stratégie de réduction de la circulation HTTP et le soutien du CdR aux clients Web. La bibliothèque peut lire des images des charges de paye HTTP OST, des sentiers locaux de serveur ou des serveurs HTTP éloignés.
L'imaginaire est une bibliothèque puissante et stable construite en haut de la libris, un traitement rapide et efficace de l'image. La bibliothèque a fourni un soutien aux formats d'images tels que JPEG, NG, FI, EP, TIFF, PDF, GIF et SVG, ainsi qu'une conversion transparente entre eux. Il a fourni un soutien complet à Decker Fly.io. La grande chose de Fly est qu'elle peut réduire la la latence et offrir de meilleures pratiques en desservant le trafic à proximité de l'emplacement de votre utilisateur.
La bibliothèque imaginaire appuie pleinement plusieurs caractéristiques importantes liées à la création, à la conversion et à la manipulation d'images, à l'agrandissement d'images, à la culture d'image intelligente, à la rotation d'images
Initiation à l'imaginaire
Le moyen le plus simple et recommandé d'installer imaginaire est via GitHub.
Installer imaginaire via GitHub
go get -u github.com/h2non/imaginary
Convertir des images en d'autres formats via Go
La bibliothèque imaginaire de la source ouverte API a permis de convertir vos images en d'autres formats de fichiers appuyés avec facilité. Vous pouvez enregistrer des images dans des formats très utiles comme JPEG, NG et PE. La bibliothèque a fourni un soutien de conversion avec des réglages de qualité et de compression supplémentaires. Vous devez simplement fournir le nom exact de l'image, l'adresse et le format de conversion, et la bibliothèque vous convertira facilement avec quelques commandements du gouvernement.
Convertir l'image par la Bibliothèque Imaginale
func Convert(buf []byte, o ImageOptions) (Image, error) {
if o.Type == "" {
return Image{}, NewError("Missing required param: type", http.StatusBadRequest)
}
if ImageType(o.Type) == bimg.UNKNOWN {
return Image{}, NewError("Invalid image type: "+o.Type, http.StatusBadRequest)
}
opts := BimgOptions(o)
return Process(buf, opts)
}
Recadrage d'images en ligne via Go
La bibliothèque imaginaire de la source ouverte permet aux concepteurs de logiciels de produire leurs images en ligne avec quelques lignes de code Go à l'intérieur de leurs propres applications. Vous pouvez cultiver votre image en fournissant la largeur ou la hauteur des coutumes. La bibliothèque rend votre travail facile en maintenant le rapport Image. La bibliothèque appuie également la culture de l'image en utilisant l'algorithme de culture intelligente de la libération. Vous pouvez aussi définir le niveau de compression de l'image pour les images NG et le flip, le flanc et faire tourner vos images avec facilité.
Image par la bibliothèque Go
{
"operation": "crop",
"params": {
"width": 500,
"height": 300
}
Redimensionner les images pour les adapter
La bibliothèque imaginaire gratuite a inclus la prise en charge du redimensionnement des images pour les adapter à l'aide des commandes Go dans leurs applications. Vous pouvez facilement redimensionner une image pour l'adapter à la largeur et à la hauteur, sans recadrage. La bibliothèque facilite votre travail en conservant le rapport d'aspect de l'image. La largeur et la hauteur spécifient une boîte englobante maximale pour l'image.
Restez l'image par la bibliothèque libre Go
func Resize(buf []byte, o ImageOptions) (Image, error) {
if o.Width == 0 && o.Height == 0 {
return Image{}, NewError("Missing required param: height or width", http.StatusBadRequest)
}
opts := BimgOptions(o)
opts.Embed = true
if o.IsDefinedField.NoCrop {
opts.Crop = !o.NoCrop
}
return Process(buf, opts)
}
Faites pivoter et faites pivoter automatiquement vos images
La bibliothèque de l'imaginaire libre a fourni des fonctionnalités pour faire tourner vos images avec facilité. Il a également inclus une fonction très utile pour les images auto-rotatives des applications Go. Elle fait automatiquement tourner l'image sans autre transformation d'image basée sur les métadonnées d'orientation de la FI. La méthode AutoRotate produit une nouvelle image avec la même taille et le même format que l'image d'entrée.
Auto-Rotate Image via la bibliothèque libre Go
func AutoRotate(buf []byte, o ImageOptions) (out Image, err error) {
defer func() {
if r := recover(); r != nil {
switch value := r.(type) {
case error:
err = value
case string:
err = errors.New(value)
default:
err = errors.New("libvips internal error")
}
out = Image{}
}
}