首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

人工智能设计师之智能排版的另一种实现方式

Flipboard的自动排版系统Duplo

最近在整理算法驱动设计的案例,翻到Flipboard的自动排版系统,再次研究了下,把相关的技术思路整理了下:

Flipboard主要要解决的是多种屏幕尺寸的排版方案选择,系统内置一些模版库,通过输入内容的决策树判断,组合出大量的排版方案(一般达到2000+以上),然后通过评估(打分,通过预先制定评分规则),选取分数最高的方案,然后进行再进一步的精细化排版。

一、大批量生成排版方案

例如:

生成3栏的横向版面,Duplo可以进行匹配组合,生成2000+个排版样式。

二、排版方案生成的逻辑

把复杂的版面进行拆解,分解成更小的单元,使用的时候,进行组合,拼装出目标版面。

如,上图从2栏的模版里选取适合的,加上从1栏的模版里选取的进行组合。

基于决策树的规则体系:

三、评估2000+个排版方案,从中选择最适合的的方案

构建一个评估函数,由Page flow、每一页面中文字所占比例、不同尺寸版面内容展示的一致性、图片的评估等构成。

3.1Page flow

这里用到了Perlin noise算法,Perlin Noise可以用来表现自然界中无法用简单形状来表达的物体的形态,比如火焰、烟雾、表面纹路等。这里运用它为每一种版面方案进行打分,下图是评分规则:

3.2 每一页面中文字所占比例

这里认为80%或更高的比例更适合,即得分越高。

3.3 不同尺寸版面内容展示的一致性

由于是考虑适配各种屏幕的排版方案,因而会考虑选取一种内容展示更一致的方案。

3.4 图片的评估

对于图片,大批量的排版方案中会采用不同的缩放和裁切参数,这里的评估采用opencv识别图片中的人脸,选择最佳的缩放和裁切参数。

综合以上的得分,选择一种排版方案。

四、进一步优化排版

通过栅格系统,再进一步地微调页面内各元素的位置与尺寸。

以上为本文的全文。

以下为广告:

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180104G00J9O00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券