我正在使用HTML的Canvas标签来创建随机生成的文字云。我正在寻找最好的(也是最有效的)方法来计算在一个定义的区域中有足够的空格来容纳一个单词的位置。我现在能想到的唯一方法是拥有一个存储可用空间块的空闲列表,并在页面上放置新图像时进行调整。
我在这里有一个示例生成器:http://pathrazor.com/wordcloud/。但是,这个例子还没有随机旋转单词,这会增加我所要求的复杂性。如果碰撞检测不是自由空间问题解决方案的一部分,将在以后添加碰撞检测。
有没有人有任何有趣的想法或以前做过这个?任何输入都会很棒。
答案 0 :(得分:1)
我建议使用这样的算法: