I refactored and enhanced the raster package from the golang translation of freetype,
On the other hand oksvg is completely de novo, so I can slap whatever license I want on that package. I take it people here prefer the Go license? Can anyone briefly describe the difference? I will definitely change it if someone can give me a good reason. I just want to make it as convenient and useful as possible for everyone.
For Go you may want to consider the AGPL which also requires any network app to provide its source code. These GNU licenses are from the Free Software Foundation which has a traditionally radical philosophy toward computers: https://www.gnu.org/licenses/why-affero-gpl.en.html So far I personally like the AGPL approach.
I’m curious if some companies juggle the GPL. I guess if the app is used internally only then there’s no problem with accidentally requiring a proprietary program to be released as source code to the world. I’d have thought the case would be the same with the AGPL. Do people count as individuals in a corporate license with the ability to freely redistribute?I can understand completely avoiding the issue. Language is interpretable and only a court or whatever would decide what was really agreed to. The FSF seems to put a lot of work into building up their licenses with legal precedence.
--
You received this message because you are subscribed to the Google Groups "golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
So it sounds like the AGPL is a good license to choose if you want to keep your code from being used by big companies… ;-)
128x128 Image
Test Rep Time
BenchmarkScanGV-16 5000 287180 ns/op
BenchmarkFillGV-16 5000 339831 ns/op
BenchmarkDashGV-16 2000 968265 ns/op
BenchmarkScanFT-16 20000 88118 ns/op
BenchmarkFillFT-16 5000 214370 ns/op
BenchmarkDashFT-16 1000 2063797 ns/op
256x256 Image
Test Rep Time
BenchmarkScanGV-16 2000 1188452 ns/op
BenchmarkFillGV-16 1000 1277268 ns/op
BenchmarkDashGV-16 500 2238169 ns/op
BenchmarkScanFT-16 5000 290685 ns/op
BenchmarkFillFT-16 3000 446329 ns/op
BenchmarkDashFT-16 500 2923512 ns/op
512x512 Image
Test Rep Time
BenchmarkScanGV-16 500 3341038 ns/op
BenchmarkFillGV-16 500 4032213 ns/op
BenchmarkDashGV-16 200 6003355 ns/op
BenchmarkScanFT-16 5000 292884 ns/op
BenchmarkFillFT-16 3000 449582 ns/op
BenchmarkDashFT-16 500 2800493 ns/op
Here are some additional benchmarks using oksvg with either 8 large icons (landscape) and a set of 44 simpler small icons (sports):7d6
< "image/color"
11a11
23,25c23,25
< source := image.NewUniform(color.NRGBA{0, 0, 0, 255})
< scannerGV := rasterx.NewScannerGV(w, h, img, img.Bounds(), source, image.Point{0, 0})
< raster := rasterx.NewDasher(w, h, scannerGV)
---
> painter := scanFT.NewRGBAPainter(img)
> scannerFT := scanFT.NewScannerFT(w, h, painter)
> raster := rasterx.NewDasher(w, h, scannerFT)
File GV FT
cgrid.svg 0.057 0.061
clock.svg 0.024 0.025
cloud.svg 0.039 0.047
color-clouds.svg 0.066 0.060
concentric.svg 0.030 0.033
concentric2.svg 0.565 0.472
conception.svg 0.018 0.019
conception2.svg 0.035 0.030
cube.svg 0.023 0.022
d4h.svg 0.022 0.022
diag.svg 0.111 0.061
eclipse.svg 0.017 0.017
gear.svg 0.039 0.041
go.svg 0.026 0.026
gradient.svg 0.062 0.062
mondrian.svg 0.018 0.016
pacman.svg 0.022 0.021
plotfunc.svg 0.042 0.025
pyramid.svg 0.228 0.028
randarc.svg 0.050 0.052
randbox.svg 0.041 0.041
randspot.svg 0.070 0.073
recurse.svg 0.044 0.041
richter.svg 0.029 0.020
rl.svg 0.594 0.164
schotter.svg 0.033 0.028
star.svg 0.038 0.053
starx.svg 0.025 0.031
sunearth.svg 0.068 0.029