Comments (6)
@fogleman Could you help us with this? Is there anything we must do to ensure less banding in the gradients generated.
This is a great library for generating gradients since its very simple and intuitive. It's unfortunate that we get such high banding.
from gg.
Can you post code and an image showing the effect? I don't see an issue in the gradient examples.
from gg.
grad := gg.NewLinearGradient(0, 0, 1920, 0)
grad.AddColorStop(0, color.RGBA{0, 0, 0, 200})
grad.AddColorStop(1, color.RGBA{0, 0, 0, 128})
dc.SetFillStyle(grad)
dc.MoveTo(0, 0)
dc.LineTo(1920, 0)
dc.LineTo(1920, 1080)
dc.LineTo(0, 1080)
dc.ClosePath()
dc.Fill()
gradientOverlay := dc.Image()
imaging.Save(gradientOverlay, "out.png")
from gg.
Well the only way to improve that would be to go to a 16-bit image.
Currently gg
only does 8-bit. It wouldn't be too hard to do 16-bit but might be API-breaking.
from gg.
Oh alright! Is it possible to create a v2 package? I am also happy to help through PRs if you can give me an overview of the places that require changing.
from gg.
It would start by changing RGBA -> NRGBA64 and Alpha -> Alpha16 throughout the code.
But it might not actually be so easy. The freetype/raster package which gg is built upon only seems to support RGBA and Alpha.
https://github.com/golang/freetype/blob/master/raster/paint.go
from gg.
Related Issues (20)
- Support More Font Formats
- Support Set Font Weight for VF (Variable Fonts) HOT 4
- Opition to turn anti-aliasing off ? HOT 1
- Context SetTransform / GetTransform / ApplyTransform
- Why not add interface about return the IM
- How to Spread Text Watermarks on an Entire Picture HOT 1
- Is this library faster than setting pixels in image.Image?
- Allow to reset mask.
- Draw a shape with empty space inside. HOT 1
- Watermark with "fogleman/gg" HOT 4
- Improvement to output files HOT 2
- Is this repo still being maintained? HOT 2
- Can't scale an image HOT 1
- Multi-line text not working HOT 1
- Support save svg or any vector graphic?
- Wrong line Cap style for closed shapes. HOT 1
- `NewConicGradient` is only exists in the master branch
- SetLineWidth , How to change only the height of the line instead of its width
- Antialiasing
- DrawStringWrapped draws text with offset comparing to DrawStringAnchored
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gg.