https://github.com/disintegration/letteravatar
Letter avatar generation for Go
https://github.com/disintegration/letteravatar
avatar avatar-generator go letter-avatar
Last synced: 5 months ago
JSON representation
Letter avatar generation for Go
- Host: GitHub
- URL: https://github.com/disintegration/letteravatar
- Owner: disintegration
- License: other
- Created: 2016-09-09T23:36:07.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2021-11-26T06:01:14.000Z (over 3 years ago)
- Last Synced: 2024-12-11T12:25:03.173Z (6 months ago)
- Topics: avatar, avatar-generator, go, letter-avatar
- Language: Go
- Size: 309 KB
- Stars: 138
- Watchers: 6
- Forks: 14
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# letteravatar
[](https://godoc.org/github.com/disintegration/letteravatar)
[](https://travis-ci.org/disintegration/letteravatar)Letter avatar generation for Go.
## Usage
Generate a 100x100px 'A'-letter avatar:
```go
img, err := letteravatar.Draw(100, 'A', nil)
```The third parameter `options *Options` can be used for customization:
```go
type Options struct {
Font *truetype.Font
Palette []color.Color
LetterColor color.Color
PaletteKey string
}
```Using a custom palette:
```go
img, err := letteravatar.Draw(100, 'A', &letteravatar.Options{
Palette: []color.Color{
color.RGBA{255, 0, 0, 255},
color.RGBA{0, 255, 0, 255},
color.RGBA{0, 0, 255, 255},
},
})
```## Documentation
[https://godoc.org/github.com/disintegration/letteravatar](https://godoc.org/github.com/disintegration/letteravatar)
## Examples










```go
package mainimport (
"image/png"
"log"
"os"
"unicode/utf8""github.com/disintegration/letteravatar"
)var names = []string{
"Alice",
"Bob",
"Carol",
"Dave",
"Eve",
"Frank",
"Gloria",
"Henry",
"Isabella",
"James",
"Жозефина",
"Ярослав",
}func main() {
for _, name := range names {
firstLetter, _ := utf8.DecodeRuneInString(name)img, err := letteravatar.Draw(75, firstLetter, nil)
if err != nil {
log.Fatal(err)
}file, err := os.Create(name + ".png")
if err != nil {
log.Fatal(err)
}err = png.Encode(file, img)
if err != nil {
log.Fatal(err)
}
}
}```
## License
The package "letteravatar" is distributed under the terms of the MIT license.
The Roboto-Medium font is distributed under the terms of the Apache License v2.0.
See [LICENSE](LICENSE).