-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add internal kernel API /api/icon/getDynamicIcon
#12939
Conversation
大小怎么设置? |
返回的就是svg,如果在笔记里放,拖动设置图片大小就可以了。默认是512*512大小 |
哦哦 |
/api/icon
/api/icon/getDynamicIcon
更改locale参数为lang 新增weekdayType参数,支持设置weekday格式
感谢你的贡献,思源有你更精彩! |
使用方法已经更新 |
本机使用和伺服使用的时候,图片链接中的 ip 不一致。 有没有办法使用 |
img地址用 |
|
1.color 需要支持一下变量,如 var(--b3-card-warning-color) 这个我感觉没必要,wolai的动态图标也是单独配色的,字体背景颜色、文字颜色不一定适合用来当图标颜色的,背景色会偏淡一点,文字颜色饱和度又会偏深。
更改viewbox就可以,我等会提交pr,之前设计的时候就是新建512×512的画布的,只不过导出的时候会有点点改变 |
变量还是需要的,不同主题可以适配。不一定用 |
是可以搞一个单独的css变量,主题想改自己改(虽然我觉得图标不是文字,图标本身就提供了内容对比度,其实不同主题不太需要适配,都能比较好的显示,除非他觉得默认的配色不喜欢) 不过这个解析css变量的功能应该是前端js来做然后传递给内核吧,内核可以直接做吗,我不太了解。得v姐帮忙,或者指点我下。 |
svg直接用变量我试过了,目前不行的 要么传入的时候变为具体的颜色值 v姐可以切换下明暗主题以及试试其他主题,动态图标其实本身就能兼容各种主题,wolai也没有对明暗主题选择不同配色。哪怕我选用红色的图标,主题背景也是红色,可是里面的背景是灰色,文字是灰色和白色,依然能看清的。就好像我往笔记里放入一个图片,除非图片是透明背景,否则图片在各个主题都是能看清楚的,不存在不同主题我就要更改图片颜色的情况。 |
好的,我也没找到合适的方法,就传色值吧 |
思源笔记内核添加
/api/icon/getDynamicIcon
,使得思源笔记支持动态图标参数
type
:图标类型,默认为1type=1
:显示年月日星期type=2
:显示年月日type=3
:仅显示年月type=4
:仅显示年type=5
:当前周数type=6
:仅返回星期type=7
:倒数日type=8
:文字图标lang
:中英文切换,默认为当前思源笔记使用的语言,仅在type=1、2、3、5、6、7时有效lang=zh_CN
:显示中文简体lang=zh_CHT
:显示中文繁体lang=en_US
/lang=en_ES
:显示英文color
:设置配色,一共八种配色color=red
color=blue
color=yellow
color=green
color=purple
color=pink
color=orange
color=grey
支持通过
color=FE3427
或color=%23FE3427
设置自定义颜色(注意:直接输出color=#FE3427
,会由于#
是URL特殊符号,导致URL被截断,会使得参数不起作用)date
: 设置日期,默认为当前日期,日期设置格式为yyyy-mm-dd
,仅在type=1-7时有效weekdayType
: 设置星期格式,默认为第一种类型,仅在type=1、6时有效中文
weekdayType=1
:"周日", "周一", "周二", "周三", "周四", "周五", "周六"
weekdayType=2
:"周天", "周一", "周二", "周三", "周四", "周五", "周六"
weekdayType=3
:"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"
weekdayType=4
:"星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六
英文
weekdayType=1
:"Sun","Mon","Tue","Wed","Thu","Fri","Sat"
weekdayType=2
:"SUN","MON","TUE","WED","THU","FRI","SAT"
weekdayType=3
:"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"
weekdayType=4
:"SUNDAY","MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY"
content
:设置文字图标的内容,默认为空,仅在type=8时有效注意输入下面特殊符号,需要用URL编码替代,否则导致解析参数失败或丢失
%
:%25
+
:%2B
#
:%23
使用
如果是在思源笔记内部使用(不用外部软件打开),可以直接用
api/icon/getDynamicIcon
后添加type、color、lang、date/content等参数,例如api/icon/getDynamicIcon?color=red&type=7&lang=zh_CN
外部使用需要添加ip地址和端口,如
http://127.0.0.1:6806/api/icon/getDynamicIcon
示例
type=1:显示年月日星期
默认显示今天的日期。
可通过
date=2024-10-26
指定显示的日期type=2:显示年月日
type=3:仅显示年月
type=4:仅显示年
type=5:当前周数
type=6:仅返回星期
不输入color的话,默认星期一到星期五为红色,星期六和星期日为蓝色
指定color
type=7:倒数日
该图标会显示当前日期与指定日期之间的天数。
支持
lang=en_US
修改为英文:已过
用Past
表示。还有
用Left
表示。type=8:文字图标
该图标可以显示文字。