Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk menyesuaikan fon dalam golang

Bagaimana untuk menyesuaikan fon dalam golang

WBOY
Lepaskan: 2023-05-13 12:15:07
asal
778 orang telah melayarinya

Golang ialah bahasa pengaturcaraan yang berkuasa dengan pelbagai senario aplikasi. Apabila kami membangunkan aplikasi antara muka, fon sering menjadi faktor penting. Di Golang, melaraskan fon agak mudah. Artikel ini akan memperkenalkan cara melaraskan fon dalam Golang.

1. Import pakej yang diperlukan

Kita perlu mengimport imej dan pakej freetype. Antaranya, imej ialah pakej pemprosesan imej terbina dalam, dan freetype menyediakan operasi berkaitan pada fon.

import (

"image"
"image/png"
"os"

"golang.org/x/image/font"
"golang.org/x/image/font/basicfont"
"golang.org/x/image/math/fixed"
"golang.org/x/image/font/gofont/goregular" // 导入一个字体
"golang.org/x/image/draw"
"golang.org/x/image/colornames"
"golang.org/x/image/colorpalettes"
"github.com/golang/freetype"
Salin selepas log masuk

)

2 Mulakan fon

Di Golang, kita boleh menggunakan fon yang disediakan oleh gofont atau mengimportnya sendiri fon. Di sini, kami mengambil goregular gofont sebagai contoh untuk memulakan fon:

fontBytes := goregular.TTF
f, err := freetype.ParseFont(fontBytes)
if err != nil {

log.Fatal(err)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

}

Antaranya, goregular.TTF ialah fail fon yang disediakan dalam pakej gofont. Jika anda ingin menggunakan fon lain, anda boleh menggantikan fail fon ini.

3. Lukis rentetan

Apabila menggunakan freetype untuk melaraskan fon, anda perlu memberi perhatian untuk memastikan pemaparan imej berkualiti tinggi dan memastikan pemaparan fon adalah normal. Di sini, kami memulakan imej dan menetapkan nama dan jenis fail fail output:

w, h := 200, 100
rgba := image.NewRGBA(image.Rect(0, 0 , w, h))
fail, err := os.Create("output.png")
if err != nil {

log.Fatal(err)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

}
tunda fail.Close()

Seterusnya, kita perlu melukis rentetan dan melaraskan saiz, kedudukan dan warnanya:

c := freetype.NewContext()
c.SetDPI(72)
c. SetFont(f)
c.SetFontSize(24)
c.SetClip(rgba.Bounds())
c.SetDst(rgba)
c.SetSrc(image.NewUniform(colornames. White) )

pt := freetype.Pt(10, 50)
_, err = c.DrawString("Hello, world!", pt)
if err != nil {

log.Fatal(err)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

}

Dalam kod ini, kami menetapkan kedudukan rentetan kepada (10, 50), saiz kepada 24 dan dipilih putih sebagai warna fon. Perlu diingat bahawa sebelum melukis rentetan, kami memanggil kaedah SetClip untuk menetapkan kawasan lukisan untuk mengelakkan masalah teks di luar sempadan semasa melukis.

4. Simpan imej

Akhir sekali, gunakan pakej png untuk menyimpan imej ke fail:

err = png.Encode(file, rgba)
if err ! = nil {

log.Fatal(err)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

}

Dengan cara ini, kami telah menyelesaikan operasi melaraskan fon di Golang. Dengan mempelajari artikel ini, anda boleh dengan cepat menguasai kemahiran pengendalian fon yang berkaitan di Golang, membawa lebih banyak fleksibiliti dan keindahan kepada pembangunan aplikasi anda.

Atas ialah kandungan terperinci Bagaimana untuk menyesuaikan fon dalam golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan