Golang图片库gg使用示例

示例一

代码如下

package mainimport ("fmt""github.com/fogleman/gg"
)func main() {const S = 1024//NewContext调整图片大小dc := gg.NewContext(S, S)//图片颜色,三个参数依次为红绿蓝,第四个参数表示透明度dc.SetRGBA255(255, 0, 0,30)for i := 0; i < 360; i += 15 {dc.Push()dc.RotateAbout(gg.Radians(float64(i)), S/2, S/2)//DrawEllipse画椭圆dc.DrawEllipse(S/2, S/2, S*7/16, S/8)//DrawRectangle画矩形//dc.DrawRectangle(S/2, S/2, S*7/16, S/8)//DrawCircle画圆//dc.DrawCircle(650,650,130)dc.Fill()dc.Pop()}err := dc.SavePNG("../../Desktop/ellipse2.png")if err != nil {fmt.Println(err)}
}



合并图片

代码如下

package mainimport ("fmt""github.com/fogleman/gg"
)func main() {const S = 1024//NewContext调整图片大小dc := gg.NewContext(S, S)//图片颜色,三个参数依次为红绿蓝,第四个参数表示透明度dc.SetRGBA255(255, 0, 0,30)for i := 0; i < 360; i += 15 {dc.Push()dc.RotateAbout(gg.Radians(float64(i)), S/2, S/2)dc.DrawEllipse(S/2, S/2, S*7/16, S/8)dc.Fill()dc.Pop()}//加载图片image, err := gg.LoadPNG("../../Desktop/gopher.png")if err != nil {fmt.Println(err)}//画图片,后两个参数为x,y轴坐标dc.DrawImage(image,425,380)err = dc.SavePNG("../../Desktop/out.png")if err != nil {fmt.Println(err)}
}

Golang图片库gg使用示例相关推荐

  1. golang连接mysql操作示例增删改查

    golang本身没有提供连接mysql的驱动,但是定义了标准接口供第三方开发驱动.这里连接mysql可以使用第三方库,第三方库推荐使用https://github.com/Go-SQL-Driver/ ...

  2. Golang大整数计算示例-阶乘

    Golang大整数计算示例-阶乘 代码 解析 运行结果 其他说明 结论 代码 直接上代码: package mainimport "fmt" import "math/b ...

  3. golang连接mysql操作示例增删改查(已经测试)

    golang本身没有提供连接mysql的驱动,但是定义了标准接口供第三方开发驱动.这里连接mysql可以使用第三方库,第三方库推荐使用https://github.com/Go-SQL-Driver/ ...

  4. go语言代码连接mysql_【mysql】golang连接mysql操作示例增删改查

    golang本身没有提供连接mysql的驱动,但是定义了标准接口供第三方开发驱动.这里连接mysql可以使用第三方库,第三方库推荐使用https://github.com/Go-SQL-Driver/ ...

  5. golang - context包使用示例 以及 底层实现

    文章目录 1. context 常用方法,以及各种适用于什么场景 1.1 context含有的方法 1.2 方法适用场景和伪代码示例 1.2.1 值传递:比如gin框架中用来传递key,value的值 ...

  6. Golang 计算MD5值示例

    Golang提供了"crypto/md5"包用来计算md5值,使用起来简单方便,解决了我长久以来的疑问^_^ 一种是直接调用md5计算 package mainimport (&q ...

  7. golang flag包使用示例:接收命令行参数

    flag包 package mainimport "flag" import "fmt"// 定义命令行参数对应的变量,这三个变量都是指针类型 var cliN ...

  8. golang beego快速入门示例(单文件hello.go)

    安装beego & bee $ go get -u github.com/beego/beego/v2 $ go get -u github.com/beego/bee/v2 hello.go ...

  9. Golang项目部署

    文章来源:https://goframe.org/deploymen... 一.独立部署 使用GF开发的应用程序可以独立地部署到服务器上,设置为后台守护进程运行即可.这种模式常用在简单的API服务项目 ...

最新文章

  1. 女士做软件测试的利弊有哪些?
  2. isContinuous 反色处理
  3. 震精!Spring Boot内存泄露,排查竟这么难!
  4. linux中文乱码的解决
  5. MSVCR80D.dll not found 问题(转)
  6. SringBoot项目使用maven打包,使用docker部署,并且使用thymeleaf作为模板引擎遇到的问题
  7. typescript基本类型demo
  8. linux2.6内核compat_ioctl函数
  9. python找不到csv文件_Python如何读取csv文件
  10. 跨系统服务器data,跨服务器的数据整合方法及系统 Cross-server data integration method and system...
  11. 美团自研无人机登场:15分钟配送到家
  12. 配置一下自己的vim
  13. 启动多个线程后同时并行执行程序
  14. TIOBE 2 月编程语言排行榜:VB 又有人要了,Go 一直在跌!
  15. Hadoop基础-配置历史服务器
  16. linux日期函数使用技巧[转自那天的blog]
  17. sql server外部连接
  18. phpQuery乱码解决经验分享
  19. 钢绞线的弹性模量的计算方法_钢绞线弹性模量的理论计算及其影响因素分析
  20. word公式编辑器复制粘贴未响应_word2016一复制公式就卡死?

热门文章

  1. 机器学习模型常用评价指标(Accuracy, Precision, Recall、F1-score、MSE、RMSE、MAE、R方)
  2. PHP开发必备电脑,10款实用的PHP开源工具
  3. WPF 调用 InvalidateVisual 不触发 OnRender 的原因
  4. 安装scrapy模块,创建一个Scrapy爬虫项目,并运行
  5. DOM鼠标移入移出事件
  6. 今日剪辑妙招分享:剪辑抖音短视频可以用哪些工具剪辑?
  7. apisix集群安装测试
  8. 最新抖音卡直播广场,教你如何提高直播人气?
  9. linux系统下 桌面被放大如何还原,电脑屏幕变大了怎么还原?电脑屏幕变大的还原方法...
  10. 多用户分销商城系统开发及多商家入驻的功能介绍