如何把 Ai 绘画工具放到我们的 App 中
Scribble Diffusion 是一个简单的在线服务,它使用 AI 将粗略的草图转换为精致的图像,每一张图像都是不同的(而且没有版权困扰)。简单来说,我们只需要「用画笔描绘一张草图,在输入描述后稍等片刻」,随后就会为你生成一幅画。这幅画可以多次生成,每次生成的结果也都大不相同。
Scribble Diffusion 的能力大概是这样的(左边是我画的,右边是 TA 画的)
a photo of grassland with cloud(有云朵的草地)
the sun setting behind the mountains(山后落日)
A lovely kitten(小猫咪呀)
我发现 Scribble Diffusion 作画的能力非常出乎意料,而且可以根据你的描述来定义不同的照片风格(比如照片,油画,素描等等),于是就产生了搬运到 FinClip 中作为小程序的想法了(毕竟开箱即用,也不需要做什么配置)。
调研官网之后发现官网中的元素非常简单,正因如此,我觉得把「Scribble Diffusion」搬运到 FinClip 小程序里大概要分这样几步:
使用 canvas 实现画板,能够在小程序中进行绘画;
提供输入框与生成按钮,能够补充图片的描述和生成的按钮;
获取生成的图片链接进行展示。
使用小程序实现画板
我们可以使用小程序来实现一个画板,使用 canvas 标签实现画笔功能。用户可以在画板上绘制画作,也可以选择清空画板操作。
下面是一个示例代码:
提供输入框和生成按钮
我们需要提供一个 input 输入框,供用户输入 prompt;同时,我们需要提供一个按钮,点击时会触发响应事件,将 canvas 内容生成图片,同时将 prompt 输入作为参数,提交给服务端进行图片生成。
这里是示例代码:
获取生成的图片链接并展示
当用户点击生成图片按钮后,我们会将 canvas 内容和用户输入的 prompt 作为参数提交给服务端进行图片生成。服务端会返回生成的图片链接,我们需要将它展示给用户。
在下面的示例代码中,我们服务端发送 POST 请求,然后解析返回的 JSON 数据,获取图片链接,并将其添加到页面中。用户就可以看到生成的图片了。
生成完小程序之后,再通过 FinClip 上传小程序就可以在 App 获得画板功能啦!我把这个小程序上传到了「FinClip 小程序应用市场」中,你可以扫描下方的二维码随意体验,总的来说,还是挺好玩的。
版权声明: 本文为 InfoQ 作者【Onegun】的原创文章。
原文链接:【http://xie.infoq.cn/article/9a6d9ca0ccc2a4216d6976e4f】。文章转载请联系作者。
评论