avatar

package module
v0.0.0-...-25b5f4b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 16, 2020 License: Apache-2.0 Imports: 18 Imported by: 2

README

A V A T A R

Create avatars based on names. The colors are chosen based on the first character. You can save to disk ToDisk or send back over HTTP ToHTTP.

Example

package main

import (
	"github.com/ae0000/avatar"
)

func main() {
	avatar.ToDisk("AE", "../ae.png")

    // Which is the same as
    avatar.ToDisk("Andrew Edwards", "../ae.png")
}


Example

You can pass in a single character as well

// Single initial as well..
avatar.ToDisk("Jet", "../j.png")

Example

HTTP example

Using go-chi (highly recommended HTTP router)

package main

import (
	"fmt"
	"net/http"
	"strings"

	"github.com/ae0000/avatar"
	"github.com/go-chi/chi"
)

func main() {
	r := chi.NewRouter()

	// Get the png based on the initials, You would use it like this:
	//    <img src="http://localhost:3000/avatar/ae/png" width="150">
	r.Get("/avatar/{initials}.png", func(w http.ResponseWriter, r *http.Request) {
		initials := chi.URLParam(r, "initials")

		avatar.ToHTTP(initials, w)
	})

	http.ListenAndServe(":3000", r)
}

TODO

  • HTTP example
  • Caching
  • Custom colors
  • Add unique colors that are missing (T-Z,0-9)

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	Red      = image.Uniform{color.RGBA{230, 25, 75, 255}}
	Green    = image.Uniform{color.RGBA{60, 180, 75, 255}}
	Yellow   = image.Uniform{color.RGBA{255, 225, 25, 255}}
	Blue     = image.Uniform{color.RGBA{0, 130, 200, 255}}
	Orange   = image.Uniform{color.RGBA{245, 130, 48, 255}}
	Purple   = image.Uniform{color.RGBA{145, 30, 180, 255}}
	Cyan     = image.Uniform{color.RGBA{70, 240, 240, 255}}
	Magenta  = image.Uniform{color.RGBA{240, 50, 230, 255}}
	Lime     = image.Uniform{color.RGBA{210, 245, 60, 255}}
	Pink     = image.Uniform{color.RGBA{250, 190, 190, 255}}
	Teal     = image.Uniform{color.RGBA{0, 128, 128, 255}}
	Lavender = image.Uniform{color.RGBA{230, 190, 255, 255}}
	Brown    = image.Uniform{color.RGBA{170, 110, 40, 255}}
	Beige    = image.Uniform{color.RGBA{255, 250, 200, 255}}
	Maroon   = image.Uniform{color.RGBA{128, 0, 0, 255}}
	Mint     = image.Uniform{color.RGBA{170, 255, 195, 255}}
	Olive    = image.Uniform{color.RGBA{128, 128, 0, 255}}
	Coral    = image.Uniform{color.RGBA{255, 215, 180, 255}}
	Navy     = image.Uniform{color.RGBA{0, 0, 128, 255}}
	Grey     = image.Uniform{color.RGBA{128, 128, 128, 255}}
	Gold     = image.Uniform{color.RGBA{251, 184, 41, 255}}
)

Colors for background

Functions

func SetFontFacePath

func SetFontFacePath(f string)

SetFontFacePath sets the font to do the business with

func ToDisk

func ToDisk(initials, path string)

ToDisk saves the image to disk

func ToDiskCustom

func ToDiskCustom(initials, path, bgColor, fontColor string)

ToDiskCustom saves the image to disk

func ToHTTP

func ToHTTP(initials string, w http.ResponseWriter)

ToHTTP sends the image to a http.ResponseWriter (as a PNG)

func ToHTTPCustom

func ToHTTPCustom(initials, bgColor, fontColor string, w http.ResponseWriter)

ToHTTPCustom sends the image to a http.ResponseWriter (as a PNG)

Types

This section is empty.

Directories

Path Synopsis
examples

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL