https://github.com/peterhellberg/gradient
Create vertical and horizontal gradients in Go
https://github.com/peterhellberg/gradient
go gradient
Last synced: 12 months ago
JSON representation
Create vertical and horizontal gradients in Go
- Host: GitHub
- URL: https://github.com/peterhellberg/gradient
- Owner: peterhellberg
- Created: 2015-09-20T11:36:36.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2023-09-08T11:55:48.000Z (over 2 years ago)
- Last Synced: 2025-01-14T07:11:26.401Z (about 1 year ago)
- Topics: go, gradient
- Language: Go
- Size: 8.79 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# gradient
[](https://github.com/peterhellberg/gradient/actions/workflows/test.yml)
[](https://pkg.go.dev/github.com/peterhellberg/gradient)
[](https://github.com/peterhellberg/gradient#license-mit)
## Installation
go get -u github.com/peterhellberg/gradient
## Usage
```go
package main
import (
"image"
"image/color"
"image/png"
"os"
"github.com/peterhellberg/gradient"
)
func main() {
v := gradient.NewVertical(200, 100, []gradient.Stop{
{0.0, color.NRGBA{0, 0, 255, 255}},
{0.5, color.NRGBA{128, 0, 128, 255}},
{1.0, color.NRGBA{255, 0, 0, 255}},
})
h := gradient.NewHorizontal(200, 100, []gradient.Stop{
{0.0, color.NRGBA{0, 0, 0, 255}},
{1.0, color.NRGBA{0, 0, 0, 0}},
})
saveImage(v, "/tmp/vertical-gradient.png")
saveImage(h, "/tmp/horizontal-gradient.png")
}
func saveImage(m image.Image, path string) error {
f, err := os.Create(path)
if err != nil {
return err
}
defer f.Close()
return png.Encode(f, m)
}
```
## Results


## License (MIT)
Copyright (c) 2015-2023 [Peter Hellberg](https://c7.se)
> Permission is hereby granted, free of charge, to any person obtaining
> a copy of this software and associated documentation files (the
> "Software"), to deal in the Software without restriction, including
> without limitation the rights to use, copy, modify, merge, publish,
> distribute, sublicense, and/or sell copies of the Software, and to
> permit persons to whom the Software is furnished to do so, subject to
> the following conditions:
> The above copyright notice and this permission notice shall be
> included in all copies or substantial portions of the Software.
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
> LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
> OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
> WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.