今天在改进 iText 上传前压缩大图的功能。
其中,百度、腾讯、Google 等各家 OCR 服务对上传的图片尺寸都有要求、也都要求对图片进行 base64 压缩。可这要求跟要求可就不同了。
服务 | 宣称图片大小 | 实际可用大小 | 计算方式 |
---|---|---|---|
百度 | 4 MB | 1.5 MB | 4 / 2 / 1.3 = 1.5 MB |
腾讯 | 1 MB | 0.5 MB | 1 / 2 = 0.5 MB |
4 MB | 4 MB | 4 = 4 M |
为什么实际大小与宣称大小不一致呢?
既然 base64 会带来计算上的麻烦,为什么不直接使用解压后的图片大小呢?没错,Google 就是这么干的。你无需考虑 base64 带来的尺寸增加,也无需考虑一个字符串到底占几个字节,只要原图是 4 MB 以下即可
从这一点上看,服务接口的素质(公司的节操)顺序为:
>
>
- 腾讯
- 百度
来源: https://juejin.im/post/5a1449cef265da432717dc14