commit 3fdd4b2ce5003897a29825c4fcb5779b8a55f042
parent 83c8e708cca2c41fd6a83d0cc370861ff17155c8
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Sat, 27 May 2023 22:39:28 -0700
cleanup
Diffstat:
1 file changed, 16 insertions(+), 35 deletions(-)
diff --git a/pkg/captcha/image.go b/pkg/captcha/image.go
@@ -579,6 +579,17 @@ func (m *Image) renderUselessLines() {
})
}
+func getGradient(p1, p2 Point, gradColors []color.RGBA, i int) gg.Gradient {
+ startColor := gradColors[(i*2)-2]
+ midColor := gradColors[(i*2)-1]
+ lastColor := gradColors[i*2]
+ grad := gg.NewLinearGradient(p1.GetX(), p1.GetY(), p2.GetX(), p2.GetY())
+ grad.AddColorStop(0, startColor)
+ grad.AddColorStop(0.5, midColor)
+ grad.AddColorStop(1, lastColor)
+ return grad
+}
+
func (m *Image) renderPath(points []Point) {
d := m.CubicDelta
@@ -595,13 +606,7 @@ func (m *Image) renderPath(points []Point) {
prev := points[i-1]
pt := points[i]
- startColor := gradColors[(i*2)-2]
- midColor := gradColors[(i*2)-1]
- lastColor := gradColors[i*2]
- grad := gg.NewLinearGradient(prev.GetX(), prev.GetY(), pt.GetX(), pt.GetY())
- grad.AddColorStop(0, startColor)
- grad.AddColorStop(0.5, midColor)
- grad.AddColorStop(1, lastColor)
+ grad := getGradient(prev, pt, gradColors, i)
m.c.SetStrokeStyle(grad)
//m.c.SetColor(color.White)
@@ -629,13 +634,7 @@ func (m *Image) renderPath(points []Point) {
prev := points[i-1]
pt := points[i]
- startColor := gradColors[(i*2)-2]
- midColor := gradColors[(i*2)-1]
- lastColor := gradColors[i*2]
- grad := gg.NewLinearGradient(prev.GetX(), prev.GetY(), pt.GetX(), pt.GetY())
- grad.AddColorStop(0, startColor)
- grad.AddColorStop(0.5, midColor)
- grad.AddColorStop(1, lastColor)
+ grad := getGradient(prev, pt, gradColors, i)
m.c.SetStrokeStyle(grad)
//m.c.SetColor(color.RGBA{255, 0, 0, 255})
@@ -691,13 +690,7 @@ func (m *Image) renderFakePath(points []Point) {
for i := 1; i < len(points); i++ {
prev := points[i-1]
pt := points[i]
- startColor := gradColors[(i*2)-2]
- midColor := gradColors[(i*2)-1]
- lastColor := gradColors[i*2]
- grad := gg.NewLinearGradient(prev.GetX(), prev.GetY(), pt.GetX(), pt.GetY())
- grad.AddColorStop(0, startColor)
- grad.AddColorStop(0.5, midColor)
- grad.AddColorStop(1, lastColor)
+ grad := getGradient(prev, pt, gradColors, i)
m.c.SetStrokeStyle(grad)
m.withState(func() {
m.c.SetLineWidth(1)
@@ -731,13 +724,7 @@ func (m *Image) renderFakePath(points []Point) {
prev := points[i-1]
pt := points[i]
- startColor := gradColors[(i*2)-2]
- midColor := gradColors[(i*2)-1]
- lastColor := gradColors[i*2]
- grad := gg.NewLinearGradient(prev.GetX(), prev.GetY(), pt.GetX(), pt.GetY())
- grad.AddColorStop(0, startColor)
- grad.AddColorStop(0.5, midColor)
- grad.AddColorStop(1, lastColor)
+ grad := getGradient(prev, pt, gradColors, i)
m.c.SetStrokeStyle(grad)
//m.c.SetColor(color.White)
@@ -766,13 +753,7 @@ func (m *Image) renderFakePath(points []Point) {
prev := points[i-1]
pt := points[i]
- startColor := gradColors[(i*2)-2]
- midColor := gradColors[(i*2)-1]
- lastColor := gradColors[i*2]
- grad := gg.NewLinearGradient(prev.GetX(), prev.GetY(), pt.GetX(), pt.GetY())
- grad.AddColorStop(0, startColor)
- grad.AddColorStop(0.5, midColor)
- grad.AddColorStop(1, lastColor)
+ grad := getGradient(prev, pt, gradColors, i)
m.c.SetStrokeStyle(grad)
m.c.MoveTo(prev.GetX(), prev.GetY())