Maison > développement back-end > Golang > le corps du texte

Discutez de la façon de définir les polices dans Golang

PHPz
Libérer: 2023-04-12 19:58:57
original
1147 Les gens l'ont consulté

Une bonne police peut mettre les gens à l'aise et elle aide également beaucoup lors de l'écriture de code. Les développeurs du langage Go en sont évidemment conscients et proposent donc diverses méthodes pour définir les polices.

Ci-dessous, nous verrons comment définir les polices dans Golang.

  1. Utilisation du package go-fonts

Le package go-fonts est un package simple et facile à utiliser grâce auquel nous pouvons utiliser des polices open source courantes (telles que Ubuntu, Monaco, etc.) pour embellir notre code. L'utilisation de ce package est également très simple, ajoutez simplement les lignes suivantes au code :

import "github.com/visualfc/go-fonts"
func init() {  
    gofonts.Family = `Ubuntu Mono, Monaco`
}
Copier après la connexion

Cela définira la police sur Ubuntu Mono ou Monaco, vous pourrez également ajouter les noms d'autres polices, puis go-fonts trouvera et utilisera ces polices.

  1. Utiliser la bibliothèque Freetype

Freetype est une bibliothèque de polices open source multiplateforme qui peut être utilisée dans les environnements Windows, Linux et MacOS. Pour utiliser Freetype dans Golang, nous devons d'abord installer la bibliothèque Freetype. Utilisez la commande suivante pour l'installer sous Ubuntu :

sudo apt-get install libfreetype6 libfreetype6-dev
Copier après la connexion

Après cela, nous devons installer la bibliothèque de liaison Golang de Freetype. Utilisez la commande suivante pour installer :

go get -u github.com/golang/freetype
Copier après la connexion

Exemple de code :

//引入必要的包
import (
    "image"
    "image/color"
    "image/draw"
    "github.com/golang/freetype"
    "golang.org/x/image/font/gofont/goregular"
)

// 生成文字图像
func getTextImage(text string) (img *image.RGBA) {

    fontContext := freetype.NewContext()

    // 设置字体库为goregular
    fontContext.SetFont(goregular.TTF)
    fontContext.SetFontSize(18)

    imgSize := image.Point{X: 200, Y: 60}

    img = image.NewRGBA(image.Rectangle{Max: imgSize})

    draw.Draw(img, img.Bounds(), &image.Uniform{color.White}, image.Point{}, draw.Src)

    fontContext.SetDst(img)
    fontContext.SetClip(img.Bounds())
    fontContext.SetSrc(image.Black)

    txt := []byte(text)

    fontContext.DrawString(string(txt), freetype.Pt(5, 30))

    return
}
Copier après la connexion

Utilisez la bibliothèque Freetype pour générer des images de texte. Cette technologie peut être utilisée pour générer des images de police sympas, telles que la génération de logos, etc.

Résumé

Ci-dessus sont deux méthodes pour définir les polices dans Golang. Vous pouvez choisir la méthode correspondante en fonction de vos besoins. L'utilisation du package go-fonts permet d'utiliser facilement les polices existantes, tandis que l'utilisation de la bibliothèque Freetype permet de contrôler de manière plus flexible les styles de police et de générer des images de texte et d'autres opérations.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal