写点什么

谷歌实验室发布图片压缩 PWA:Squoosh

  • 2018-12-07
  • 本文字数:1051 字

    阅读完需:约 3 分钟

谷歌实验室发布图片压缩PWA:Squoosh

2018 Google Chrome开发者峰会上,Google 发布了Squoosh,这是一个开源的图片压缩渐进式 Web 应用(PWA),它同时也是现代 Web 技术的一个实际展示。


Squoosh 提供了一种快捷和简易的机制,能够实现多种格式的图片压缩。用户可以直接浏览 Squoosh.app,将图片拖放至浏览器的 Tab 标签中,然后能够尝试多种图片优化和转换的设置。这个应用会在屏幕的两侧分别展现按照选定的压缩配置在压缩前和压缩后的图片视图。


就目前来看,Squoosh 不会成为众多图片压缩应用的竞争者,这种应用包括传统的图片编辑工具,如 Photoshop 和 Sketch.app,以及基于 Web 的服务,如TinyPNGImageResize.orgCompressor.io,还包括各种桌面应用。


谷歌实验室发布 Squoosh 的主要目标是演示高级 web 应用程序如何利用现代技术在 web 浏览器中提供高性能的体验。


Squoosh 使用了多项技术来交付可靠的用户体验:



Squoosh 遵循了很多现代化的模式,包括:


  • async/await;

  • 使用 Canvas 进行图片绘制;

  • Decorators(目前早期草案版本得到了 TypeScript 的支持);

  • meta,目前由 Dojo 和其他组织在推广,在反应式架构中,能够提供各种属性;

  • 可离线使用的渐进式Web应用(PWA)和 service worker;

  • 使用 JSX 的反应式、虚拟 DOM 架构,由 React 在推广支持。


Squoosh 支持各种图像压缩格式,包括 BMP、GIF、JP2、JPEG、MozJPEG、PDF、PNG、TIFF 和 WebP。对图像压缩的支持因浏览器而异。例如,Firefox 支持对 BMP 进行编码,Safari 将编码功能委托给操作系统实现并且支持更多的格式,而 Chrome 本身支持的格式更少一些。Squoosh 使用 WebAssembly 来处理不同浏览器中不包含某些图像编解码器的场景,并用其执行编码和解码过程。


Squoosh 可以在 Apache 2 开源许可证下获取。谷歌鼓励开发者在遵循Squoosh贡献指南的前提下,通过Squoosh GitHub 项目为其做出贡献。

英文原文

https://www.infoq.com/news/2018/11/google-squoosh-pwa-webassembly


2018-12-07 15:322939

评论 2 条评论

发布
用户头像
看来基于node.js的photoshop离我们并不远了嘿:)
2018-12-09 12:45
回复
没有更多了
发现更多内容

深入理解PKI

俞凡

架构 网络安全 网络

再突破!MatrixDB 在 PostgreSQL 领域获双重大奖!

YMatrix 超融合数据库

数据库 postgresql 超融合数据库 YMatrix

架构训练营模块1作业

附加信息

架构训练营

极客时间 - 运维进阶训练营 - 第六周作业

dog_brother

Camtasia Studio2023软件和谐版录制电脑屏幕软件

茶色酒

Camtasia Studio2023

企业如何应对开源软件供应链安全问题?

安势信息

开源 开源安全 软件供应链安全 开源安全与治理 清源CleanSource SCA

深刻理解JAVA并发中的有序性问题和解决之道

JAVA旭阳

Java Java并发

Centos7.x部署K8S集群 (基于containerd 运行时)

蜗牛也是牛

编码开发如何开展API安全实现

穿过生命散发芬芳

12月月更

2022-12-04:给定一个由 ‘[‘ ,‘]‘,‘(‘,‘)’ 组成的字符串, 请问最少插入多少个括号就能使这个字符串的所有括号左右配对, 例如当前串是 “([[])“,那么插入一个‘]‘即可满足

福大大架构师每日一题

算法 rust 福大大

架构实战营 1-5 学生管理系统实战随堂测验

西山薄凉

「架构实战营」

AngularJS进阶(十七)在AngularJS应用中集成微信认证授权遇到的坑

No Silver Bullet

AngularJS 12月月更 微信认证授权

架构实战营模块一作业

张Dave

架构实战营 1-6 学生管理云平台实战随堂测验

西山薄凉

「架构实战营」

架构实战营 - 微信业务架构图 & “学生管理系统”毕设架构设计

huiwen

架构实战营

MongoDB源码学习:catalog与storage

云里有只猫

mongodb 源码刨析

MySQL锁,锁的到底是什么?

蝉沐风

MySQL innodb MVCC

Golong Context package

陈庆宗

Context #go

极客时间架构训练营作业-模块一

张建闯

架构实战营

mysql优化之 performance Schema常用查询sql

@下一站

MySQL 优化 12月日更 12月月更

自制操作系统番外:编程语言中变量是如何存储的

编程语言

DevOps真死了?平台工程真有用?

agnostic

DevOps 平台工程

【愚公系列】2022年12月 微信小程序-组件模板和组件样式

愚公搬代码

12月月更

Python:灵活的开发环境

eng八戒

Python Python自动化办公

AngularJS进阶(二十)HTML5实现获取地理位置信息并定位功能

No Silver Bullet

H5 AngularJS 12月月更 地理位置

bat脚本常用命令及测试

@下一站

软件开发 BAT 12月日更 12月月更

足球比赛中的数据科学

CnosDB

数据库 时序数据库 开源社区 CnosDB infra

Flutter — 仅用三个步骤就能帮你把文本变得炫酷!

编程的平行世界

flutter android

为什么FDA和MITRE也提及SBOM ? - 解读《医疗器械网络安全区域事件准备和响应手册》

安势信息

网络安全 SCA工具 SBOM 医疗器械 安势信息

架构实战营-模块1作业

小圆

AngularJS进阶(十九)在AngularJS应用中集成百度地图实现定位功能

No Silver Bullet

定位 百度地图 AngularJS 12月月更

谷歌实验室发布图片压缩PWA:Squoosh_大前端_Dylan Schiemann_InfoQ精选文章