<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[石沉溪洞]]></title><description><![CDATA[Automate Everything.]]></description><link>https://blog.youkuaiyun.com/Mr_Megamind</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Mr_Megamind]]></copyright><item><title><![CDATA[白屏检测系统的设计与实现]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/141127594</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/141127594</guid><author>Mr_Megamind</author><pubDate>Mon, 12 Aug 2024 20:08:42 +0800</pubDate><description><![CDATA[白屏检测作为一种辅助检测工具，在实际应用中具有接入简单、通用性高的优点。设定好例行的检测任务后，与客户端的打包流水线结合起来，可以做到包级别的检测粒度和分钟级别的检测效率。以此可以提高测试效率，帮助开发人员快速发现白屏问题。]]></description><category></category></item><item><title><![CDATA[稳定性更高的iOS自动化测试是怎么做的？]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/140965610</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/140965610</guid><author>Mr_Megamind</author><pubDate>Sun, 11 Aug 2024 17:10:48 +0800</pubDate><description><![CDATA[将计算机视觉技术引入自动化测试的控件定位流程中，大幅度降低了控件定位的实现成本和维护成本，提高了自动化测试脚本的稳定性，尤其是在一些高频变更的APP中。]]></description><category></category></item><item><title><![CDATA[前端canvas项目实战——在线图文编辑器(十一)：小地图MiniMap(下)]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/138922956</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/138922956</guid><author>Mr_Megamind</author><pubDate>Thu, 23 May 2024 14:24:57 +0800</pubDate><description><![CDATA[上一篇博文中，我们列举了小地图MiniMap，其4个核心方法中的3个。由于篇幅所限，在这篇博文中继续介绍剩余的内容。

这篇博文是《前端canvas项目实战——在线图文编辑器》付费专栏系列博文的第十一篇——小地图MiniMap(下)，主要的内容有：

1. 实现用鼠标拖动滑动窗口，画布中的视口随之改变。
2. 将4部分的核心代码组合起来，实现小地图的整个「生命周期」。]]></description><category></category></item><item><title><![CDATA[前端canvas项目实战——在线图文编辑器(十)：小地图MiniMap(上)]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/138761518</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/138761518</guid><author>Mr_Megamind</author><pubDate>Thu, 23 May 2024 14:20:45 +0800</pubDate><description><![CDATA[上一篇博文中，我们引入了「逻辑画布」的概念，让整个工具的页面看起来“专业”了很多。这也为后续的很多实用的功能打下了基础，例如本篇博文要讲到的小地图MiniMap。

这篇博文是《前端canvas项目实战——在线图文编辑器》付费专栏系列博文的第十篇——小地图MiniMap(上)，主要的内容有：
1. 小地图的作用及实现前的设计。
2. 实现为小地图添加背景图、滑动窗口和遮罩。]]></description><category></category></item><item><title><![CDATA[前端canvas项目实战——在线图文编辑器：序]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/139044300</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/139044300</guid><author>Mr_Megamind</author><pubDate>Tue, 21 May 2024 16:32:18 +0800</pubDate><description><![CDATA[这个专栏，我将带领大家从入门HTML5中的Canvas，到最终实现一个精美的在线图文编辑器。我的初心没有变，就像几年以前，我在自己苦苦摸索实现之后，写下一篇篇博文，想要让初学者们在学习Java Web的道路上少走一些弯路一样。]]></description><category></category></item><item><title><![CDATA[前端canvas项目实战——在线图文编辑器(九)：逻辑画布]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/138038517</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/138038517</guid><author>Mr_Megamind</author><pubDate>Tue, 23 Apr 2024 09:00:00 +0800</pubDate><description><![CDATA[上一篇博文中，我们实现了一组通用的功能按钮：复制、删除、锁定和层叠顺序。

这篇博文是《前端canvas项目实战——在线图文编辑器》付费专栏系列博文的第九篇——逻辑画布，主要的内容有：

1. 调整页面布局，将画布区域扩展至整个屏幕的剩余空间中。
2. 区分「物理画布」和「逻辑画布」，为实现「缩放」、「辅助线」等功能打基础。]]></description><category></category></item><item><title><![CDATA[前端canvas项目实战——在线图文编辑器(八)：复制、删除、锁定、层叠顺序]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/137203239</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/137203239</guid><author>Mr_Megamind</author><pubDate>Sat, 06 Apr 2024 07:30:00 +0800</pubDate><description><![CDATA[上一篇博文中，我们细致的讲解了实现文字的加粗、斜体、下划线、删除线这些功能时，遇到的Bug以及优化点。

这篇博文是《前端canvas项目实战——在线图文编辑器》付费专栏系列博文的第八篇——复制、删除、锁定、层叠顺序，主要的内容有：

1. 实现一组通用的功能按钮：复制、删除、锁定和层叠顺序]]></description><category></category></item><item><title><![CDATA[前端canvas项目实战——在线图文编辑器(七)：加粗、斜体、下划线、删除线（下）]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/136839524</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/136839524</guid><author>Mr_Megamind</author><pubDate>Wed, 20 Mar 2024 11:41:12 +0800</pubDate><description><![CDATA[上一篇博文中，我们实现了为文字添加和修改加粗、斜体、下划线、删除线。

这篇博文是《前端canvas项目实战——简历制作网站》付费专栏系列博文的第七篇——加粗、斜体、下划线、删除线（下），主要的内容有：

1. 在上一篇实现加粗、斜体、下划线和删除线等功能时遇到bug及其解决方案。
2. 在上一篇的实现中，我们发现了可以对数据进行优化的地方，降低数据存储和前后端传输的数据大小，减少浪费。]]></description><category></category></item><item><title><![CDATA[前端canvas项目实战——在线图文编辑器(六)：加粗、斜体、下划线、删除线（上）]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/136611116</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/136611116</guid><author>Mr_Megamind</author><pubDate>Wed, 20 Mar 2024 11:38:15 +0800</pubDate><description><![CDATA[上一篇博文中，我们实现了对文字的字体、字号和行间距的编辑。

这篇博文是《前端canvas项目实战——简历制作网站》付费专栏系列博文的第六篇——加粗、斜体、下划线、删除线，主要的内容有：

1. 针对文本框（fabric.Textbox）对象： 扩充属性列表，使用户可以为画布中选中的文本框设置加粗、斜体、下划线和删除线。]]></description><category></category></item><item><title><![CDATA[前端canvas项目实战——在线图文编辑器(五)：字体、字号、行间距]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/136307334</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/136307334</guid><author>Mr_Megamind</author><pubDate>Sun, 03 Mar 2024 18:11:54 +0800</pubDate><description><![CDATA[上一篇博文中，我们扩充了线条对象（fabric.Line）的属性列表，使用户可以为画布中选中的线条增加或修改端点样式（多种剪头、圆形、菱形等）。

这篇博文是《前端canvas项目实战——简历制作网站》付费专栏系列博文的第五篇——右侧属性栏(字体、字号、行间距)，主要的内容有：

1. 针对文本框（fabric.Textbox）对象：扩充属性列表，使用户可以修改画布中选中的文本框的字体、字号和行间距。
2. 在实现了整体更新文本框属性的基础上，还实现了仅更新用户选中的部分文字的样式。]]></description><category></category></item><item><title><![CDATA[前端canvas项目实战——在线图文编辑器(四)：线条端点样式]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/136171779</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/136171779</guid><author>Mr_Megamind</author><pubDate>Tue, 20 Feb 2024 11:52:17 +0800</pubDate><description><![CDATA[上一篇博文中，我们扩充了线条对象（fabric.Line）的属性列表，使用户可以修改画布中选中的线条的宽度和样式（实线、虚线、点线等）。

这篇博文是《前端canvas项目实战——简历制作网站》付费专栏系列博文的第四篇——右侧属性栏(线条端点样式)，主要的内容有：

1. 针对线条对象：扩充属性列表，使用户可以为画布中选中的线条增加或修改端点样式。]]></description><category></category></item><item><title><![CDATA[前端canvas项目实战——在线图文编辑器(三)：线条宽度&样式]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/135895467</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/135895467</guid><author>Mr_Megamind</author><pubDate>Sun, 28 Jan 2024 17:19:13 +0800</pubDate><description><![CDATA[上一篇博文中，我们初步实现了右侧属性栏，通过属性栏，我们可以便捷得修改画布中对象的颜色相关属性。

这篇博文是《前端canvas项目实战——简历制作网站》付费专栏系列博文的第三篇——右侧属性栏(线条宽度&样式)，主要的内容有：

1. 针对线条对象：扩充属性列表，使用户可以修改画布中选中的线条的宽度和样式（实线、虚线、点线等）]]></description><category></category></item><item><title><![CDATA[前端canvas项目实战——在线图文编辑器(二)：颜色]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/129940198</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/129940198</guid><author>Mr_Megamind</author><pubDate>Thu, 25 Jan 2024 15:08:48 +0800</pubDate><description><![CDATA[上一篇博文中，我们实现了`左侧工具栏`，通过点击工具栏，我们可以自由得在画布中添加想要的对象。

这篇博文是《前端canvas项目实战——简历制作网站》付费专栏系列博文的第二篇——右侧属性栏(颜色)，主要的内容有：

1. 初步实现右侧属性栏，使用户可以修改画布中选中的对象的**边框**和**填充**颜色。]]></description><category></category></item><item><title><![CDATA[前端canvas项目实战——在线图文编辑器(一)：左侧工具栏]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/122408354</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/122408354</guid><author>Mr_Megamind</author><pubDate>Tue, 26 Dec 2023 13:38:13 +0800</pubDate><description><![CDATA[在fabric基础系列博文中，我们通过代码向画布canvas中添加矩形、圆形等对象。

这篇博文是《前端canvas项目实战——简历制作网站》付费专栏系列博文的第一篇——左侧工具栏，主要的内容有：

1. 实现工具栏，使用户可以通过点击鼠标在画布中添加想要的对象。]]></description><category></category></item><item><title><![CDATA[【Python2】实现异步进程的创建、终止与资源回收]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/132300586</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/132300586</guid><author>Mr_Megamind</author><pubDate>Tue, 15 Aug 2023 21:35:59 +0800</pubDate><description><![CDATA[Handler处理器在收到A请求之后创建一个异步任务，然后立即返回，异步任务持续计算，直到结束。异步任务中由于计算量较大，需要起一个进程池来并发计算，减少耗时。Handler处理器在收到B请求之后可以正确终止掉上述异步任务。Tornado服务器中启动10个服务进程，由于计算消耗大量CPU和内存资源，需要控制10个服务进程同一时间只能执行一个上述异步任务。]]></description><category></category></item><item><title><![CDATA[【Java校招面试】实战算法（六）——合并区间（迅雷）]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/131539614</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/131539614</guid><author>Mr_Megamind</author><pubDate>Tue, 04 Jul 2023 17:37:51 +0800</pubDate><description><![CDATA[点击这里，返回本专栏的索引文章点击这里，返回上一篇《【Java校招面试】实战算法（五）——分数相加（虎牙）》]]></description><category></category></item><item><title><![CDATA[【Java校招面试】实战算法（五）——分数相加（虎牙）]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/131539348</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/131539348</guid><author>Mr_Megamind</author><pubDate>Tue, 04 Jul 2023 17:27:18 +0800</pubDate><description><![CDATA[点击这里，返回本专栏的索引文章点击这里，返回上一篇《【Java校招面试】实战算法（四）——被3整除（网易）》]]></description><category></category></item><item><title><![CDATA[【Java校招面试】实战算法（四）——被3整除（网易）]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/131539057</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/131539057</guid><author>Mr_Megamind</author><pubDate>Tue, 04 Jul 2023 17:15:20 +0800</pubDate><description><![CDATA[点击这里，返回本专栏的索引文章点击这里，返回上一篇《【Java校招面试】实战算法（三）——宝箱怪（百度）》]]></description><category></category></item><item><title><![CDATA[【Java校招面试】实战算法（三）——宝箱怪（百度）]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/131529654</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/131529654</guid><author>Mr_Megamind</author><pubDate>Tue, 04 Jul 2023 10:44:56 +0800</pubDate><description><![CDATA[点击这里，返回本专栏的索引文章点击这里，返回上一篇《【Java校招面试】实战算法（二）——2的N次方（迅雷）》]]></description><category></category></item><item><title><![CDATA[【Java校招面试】实战算法（二）——2的N次方（迅雷）]]></title><link>https://blog.youkuaiyun.com/Mr_Megamind/article/details/131512541</link><guid>https://blog.youkuaiyun.com/Mr_Megamind/article/details/131512541</guid><author>Mr_Megamind</author><pubDate>Mon, 03 Jul 2023 11:45:39 +0800</pubDate><description><![CDATA[点击这里，返回本专栏的索引文章点击这里，返回上一篇《【Java校招面试】实战算法（一）——背包问题总结》]]></description><category></category></item></channel></rss>