Image Xweb Image
/ Title: imageXWebImage Description: imageXWebImage /
概述
imageX简介
https://www.byteoc.com/docs/508/6876/
ImageX图片服务(ImageX)主要面向中小企业提供图片上传,存储,处理,分发的一站式便捷服务,并提供详尽的服务质量监控和报表服务;
交付形态:图片服务、服务端SDK、客户端SDK等多种形式组合;
主要应用场景
图床场景 协助企业提供图片托管服务,且根据不同图床场景不同,可以提供禁止原图保护等能力;
图片封面场景 针对图片封面提供智能裁剪能力,支持在线智能裁剪能力;
图文与瀑布流图片 针对推荐提供图片SDK预加载、预解码能力;
版权图片场景 针对版权图片提供图片多种加密方式;
产品优势 依托于字节系产品多年的图像技术积累和基础资源,为客户提供最极致的一站式图片、图像处理能力。
图片在线处理
通过基于URL的API提供各种图像处理,以将艺术效果应用于图像或简单地对其进行缩放。通过简单的链式变换系统,您可以即时裁剪,缩放,转码,过滤和优化原始高分辨率图像。基于条件参数或查看上下文的裁剪变换,为用户提供最合适的版本。
全球图片分发 接入全球主流CDN厂商,在多家CDN厂商间灵活的智能调度,确保国内外用户的极致观看体验。
高速上传 多机房部署,拥有全球上行CDN加速,支持不同场景的高速上传需求。
全端HEIF传输支持 端到端 HIEC/HEIF等高压缩图片格式,相比 WEBP体积还要小30%,在保持画质不变的前提下,成本再次节省;
SDK全端支持,可视化图片质量监控
支持上传、图片加载SDK,支持 Android、iOS 图片SDK,支持跟踪与监控图片图片上传、分发网络、解码等多阶段质量详情;
imageXWebImage 模块概述
本模块支持SDWebImage、YYWebImage等主流开源框架的绝大部分核心能力,提供主流格式图片加载、基础处理以及服务质量监控上报等能力,并针对HEIF动图/静图解码场景进行自研解码器优化。使用本模块需创建AppID获取相关配置参数,详见字节企业服务官网接入文档。
模块接入攻略
接入前需创建AppID获取相关配置参数,流程参考字节企业服务官网接入文档
使用此模块之前需要先配置 config.xml 文件,配置完毕,需通过云端编译生效,配置方法如下:
- 名称:imageXWebImage
参数:
appID:(必须配置)从字节企业服务平台获取的 appID。 appName:(可选配置)APP的名称,建议不要包含中文字符。
配置示例:
<feature name="imageXWebImage" platform="ios">
<param name="appID" value="123456789"/>
<param name="appName" value="my_awesome_app"/>
</feature>
模块接口
openPicture
异步打开图片。使用前必须在config.xml
中配置appID。appID的获取方法见字节企业服务平台
openPictureSync({params}, callback(ret, err))
params
rect:
类型:关联数组 描述:(必填项)模块(图片)的位置及尺寸
{
x: 0, //(必填项)数字类型;模块左上角的 x 坐标(相对于所属的 Window 或 Frame);默认值:0
y: 0, //(必填项)数字类型;模块左上角的 y 坐标(相对于所属的 Window 或 Frame);默认值:0
w: 320, //(必填项)数字类型;模块的宽度;默认值:所属的 Window 或 Frame 的宽度
h: 250 //(必填项)数字类型;模块的高度;默认值:250
}
path:
- 类型:字符串
- 描述:(必填项)图片资源地址,如支持http和https路径,如 http://xxx/xxx/abc.webp
fixedOn:
- 类型:字符串
- 描述:目标窗口名字,默认为主窗口名字
fixed:
- 类型:Boolean
- 描述:视图是否固定,为NO时跟随目标窗口内容滚动而滚动
callback(ret, err)
ret:
- 类型:JSON对象
- 内部字段:
picID: "bf31d554-ede7-11ea-adc1-0242ac120002" // 字符串。图片句柄,如果打开失败将为空。后续关闭该图片时,需要传入此句柄作为参数。 msg: "success" | "failure" | "请在config.xml中指定appID,以便您使用ImageX的功能. 获取appID: https://www.byteoc.com/docs/508/68469/ Please specify appID in config.xml so ImageX can be initialized. " //字符串。
err:
- 类型:JSON 对象
- 内部字段:
示例代码
function openPicture2() {
var imageX = api.require('imageXWebImage');
imageX.openPicture({
rect : {
x : 100,
y : 400,
w : 100,
h : 75
},
path: 'http://www.ioncannon.net/wp-content/uploads/2011/06/test2.webp'
}, (picID, err) => {
// 存储 picID
});
}
可用性
iOS系统
可提供的1.0.0及更高版本
openPictureSync
同步打开图片。使用前必须在config.xml
中配置appID。配置方法见文档描述。
openPictureSync({params})
params
rect:
类型:关联数组 描述:(必填项)模块(图片)的位置及尺寸
{
x: 0, //(必填项)数字类型;模块左上角的 x 坐标(相对于所属的 Window 或 Frame);默认值:0
y: 0, //(必填项)数字类型;模块左上角的 y 坐标(相对于所属的 Window 或 Frame);默认值:0
w: 320, //(必填项)数字类型;模块的宽度;默认值:所属的 Window 或 Frame 的宽度
h: 250 //(必填项)数字类型;模块的高度;默认值:250
}
path:图片路径
- 类型:字符串
- 描述:(必填项)图片资源地址,如支持http和https路径,如 http://xxx/xxx/abc.webp
fixedOn:
- 类型:字符串
- 描述:目标窗口名字,默认为主窗口名字
fixed:
- 类型:Boolean
- 描述:视图是否固定,为NO时跟随目标窗口内容滚动而滚动
返回值
ret:
- 类型:JSON对象
- 内部字段:
picID: "bf31d554-ede7-11ea-adc1-0242ac120002" // 字符串。图片句柄,如果打开失败将为空。后续关闭该图片时,需要传入此句柄作为参数。 msg: "success" | "failure" | "请在config.xml中指定appID,以便您使用ImageX的功能. 获取appID: https://www.byteoc.com/docs/508/68469/ Please specify appID in config.xml so ImageX can be initialized. " //字符串。
示例代码
function openPicture() {
var imageX = api.require('imageXWebImage');
var picID = imageX.openPictureSync({
rect : {
x : 0,
y : 400,
w : 100,
h : 75
},
path: 'https://www.planetware.com/wpimages/2020/02/france-in-pictures-beautiful-places-to-photograph-eiffel-tower.jpg',
});
}
可用性
iOS系统
可提供的1.0.0及更高版本
isOpen
判断一张图片是否打开
isOpen({params}, callback(ret, err))
params
pictureID:
- 类型: string
- 描述: 打开图片时获得的图片句柄
callback(ret, err)
ret:
- 类型:BOOL 对象
- 描述:标识图片是否打开
示例代码
function isOpen() {
var imageX = api.require('imageXWebImage');
imageX.isOpen({
pictureID: openedPictures[openedPictures.length - 1]
}, (ret, err) => {
if (err) {
api.toast({
msg: "error",
location: "middle"
})
} else {
if (ret) {
api.toast({
msg: "is open",
location: "middle"
})
} else {
api.toast({
msg: "is not open",
location: "middle"
})
}
}
});
}
可用性
iOS系统
可提供的1.0.0及更高版本
isOpenSync
打开图片的同步方法
isOpenSync({params})
params
pictureID:
- 类型: string
- 描述: 打开图片时获得的图片句柄
示例代码
function isOpen() {
var imageX = api.require('imageXWebImage');
var picIsOpen = imageX.isOpen({
pictureID: openedPictures[openedPictures.length - 1]
});
}
返回值
- 类型:BOOL
- 描述:标识图片是否已被打开
可用性
iOS系统
可提供的1.0.0及更高版本
closePicture
关闭图片
closePicture({params}, callback(ret, err))
params
pictureID:
- 类型: string
- 描述: 打开图片时获得的图片句柄
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
success: true //布尔型;true||false
msg: '' // 字符串
}
err:
- 类型:JSON 对象或nil
示例代码
function closeLastOpenedPicture() {
var imageX = api.require('imageXWebImage');
var msg = imageX.closePicture(
{pictureID: openedPictures[openedPictures.length - 1]},
function(ret, err) {
var success = ret["success"]
var mag = ret["mag"]
// ...
}
);
openedPictures.pop()
}
可用性
iOS系统
可提供的1.0.0及更高版本
closePictureSync
关闭图片的同步方法
closePictureSync({params})
params
pictureID:
- 类型: string
- 描述: 打开图片时获得的图片句柄
返回值
- 类型:JSON 对象
- 内部字段:
{
success: true //布尔型;true||false
msg: 'xxx' // 字符串
}
示例代码
function closeLastOpenedPicture() {
var imageX = api.require('imageXWebImage');
var msg = imageX.closePictureSync({pictureID: openedPictures[openedPictures.length - 1]});
openedPictures.pop()
}
可用性
iOS系统
可提供的1.0.0及更高版本
closeAllPictures
关闭所有已打开的图片 closeAllPictures(function(ret, err) {})
params
无
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
success: true //布尔型;true||false
msg: '' // 字符串
}
err:
- 类型:JSON 对象或nil
示例代码
function closeAllPictures() { var imageX = api.require('imageXWebImage'); imageX.closeAllPictures(function(ret, err) { openedPictures = [] }); }
可用性
iOS系统
可提供的1.0.0及更高版本
closeAllPicturesSync
关闭所有已打开的图片的同步方法 closeAllPicturesSync()
params
无
返回值
- 类型:JSON 对象
- 内部字段:
{
success: true //布尔型;true||false
msg: '' // 字符串
}
示例代码
function closeAllPictures() {
var imageX = api.require('imageXWebImage');
imageX.closeAllPicturesSync();
}
可用性
iOS系统
可提供的1.0.0及更高版本
numOfOpenedPictureSync
获取已打开图片的数量的同步方法 numOfOpenedPictureSync()
params
无
返回值
- 类型:整数
- 描述:已打开图片的数量
示例代码
var imageX = api.require('imageXWebImage');
var cnt = imageX.numOfOpenedPictureSync();
可用性
iOS系统
可提供的1.0.0及更高版本