大师兄周刊(第7期):EXIF元信息,图片压缩

大师兄周刊
NO.1
本期内容

EXIF元信息,图片压缩,书签同步,webrtc通讯,mqtt选型,可视化图表等

NO.2
exif-js

一个用于读取图片EXIF元数据的javascript库

可以在浏览器上使用,获取图片的宽高,经纬度,拍摄之间,相机机型等等等数据

该库不适用于微信小程序,因为小程序中没有dom,但是经过一些微调,也可以在小程序中正常使用,本地识别,不依赖于网络

github地址:https://github.com/exif-js/exif-js

NO.3
图片手机加壳

一个使用纯 CSS 创建的 iPhone、Android、Lumia 和 iPad 设备图,用于展示原型设计之类的效果

换言之,手机加壳,用于手机截图后展示带手机边框的演示图片

github地址:https://github.com/marvelapp/devices.css

在线demo地址:http://marvelapp.github.io/devices.css/

NO.4
imagemin

一个图片压缩库,可以支持多种图片压缩

目前该库已停止维护,但是为MIT开源协议,使用上无需商业授权,适用于本地离线压缩

github地址:https://github.com/imagemin/imagemin

官方示例

import imagemin from 'imagemin';
import imageminJpegtran from 'imagemin-jpegtran';
import imageminPngquant from 'imagemin-pngquant';

const files = await imagemin(['images/*.{jpg,png}'], {
	destination: 'build/images',
	plugins: [
		imageminJpegtran(),
		imageminPngquant({
			quality: [0.6, 0.8]
		})
	]
});

console.log(files);
NO.5
peerJs

PeerJS 提供了基于 WebRTC 构建的完整、可配置且易于使用的点对点 API,同时支持数据通道和媒体流

github地址(客户端):https://github.com/peers/peerjs

github地址(服务端):https://github.com/peers/peerjs-server

服务端使用node,客户端html引入js

已测试可以使用

  1. MediaDevices.getDisplayMedia()获取浏览器界面作为WebRTC会话视频流传输
  2. HTMLCanvasElement.captureStream()获取canvas元素动画作为WebRTC会话视频流传输

可用于建立文字通讯,音视频通讯,在线多人游戏等方案

如将本地的nes游戏或者街机游戏设置为双玩家或者四玩家等玩家,可以参考使用webrtc方案

NO.6
floccus bookmarks sync

一个书签同步chrome扩展应用

主要用于平时debug查询的技术方案,日常github感兴趣的开源项目等,从书签中再次回顾并整理,如本文周刊,记录下好用的插件分享

chrome插件地址:https://chrome.google.com/webstore/detail/floccus-bookmarks-sync/fnaicdffflnofjppbagibeoednhnbjhg/related?hl=zh-CN

支持nextcloud

NO.7
emqx

一个开源的,用于物联网的开源、云原生分布式 MQTT 代理。

  1. 完整的 MQTT V3.1/V3.1.1 和 V5.0 协议规范支持
    • QoS0、QoS1、QoS2 消息支持
    • 持久对话和离线消息支持
    • 保留消息支持
    • 最后遗嘱消息支持
  2. TCP/SSL 连接支持
  3. MQTT/WebSocket/SSL 支持
  4. HTTP消息发布接口支持

……

github地址:https://github.com/emqx/emqx

NO.8
echarts
一个基于 JavaScript 的开源可视化图表库
  1. 文档清晰,便于开发
  2. 图表丰富,可以适用各种各样的功能,适配pc端和移动端
  3. 兼容当前绝大部分浏览器(IE9/10/11,Chrome,Firefox,Safari等)

目前使用esp32+fastapi+echarts制作温湿度仪表盘,效果不错,上手简单快速

END

发表评论

您的电子邮箱地址不会被公开。