imgproxy-url- 构建器
用于构建的 TypeScript 帮助库 缩写 URLs (英语).
安装
npm i --save @bitpatty/imgproxy-url-builder
使用量
您可以导入参数构建器并链接您的转换 。 关于可用的变换列表,请检查以下各节.
import pb from '@bitpatty/imgproxy-url-builder';
// Just the transformer params
// Returns rot:90/bl:10
pb().rotate(90).blur(10).build();
// The transformer params with the target image
// Returns /-/rot:90/bl:10/czM6Ly9teWJ1Y2tldC9teWltYWdlLnBuZw
pb().rotate(90).blur(10).build({
path: 's3://mybucket/myimage.png',
});
// You can disable path encoding by setting 'plain' to true
// Returns /-/rot:90/bl:10/plain/s3://mybucket/myimage.png
pb().rotate(90).blur(10).build({
plain: true,
path: 's3://mybucket/myimage.png',
});
// To sign your URL provide the key and salt
// The path is required to sign your URL!
// Returns /TXf2QXtZkU-ULvrg0pLDqJlWUb7XdHkXD0h6NFWD-mo/rot:90/bl:10/czM6Ly9teWJ1Y2tldC9teWltYWdlLnBuZw
pb()
.rotate(90)
.blur(10)
.build({
path: 's3://mybucket/myimage.png',
signature: {
key: 'a91bdcda48ce22cd7d8d3a0eda93',
salt: 'a91bdcda48ce22cd7d8d3a0eda93',
size: 32, // Optional, specify the signature size. Defaults to 32
},
});
// To automatically prepend the imgproxy URL
// provide it as the 'baseUrl' setting
// Returns https://my-imgproxy-instance.example.com/-/rot:90/bl:10/czM6Ly9teWJ1Y2tldC9teWltYWdlLnBuZw
pb().rotate(90).blur(10).build({
path: 's3://mybucket/myimage.png',
baseUrl: 'https://my-imgproxy-instance.example.com',
});
// You can clone the current configuration for templating / reuse
const template = pb().rotate(90);
const copy = template.clone();
// To remove a modifier, use the `unset` function
const t = pb().rotate(90).blur(10);
t.unset('rotate');
// ... Or you can replace the previous setting by calling the
// modifier again
const t = pb().rotate(90).blur(10); // rotate: 90, blur: 10
t.rotate(34); // rotate: 34, blur: 10
链管
管道 可被锁链 使用链式公用功能:
import pb, { chain } from '@bitpatty/imgproxy-url-builder';
// Returns bl:10/rot:90/-/bl:10/rot:270
chain([pb().blur(10).rotate(90), pb().blur(10).rotate(270)]);
// Returns /8q2Ey2URdWizZb8PgAUKMO6C2tD4aXOa2IbCMV9pTKA/bl:10/-/ar:true/dGVzdC5wbmc
chain({
buildOptions: {
path: 'test.png',
signature: {
key: '73757065722d7365637265742d6b6579', // super-secret-key
salt: '73757065722d7365637265742d73616c74', // super-secret-salt
},
},
builders: [pb().blur(10), pb().autoRotate()],
});
许可证
现按 MIT 许可证。 。 。 .
修改器
- 调整
- 自动旋转
- 背景情况
- 阿尔法
- 模糊
- 模糊的检测
- 亮度
- 缓存按钮
- 对比
- 作物
- 禁用动画
- dpi 语录
- 4月 (单位:千美元)
- 绘图检测
- 双音
- 执行Thumbnail
- 扩展
- 过期
- 扩展
- 扩展视野Ratio
- 倒转图像Url
- 文件Name
- 格式
- 格式 质量
- 渐变
- 重力
- 半径
- jpeg 选项
- 保持对映
- 最大字节
- 分钟高
- 微风
- 单色
- 选项
- 页 次
- 像素化
- png 选项
- 预设
- 质量
- 原始内容
- 调整大小
- 调整大小 算法
- 返回连接
- 旋转
- 饱和度
- 锐化
- 跳过处理中
- 条条彩色文件
- 条形元数据
- 样式
- 修饰
- 打开
- 视频 Thumbnail 关键框架
- 视频 Thumbnail 二等
- 视频ThumbnailTile
- 水印
- 水上标记
- 水印大小
- 水印图文
- 水标记Url
- 缩放
调整(imgproxy 文档(中文(简体) )
定义亮度、对比度和饱和度.
示例
pb().adjust({
brightness: 100, // optional
contrast: 0.8, // optional
saturation: 0.9 // optional
});
自动旋转( E)imgproxy 文档(中文(简体) )
基于 EXIF 方向参数自动旋转图像.
示例
pb().autoRotate();
背景情况(imgproxy 文档(中文(简体) )
用指定的颜色填充图像背景.
示例
pb().background('ff0000');
pb().background({
r: 255,
g: 0,
b: 0
});
阿尔法(imgproxy 文档(中文(简体) )
将α 通道添加到背景 .
示例
pb().backgroundAlpha(0.4);
模糊( e)imgproxy 文档(中文(简体) )
在图像上应用了高斯模糊过滤器.
示例
pb().blur(10);
模糊检测( O)imgproxy 文档(中文(简体) )
检测所提供的类的物体并模糊它们.
示例
pb().blurDetections({
sigma: 10,
classNames: ['face']
});
亮度( 微弱)imgproxy 文档(中文(简体) )
调整图像的亮度.
示例
pb().brightness(-100);
缓存屏( B)imgproxy 文档(中文(简体) )
将缓存缓存添加到 imgproxy 参数.
示例
pb().cacheBuster("abcdef123");
对比(imgproxy 文档(中文(简体) )
调整结果图像的对比度 .
示例
pb().contrast(0.3);
作物(imgproxy 文档(中文(简体) )
裁剪图像.
示例
pb().crop({
width: 100, // optional
height: 50, // optional
gravity: { // optional
type: GravityType.CENTER, // required
offset: { // optional
x: 20, // required
y: 20 // required
}
}
})
禁用动画( E)imgproxy 文档(中文(简体) )
使用单帧动画图像.
示例
pb().disableAnimation();
dpi (英语:imgproxy 文档(中文(简体) )
设定时, Ingproxy 将用所提供的值来取代图像的DPI元数据.
示例
pb().dpi(300);
dpr (时速imgproxy 文档(中文(简体) )
根据指定的因子来乘以尺寸.
示例
pb().dpr(18);
绘图检测( E)imgproxy 文档(中文(简体) )
探测所提供类别的物体并绘制其边框.
示例
pb().drawDetections({
classNames: ["face"]
});
双音( n)imgproxy 文档(中文(简体) )
用指定的强度和颜色将图像转换为双音.
示例
pb().duotone({
intensity: 1.0, // required
color1: 'ff0000', // required
color2: '00ff00' // required
});
执行Thumbnail(imgproxy 文档(中文(简体) )
如果源图像有嵌入式缩略图,imgproxy将使用嵌入式缩略图来代替主图像.
示例
pb().enforceThumbnail();
扩大( e)imgproxy 文档(中文(简体) )
如果图像比给定的大小小,则扩大图像.
示例
pb().enlarge();
期满imgproxy 文档(中文(简体) )
如果到期日已到,则返回 a 404.
示例
pb().expires(new Date());
pb().expires(1661431326);
扩展( e)imgproxy 文档(中文(简体) )
如果图像小于给定大小,则扩展图像.
示例
pb().extend();
pb().extend({
gravity: {
type: GravityType.NORTH // required
offset: { // optional
x: 10; // required
y: 20; // required
}
}
});
扩展视野Ratio(imgproxy 文档(中文(简体) )
将图像扩展至请求的宽比 .
示例
pb().extendAspectRatio();
pb().extendAspectRatio({
gravity: {
type: GravityType.NORTH // required
offset: { // optional
x: 10; // required
y: 20; // required
}
}
});
倒置图像Url(imgproxy 文档(中文(简体) )
通过指定其 URL 设置自定义倒置图像.
示例
pb().fallbackImageUrl('https://example.com');
文件Nameimgproxy 文档(中文(简体) )
设置内容偏移标题的文件名.
示例
// Not encoded
pb().fileName('filename.png');
// Encoded
pb().fileName('ZmlsZW5hbWUucG5n', true);
格式 (单位:千美元)imgproxy 文档(中文(简体) )
指定生成的图像格式.
示例
pb().format('png');
格式 质量imgproxy 文档(中文(简体) )
设置每种格式所需的质量.
示例
pb().formatQuality({
jpeg: 100,
png: 50,
// ...
});
渐变( e)imgproxy 文档(中文(简体) )
在已处理的图像上放置梯度.
示例
pb().gradient({
opacity: 1, // required
color: 'ababab', // optional
direction: 'up', // optional
start: 0.0, // optional
stop: 0.7 // optional
});
重力( r)imgproxy 文档(中文(简体) )
设定重力.
示例
pb().gravity({
type: GravityType.NORTH // required
offset: { // optional
x: 10, // required
y: 20 // required
}
});
半径( hashum) (imgproxy 文档(中文(简体) )
何时 hashsum_type 没有 none, imgproxy 将计算出源图像的散列和所提供散列相比较.
示例
pb().hashsum({
hashsum: 'ABCDEF', // required
type: HashsumType.NONE // optional
});
jpeg 选项imgproxy 文档(中文(简体) )
允许重新定义 JPEG 保存选项 .
示例
pb().jpegOptions({
progressive: boolean, // optional
noSubsample: boolean, // optional
trellisQuant: boolean, // optional
overshootDeringing: boolean, // optional
optimizeScans: boolean, // optional
quantizationTable: 7 // optional
});
保持版权( E)imgproxy 文档(中文(简体) )
在剥去元数据的同时保留版权信息.
示例
pb().keepCopyright();
最大字节( E)imgproxy 文档(中文(简体) )
将文件大小限制为指定的字节数 .
示例
pb().maxBytes(10);
分钟( MinH8)imgproxy 文档(中文(简体) )
定义生成的图像的最小高度.
示例
pb().minHeight(100);
分钟( MinWidth) (imgproxy 文档(中文(简体) )
定义所产生的图像最小宽度.
示例
pb().minWidth(100);
单色( r)imgproxy 文档(中文(简体) )
将图像转换为单色 .
示例
pb().monochrome({
intensity: 0.3, // required
color: 'ff0000' // optional
});
垫 (e)imgproxy 文档(中文(简体) )
对图像应用指定的编码.
示例
pb().pad({
top: 100, // optional (Note: sets all other sides if not set explicitly)
right: 100, // optional
bottom: 10, // optional
left: 10 // optional
});
页 次imgproxy 文档(中文(简体) )
当源图像支持页化(PDF,TIFF)或动画(GIF,WebP)时,此选项允许指定要使用的页面.
示例
pb().page(10);
有像素( n)imgproxy 文档(中文(简体) )
将像素过滤器应用到生成的图像中.
示例
pb().pixelate(5);
png 选项imgproxy 文档(中文(简体) )
允许重新定义 PNG 保存选项 .
示例
pb().pngOptions({
interlaced: true, // optional
quantize: false, // optional
quantization_colors: 10 // optional
});
预设( e)imgproxy 文档(中文(简体) )
设置一个或多个预设,供imgproxy使用.
示例
pb().preset('mypreset');
pb().preset(['preset1', 'preset2']);
质量(imgproxy 文档(中文(简体) )
重新定义生成图像的质量 .
示例
pb().quality(80);
生 (imgproxy 文档(中文(简体) )
返回原始未处理和未受限制的源图像
示例
pb().raw();
调整大小( e)imgproxy 文档(中文(简体) )
调整图像大小.
示例
pb().resize({
type: ResizeType.AUTO, // optional
width: 100, // optional
height: 50 // optional
});
调整算法大小( E)imgproxy 文档(中文(简体) )
定义 imgproxy 用于再大小的算法.
示例
pb().resizingAlgorithm(ResizingAlgorithm.NEAREST));
返回标记( A)imgproxy 文档(中文(简体) )
返回内容- Disposition 页眉中的附件.
示例
pb().returnAttachment();
旋转( r)imgproxy 文档(中文(简体) )
以指定角度旋转图像.
示例
pb().rotate(90);
饱和度( e)imgproxy 文档(中文(简体) )
调整所生成图像的饱和度.
示例
pb().saturation(0.3);
磨口 (imgproxy 文档(中文(简体) )
对图像使用磨刀过滤器.
示例
pb().sharpen(3);
跳过处理( T)imgproxy 文档(中文(简体) )
跳过列表格式的处理 .
示例
pb().skipProcessing(['png', 'svg']);
条纹彩色文件imgproxy 文档(中文(简体) )
从图像中去除颜色描述文件.
示例
pb().stripColorProfile();
条形元数据( T)imgproxy 文档(中文(简体) )
剥离图像中的元数据.
示例
pb().stripMetadata();
样式( e)imgproxy 文档(中文(简体) )
预留 a <style> 带有 CSS 样式的节点 <svg> 源 SVG 图像的节点.
示例
pb().style('fill:red;width:30px;');
pb().style({
fill: 'red';
width: '30px'
});
修饰( r)imgproxy 文档(中文(简体) )
调整图像背景 .
示例
pb().trim({
threshold: 10, // required
color: 'ffffff', // optional
equal: { // optional
horizontal: true, // optional
vertical: true // optional
}
});
(无)imgproxy 文档(中文(简体) )
允许重新定义解析选项 .
示例
pb().unsharpen({
mode: UnsharpeningMode.AUTO, // optional
weight: 11, // optional
dividor: 24 // optional
});
视频:ThumbnailKeyframes(imgproxy 文档(中文(简体) )
指定视频缩略图秒前的最新键框是否用于缩略图生成
示例
pb().videoThumbnailKeyframes(true);
视频:Thumbnail Second(imgproxy 文档(中文(简体) )
重新定义用于缩略图的第二个 .
示例
pb().videoThumbnailSecond(3);
视频:ThumbnailTile(imgproxy 文档(中文(简体) )
使用源视频帧生成一个平面图案
示例
pb().videoThumbnailTile({
step: 1, // required
columns: 1, // required
rows: 1, // required
tileWidth: 50, // required
tileHeight: 50, // required
extendTile: true, // optional
trim: true, // optional
fill: true, // optional
focusX: 10.3, // optional
focusY: 10.3, // optional
});
水印 (imgproxy 文档(中文(简体) )
在已处理的图像上放置水印.
示例
pb().watermark({
opacity: 0.8, // required
position: WatermarkPosition.REPLICATE // optional
scale: 2 // optional
});
pb().watermark({
opacity: 1.0,
scale: 1,
position: WatermarkPosition.WEST // optional
offset: { // optional
x: 10, // optional
y: 10 // optional
}
})
水印Shadow( 缩写:imgproxy 文档(中文(简体) )
以相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相.
示例
pb().watermarkShadow(10);
水标记imgproxy 文档(中文(简体) )
定义水印的理想宽度和高度。 imgproxy 总是使用 fit 在调整水印时调整类型大小,并在需要时加以扩大.
示例
pb().watermarkSize({
width: 30, // required
height: 30 // required
});
水印图文集( E)imgproxy 文档(中文(简体) )
从提供的文本中生成一个图像并用作水印.
示例
pb().watermarkText("my watermark");
水标记Url(imgproxy 文档(中文(简体) )
使用指定的 URL 的图像作为水印 .
示例
pb().watermarkUrl('https://example.com');
缩放( e)imgproxy 文档(中文(简体) )
根据指定的因素将图像尺寸相乘.
示例
pb().zoom(3);