0507
工作
- 一直在做关于前端图片加水印的需求
- 总结:
- 前端水印分为2种,一种是应用背景加水印,水印在用户登录的时候生成用户名、租户名等信息,作为背景图平铺在底层
div
上 - 另一种是给图片加水印,用户上传图片的时候根据配置信息实时加水印存储
- 这次做的是第二种:
- 原理:使用
canvas
结合fillText
生成小的水印图,然后使用createPattern(canvas, 'repeat')
平铺在用户上传的资料上 - 难点:水印倾斜后内容位置、宽度计算。因为限制30个字符的长度,图片大小不一,水印大小和水印内容字体大小是随着图片大小变化的,这里涉及一些数学计算处理。
- 坑:一开始并不知道
canvas
可以使用createPattern
这个API
进行平铺,我是直接将整个画布进行旋转,平移,这里头的位置移动参数很难调,几乎快要无解。
- 原理:使用
- 前端水印分为2种,一种是应用背景加水印,水印在用户登录的时候生成用户名、租户名等信息,作为背景图平铺在底层
学习
- 优秀文章
- 算法:1486. 数组异或操作
反思
- 做的不好的
- 没有做好今天工作和学习计划,时间管理没做好
- 卡在一个问题上太久,应该及时寻求帮助和支持。
- 如何改进:
- 每天做好第二天的计划 todos,在合理范围内的任务项,尽可能达成,包括不限于:工作,学习,生活锻炼等。
- 遇到技术问题不能解决时候,第一时间寻求支持。可能你认为的难题,人家大佬早就踩过坑了;或者你在做的事情已经有成熟的库支持,省时省力,只是你不知道而已。
- 正确搜索:技术问题多用谷歌搜索和
github/npm
搜索,毕竟 talk is treap, show me the code!
好文推荐
以下推荐来自 阮一峰周刊
- code-with-me JetBrains 公司推出的
webstorm
插件,可以远程帮女朋友写代码 - Starting a TypeScript Project in 2021
TypeScript
教程,老外的博客 - css-tips 有趣的
css
小栗子 - tailwind-css
tailwind-css
的基本使用 - react-flow 制作流程图的
react
库 - KK 给年轻人的99条建议
- css-tricks-全屏 api 全屏 api 的使用
- learn-go-with-tests 通过测试用例学习go