golang 语言实现文字云算法

2018-05-04 11:42:46 +08:00
 bangbaoshi

golang 版本的文字云算法实现

一直以来,都是通过 golang 进行后端开发,后来觉得 golang 可以做点其他有意思的玩意,后来用了 golang 实现了文字云算法,后续开放其他语言版本

项目地址

https://github.com/bangbaoshi/wordcloud

效果图

测试步骤如下

git clone https://github.com/bangbaoshi/wordcloud.git

cd wordcloud

go run boot/main.go

通过以上三步即可在 imgs 目录中生成文字云图片(查看 imgs/out.png)

目录介绍

  1. boot 目录包含测试用例
  2. fonts 目录包含若干种字体(非商业使用)
  3. imgs 目录包含模板图片,文字云生成的效果图就是按照模板图片的样子来生成

使用说明

boot/main.go 中已经简单介绍了使用方法

package main

import (
	"image/color"
	"github.com/bangbaoshi/wordcloud"
)

func renderNow() {
	//需要写入的文本数组
	textList := []string{"恭喜", "发财", "万事", "如意"}
	//文本角度数组
	angles := []int{0, 15, -15, 90}
	//文本颜色数组
	colors := []*color.RGBA{
		&color.RGBA{0x0, 0x60, 0x30, 0xff},
		&color.RGBA{0x60, 0x0, 0x0, 0xff},
		&color.RGBA{0x73, 0x73, 0x0, 0xff},
	}
	//设置对应的字体路径,和输出路径
	render := wordcloud_go.NewWordCloudRender(60, 8,
		"./fonts/xin_shi_gu_yin.ttf",
		"./imgs/tiger.png", textList, angles, colors, "./imgs/out.png")
	//开始渲染
	render.Render()
}

func main() {
	renderNow()
}


项目介绍

  1. 使用 golang 语言实现了文字云算法
  2. 用 golang 实现一些有趣的想法
1098 次点击
所在节点    问与答
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/452041

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX