3月份的时候使用Python后端写了一个API,使用Flask库
这个文档已经是3月写的了,因为在开发其他的项目,没什么时间开发主题商店这个功能(文档原本是写了主题商店的使用方法及功能的,因为没开发好这个功能就暂时删掉了那一大段,后面开发出来了会写篇文章说明如何使用)
图片是后端实时生成的,没有客户端的处理
返回的图片是png类型,也可以自定义背景图(背景图不一定也要png)
Url参数
参数名 | 描述 | 默认值 | 是否可选 | 限制 |
---|---|---|---|---|
bg | 背景图片Url | 无 | 是 | 有Url长度限制 |
w | 生成的图片宽度(px) | 1024 | 是 | 1080 |
h | 生成的图片高度(px) | 576 | 是 | 1920 |
lt | 文字到图片左上角的距离 | 50 | 是 | 无 |
l | 文字到图片左边的距离 | 50 | 是 | 无 |
fs | 文字的字号 | 40 | 是 | 无 |
rdfs | 图片右下角作者声明的字号 | 18 | 是 | 不小于8字号 |
wf | 在Url中加载字体 | 无 | 是 | 只支持TTF格式的字体,以后版本可能会支持更多 |
c | (未开发完)更改纯色背景颜色 | 无 | 是 | 未设置bg参数时才显示纯色 |
fc | 更改字体颜色 | FFFFFF | 是 | 不允许带#号 |
如果您设置了wf或bg参数,则会先等待字体或图片加载完成,经过后端处理后,才会将图片发送至客户端
为了节省服务器的网络流量,生成的图片最多只能为1080P分辨率,如设置超过限制则会自动设回1080P分辨率
一个小功能
如果您忘记了API的调用地址,只记得api.xiaorin.com,没关系,我给根Uri做了个小页面用来导航
虽然导航页的页面简陋了点,但也不是不能用(
小提示
您在调用API时必须使用https协议,Nginx不会给您自动从http重定向到https
您如果使用http协议访问就会显示下图的错误
请求示例
如果您想把它放在自己博客的侧边栏,可以这样调用:
高126,宽300,字号12https://api.xiaorin.com/get_image?h=126&w=300&fs=12<=5&l=5&rdfs=8
效果
当然,您也可以使用随机图片的API来当随机背景图片,就拿GTX690的随机猫娘乐园图片API来示例(API里套API)https://api.xiaorin.com/get_image?bg=https://www.nekopara.uk/pic_api
如果您的随机图片API炸掉了,则会自动换回默认的背景图片
效果
如果您的背景太杂乱,可以更换字体颜色,或者实现js检测图片包含哪种颜色最多就换成它最显眼的文字颜色,这个功能就由你们自己去实现了
文字颜色更换效果(黑色)
这里有一个小坑,fc参数的16进制颜色代码不允许带"#",一旦带了就会显示如下错误:
之后可能会添加的功能
- 主题商店
这个得要搞一段时间才搓的出来,会比较久点