news 2026/7/7 19:31:24

FreeTool新功能汇总和访问速度优化

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
FreeTool新功能汇总和访问速度优化

FreeTool 网站自上线以来,总用户数已突破4k,平均每日有超过200人访问。

FreeTool是一个集各项实用功能于一体的工具站,除前文提到的一些功能外,目前增加了一系列新功能,并对网站的访问速度进行了一系列优化。

FreeTool访问地址:https://xdxsb.top/FreeTool

新功能

xml格式化

xml格式化支持将一段未格式化的xml文本进行树状视图展开。

模板快速拼接

模板快速拼接支持将多张图片快速拼接成一张图,适合双图对比、多图展示等场景。

其中,图片的顺序可以用鼠标拖拽调整。

视频比例转换

视频比例转换支持自动将视频变成不同比例,比如将横屏视频改成竖屏制式,背景可以选择用纯色或模糊填充。

文本差异对比

文本差异对比可以将两段不同的文本进行对比查看,高亮不一致的内容行。

同时支持word/txt文件内容导入。

PDF转PPT

PDF转PPT是指将PDF文件转换成PPT的格式。

适合把NoteBookLM/秘塔AI等平台生成的PDF格式的幻灯片处理成PPT。

提示词生成器

提示词生成器针对AI绘画/视频/写作/PPT四个场景,配置了一些即点即用的模板,这些形容词往往是一些“开关”,添加前后可能会让生成内容产生质变。

网站加速

在之前的文章中,有人反馈网站进不去,加载慢。

最有效的方式就是针对国内访问环境,增加CDN缓存,即将网站内容提前缓存到全国各地的CDN服务器上,用户访问时,从最近的服务器上去获取内容,这样就非常快。

但看了一圈,国内的CDN服务都不算便宜,并且对域名有备案要求,我这个域名在服务器过期之后,备案已经失效了。

因此,只能从其它方式角度考虑,尽可能增加网站加载性能。

CDN依赖优化

网站中,观察网络请求就能发现,有些依赖是通过国外的免费CDN进行加载。

于是让AI帮我替换成了一些在国内访问速度更快的CDN。

原CDN新CDN资源
fonts.googleapis.comfonts.googleapis.cnGoogle Fonts (Inter 字体和 Material Icons)
cdnjs.cloudflare.comcdn.bootcdn.netHighlight.js (代码高亮)
cdn.jsdelivr.netcdn.bootcdn.netKaTeX (数学公式渲染)
cdn.jsdelivr.netcdn.staticfile.orggif.js (GIF压缩)
unpkg.comcdn.staticfile.orgTailwind CSS
code.datagridxl.comcdn.jsdelivr.netDataGridXL (表格编辑器)

依赖自托管

虽然换了CDN,但还是发现这几个依赖datagridxl2(表格转换)、katex(公式渲染)、highlight(代码高亮)、gif(gif压缩),占用了很多加载时间,至少拖慢了3秒钟。

于是索性采用自托管的方式,直接加载,不走网络请求,这样能明显提速。

使用字体预加载

浏览器默认不会立即加载字体,而是等到 CSS、DOM 都加载了,并且发现某个元素需要该字体时才开始请求。

用户侧的体验就是,界面已经渲染完了,字体突然又刷新了一下。

字体预加载就是在浏览器解析 CSS 之前,字体文件已在下载,字体文件会提早进入 HTTP 缓存,从而提升速度。

Tailwind CSS 优化

原本通过 CDN 去加载 Tailwind,这样必须下载全量 Tailwind(400KB+),包含所有颜色、间距、阴影、响应式类,动态生成 CSS,并且没法缓存,每次刷新页面都要重新编译。

于是借助 PostCSS,本地构建CSS,只生成网站里实际用到的样式,体积从大幅下降,并且该 CSS 是静态的,可缓存,首次加载后瞬间打开。

异步动态加载脚本

网站中用到不少第三方依赖,虽然采用了子托管的方式去降低网络请求延迟,但基本逻辑还是首次访问页面就直接加载完成。

异步动态加载是指只在需要的时候去加载,即切换到对应的功能Tab界面,此时相关脚本才开始加载。这样,又能减少网站初始加载的内容,提升速度。

图片格式优化

WebP 是 Google 推出的图片格式,占用空间会比 png/jpg 小很多。

对比PNGJPGWebP
体积中等更小
清晰度同样清晰但更小
支持透明✔️✔️

于是把图片用 cwebp 转换了一下,体积有超50%的减小。

字体格式优化

WOFF2 是 Google 推出的字体格式,和图片格式类似,它会比TTF格式体积小很多。

用 woff2_compress 把 ttf 转成 woff2,体积减少到1/3。

React组件懒加载

React组件懒加载指的是按需加载 React 组件代码,和前面“异步动态加载脚本”有点类似,主要区别是它是作用于组件,而不是外部依赖,这样也能提升页面加载速度。

最终效果对比

经过一系列优化措施后,网速提升的效果还是比较明显的。

优化前:

优化后:

当然,对于上不去github的用户来说,不管怎么优化,还是会访问不了。

如果有云服务厂商来找我合作,提供免费的服务器资源,我会很乐意在网站的角落中,公示赞助商的信息。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/7 18:53:19

办公管理|基于springboot + vue办公管理系统(源码+数据库+文档)

办公管理 目录 基于springboot vue办公管理系统 一、前言 二、系统功能演示 三、技术选型 四、其他项目参考 五、代码参考 六、测试参考 七、最新计算机毕设选题推荐 八、源码获取: 基于springboot vue办公管理系统 一、前言 博主介绍:✌️大…

作者头像 李华
网站建设 2026/7/7 17:28:38

vue基于springboot的私人服装西服定制设计与实现沙箱支付

目录已开发项目效果实现截图开发技术介绍系统开发工具:核心代码参考示例1.建立用户稀疏矩阵,用于用户相似度计算【相似度矩阵】2.计算目标用户与其他用户的相似度系统测试总结源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式&…

作者头像 李华
网站建设 2026/7/7 18:49:21

Java零基础入门讲解,从小白到大黑,收藏这篇就够了

目录 1. 什么是 Java?2. 配置 Java 开发环境 2.1 安装 JDK2.2 JDK 的组成2.3 集成开发环境的配置 2.3.1 设置 IDEA 主题2.3.2 设置 IDEA 字体2.3.3 设置 IDEA 背景色2.3.4 IDEA 常用快捷键2.3.5 IDEA 导入模块 3. Java 程序的结构4. 第一个 Java 程序5. Java 基础…

作者头像 李华