Z-BlogPHP插件:保存远程图片并压缩支持水印 5.1.3

Time:

Author:漠漠睡

付费资源

插件说明

           

1.保存并替换文章中远程图片到本地,启用插件后新建文章生效。
2.几乎所有后缀的图片(包括但不限于常规.jpg .png .gif,特殊.php.web等)都可以进行下载、压缩、水印
2.1.仅支持图片HTTP状态码为200的图片,若图片地址301、302至其他地址,将可能不会被下载等操作,且图片内容为空(ZBlogPHP1.7.2及以上版本支持3次跳转,具体查看5.1.0更新说明)
2.2.几乎不支持防盗链或需要COOKIE等才能正常显示的图片
3.图片宽度/高度大于指定宽则压缩;
4.可自定义保存图片质量。
5.默认gif动态图片直接跳过,可选开关仅下载不做压缩不水印
6.png图片可以以jpeg形式(图片质量)压缩,并赋予正确的图片后缀
7.因需提供历史文章处理功能,但由于会受到其他插件干扰,不保证一定可以使用,历史文章处理功能仅接收建议及真实BUG,不作为售后条件



收费插件应有良好的售后服务,售后QQ:购买后查看插件说明,备注“订单号”。
请打开开发模式截图,或直接提交报错的文章源代码。



更多信息请查看下方更新说明


更多有趣的,实用的SEO工具,请前往ZBlogSEO工具包



5.1.3

1.新增图片域名白名单

1.1.指定域名前缀图片地址的图片将不会被下载及压缩

1.2.建议排除域名以http开头


5.1.2

修复5.1.1更新后的无限循环BUG


5.1.1

修复一个BUG,调整PHP最低版本,历史版本不受影响


5.1.0

1.新增可跳转次数

该功能仅支持ZBlog PHP版本1.7.2及以上

1.1.仅针对开启php安全模式或启用open_basedir的服务器

1.2.现在支持部分情况下的301、302图片地址跳转下载

1.3.支持最多跳转3次


5.0.2

1.修复部分变量名错误

2.仅下载时,不判断图片类型



5.0.1

修复主动上传导致的双附件写入


5.0.0

1.重构下载,仅下载图片时,运行速度提高40%

2.重构附件数据,现在可以正确的保存数据

3.提升压缩效率,降低使用内存

4.修复水印选择特殊时候控制失效的问题

5.现在,水印文字的最大像素为30,不再允许修改为30以上

6.现在,水印文字可以正确的居中(默认字体测试)


4.1.5(2021-05-21)

1.修复水印偏移量在某些情况下无效的问题

2.说明:

2.1.水印偏移针对默认9个位置进行偏移,数值过大可能造成看不到水印


4.1.4(2021-02-22)

1.修复当开启修改远程图片保存目录及主动上传图片压缩时导致的图片已上传,但显示的路径不正确的问题

1.1.现在还原为系统默认的users/年/月


4.1.3(2021-02-06)

1.修复图片格式为某些动态地址时保存图片使用错误的后缀的问题


4.1.2(2021-02-05)

1.补充一个意外掉落的return,在文章编辑中使用主动上传的用户,务必进行更新,否则会报错


4.1.1(2021-02-04)

1.再处理一个恶心的图片状态问题


4.1.0(2021-02-04)

1.新增对除jpeg、jpg、png、gif以外类型的图片进行压缩及水印处理

1.1.某些特殊的wbmp,web图片也能正常使用压缩及水印了

1.2.特殊的图片类型将全部修改为jpg格式,且使用jpg格式的压缩率

2.优化历史文章处理页面返回结果

2.1.现在点击开始后,若内容为完成处理,将不可再次点击

2.2.现在返回结果将出现在文本框,随内容滚动,而非出现在页面内容,随浏览器滚动

2.3.历史文章处理仅作为赠送功能,不做任何售后

3.修复使用主动上传无法正常压缩及水印的问题

3.1.现在上传也将同步支持某些特殊图片格式


4.0.2(2021-02-01)

1.针对某个在PHP环境下不一定开启的函数进行判断优化


4.0.1(2021-01-31)

1.临时修复一个函数名错误


4.0.0(2021-01-31)

1.调整处理逻辑

2.一定程度上优化图片处理时间

3.对生成的文字水印进行一定调整(基于GD库生成文字图片基线问题)(当字体大小设置不合理可能造成的内容显示不全)

4.优化对历史文章处理时的一些问题

5.历史文章返回结果更加人性化


3.7.1(2021-01-14更新)

1.修复“历史文章处理”中对JS的意外报错

2.优化“历史文章处理”中正确识别文章是否存在


3.7(2020-04-16更新)

1.新增

1.1.新增对历史文章中的远程图片进行下载、压缩、水印

image.png

3.6

1.新增

1.1.很多人问我为什么对UE上传的图片不能压缩和水印

1.2.好吧,你们需要的功能来了

1.3.本次更新就增加了这一项

1.4.主动上传的PNG图片,即使开启“PNG图片以JPG压缩”其后缀不会变化

1.5.主动上传的GIF图片,默认不压缩,也不水印,(相信我GIF是个坑)

1.6.主动上传的图片文件,在文件管理显示的大小为原始大小,未压缩+水印后的大小

2.优化

2.1.再次优化内容

3.注意事项

3.0.“主动上传图片压缩+水印”请谨慎开启

3.1.开启主动上传压缩+水印后,所有依赖UE的上传功能所上传的图片都将被压缩+水印

3.2.其他编辑器的上传功能也将被压缩+水印

3.3.当开启本插件再开启其他云储存插件后,上传的图片将会被压缩及水印

image.pngimage.png


3.5

1.修复

1.1.修复当PHP超时时,文章中部分远程图片已下载,但因为超时而未修改为本地地址,导致重新提交需要二次下载的问题

1.2.修复当未开启GIF下载时,错误的未下载


3.4更新:(这是时隔半年的一次大更新)

1.优化

1.1.优化结构代码,清理冗余代码,提升压缩及水印速度,减少内存占用

1.1.1.超大远程图片文件进行下载压缩及水印还是可能会报错

1.1.2.超大文件可调整PHP脚本内存限制及超时时间限制

1.1.2.1.作为开发者,我并不赞同你这样做,个人建议还是手动压缩或者仅下载图片

1.2.优化配置页面,清理不必要项

1.2.1.现在可以自动判断是否添加HTTP协议

1.2.2.现在可以自动判断图片是否存在,若不存在将不下载仅替换为本地地址

1.2.3.现在可以自动判断图片类型,可以给予正确的图片后缀

2.新增

2.1.现在可以自定义水印的字体文件了,默认“仿宋GB2312",如需调整,请在水印设置页面替换

2.2.现在可以增加判断,当图片小于指定宽高时,不添加水印

2.2.1.这是为了避免水印比图片大,导致水印失败

2.3.现在可以自定义水印距离上下左右边距的距离了

2.3.1.这是为了避免水印一直存在各个顶角导致的不美观

2.4.现在可以调整下载模式为仅下载不压缩不水印

2.4.1.这是为了避免远程图片过大导致压缩和水印所占用的内存超过限制

2.5.现在可以将PNG图片以JPG图片的形式进行压缩

2.5.1.这是为了更进一步的压缩图片所占大小

2.5.2.使用JPG压缩的PNG图片透明部分将会由白色背景补齐,也就是图片将会失去透明度,请根据实际需要选择

2.5.3.这是一个开关,如需开启,请打开开关

3.调整

3.1.调整GIF默认不下载(主要是因为大多数GIF文件太过于庞大)

3.1.1.可选GIF是否下载,如需下载,请打开开关


3.3更新:

1.新增测试功能:当选择修改远程图片保存目录时,修改附件管理图片地址(插件功能开启前图片无法正常显示:原地址与修改后不符)并自定义图片显示最大宽高。

1.1可启用图片地址判断功能,启用后将自动判断图片地址为新地址或旧地址


3.2更新:

1.新增:当图片SRC无正常后缀时,自动判定并添加正确后缀。


3.1更新:

1.修复当最大宽高小于预设值时无法保存水印的问题。


3.0更新

1.新增图片水印功能

(该功能由‘s447889763’、‘wei520rt’率先提出建议)

2.水印功能颜色为HTML5控件,若不能正常显示,请升级为支持HTML5的浏览器

3.水印功能建立在压缩前提下,若不想压缩仅设置水印,请将图片质量调整为最大,压缩判定的宽高调整为无限大,例:9999999

4.后续可能会将水印从压缩中独立出来,敬请期待。

5.优化远程图片下载流程。

image.png


2.2更新:

1.祝大家猪年快乐

2.修复部分BUG


2.1更新:

1.新增测试玩法

1.1当直接复制或采集部分站点时,若图片地址为“//www.mijupai.com/”等类似地址时,远程图片下载将无法识别图片源地址,导致无法进行远程下载,开启此功能将可以补全图片地址为“http://www.mijupai.com/”

1.2当直接复制或采集部分站点时,若图片地址为“http://www.mijupai.com/demo.jpg?width/900/height/450”等类似地址时,远程图片下载将无法识别图片源地址,导致无法进行远程下载,开启此功能将可以修改图片地址为“http://www.mijupai.com/demo.jpg”

批量压缩本地图片功能已上线:图片批量压缩工具 欢迎下载!


2.0更新:

1.重新调整远程图片保存方式

2.修复当远程图片未完全下载时显示黑色底色

3.修复不能正确的显示图片大小

4.修复不能正确的显示图片类型

5.删除图片最大尺寸作为判断,因为它可能并没有在代码中起到该有的作用,因此暂时先删除,如果您有需要,可以给我留言再酌情考虑增加。

6.新增测试功能:

6.1.新增判断远程图片是否可以被下载(例如防盗链、远程图片已删除等),因为当对文章图片进行直接复制或者采集时,可能会抓取到远程图片缓存(复制304)或无法远程下载(采集404)时,将会报错

6.2.该功能目前仅供部分需要的用户使用,


1.4更新:

1.增加最大高度判定

2.增加远程图片是否已损坏判定,当远程图片损坏时,仅做空白图片下载


已初步确定优化方式,将在下一次更新时处理以下问题:

1.优化调整保存方式为下载后直接保存

2.优化完成速度,提升约一倍,所短时间约为原来的50%

3.新增最大高度作为判定标准之一(虽然可能并没有什么用)

3.新增修改远程图片保存目录

image.png

注意事项:

  1. 与七牛云存储、阿里云OSS等其他第三方云存储工具不相容,似乎这个的优先级更高,可能是因为调用发布成功的接口,关于对接第三方云存储将会在以后做测试(若可行)。


原图片:(大小306K)因zb应用中心上传图片会自动压缩,因此调用外部图片

1.jpg

压缩后:(图片质量85,压缩后大小54K)

9.jpg

压缩后:(图片质量75,压缩后大小39K)

2.jpg