全部产品

截图模版

本篇文档提供了PHP SDK截图模板功能的API调用示例。包含添加截图模板、修改截图模板、删除截图模板、查询截图模板列表等。

初始化客户端

使用前请先初始化客户端,请参见初始化

添加截图模板

调用AddVodTemplate接口,完成添加截图模板功能。

接口参数和返回字段请参见AddVodTemplate。调用示例如下:

/**
 * 构建截图模板的配置数据,根据具体设置需求修改对应的参数值
 * (以下代码示例为雪碧图完整配置)
 * @return
 */
function buildSnapshotTemplateConfig() {
    $templateConfig = array();

    //普通截图配置(与雪碧图原始图配置共用该配置信息)
    $snapshotConfig = array();
    $snapshotConfig["Count"] = "50";
    $snapshotConfig["Interval"] = "1";
    $snapshotConfig["SpecifiedOffsetTime"] = "0";
    $snapshotConfig["Width"] = "200";
    $snapshotConfig["Height"] = "200";
    $snapshotConfig["FrameType"] = "normal";
    $templateConfig["SnapshotConfig"] = $snapshotConfig;

    //雪碧图配置(雪碧图配置必须是建立在普通截图配置之上)
    $spriteSnapshotConfig = array();
    $spriteSnapshotConfig["CellWidth"] = "120";
    $spriteSnapshotConfig["CellHeight"] = "68";
    $spriteSnapshotConfig["Columns"] = "3";
    $spriteSnapshotConfig["Lines"] = "10";
    $spriteSnapshotConfig["Padding"] = "20";
    $spriteSnapshotConfig["Margin"] = "50";
    $spriteSnapshotConfig["KeepCellPic"] = "keep";
    $spriteSnapshotConfig["Color"] = "tomato";
    $templateConfig["SpriteSnapshotConfig"] = $spriteSnapshotConfig;

    //截图类型(存在雪碧图配置,该类型必须是"SpriteSnapshot",否则为"NormalSnapshot")
    $templateConfig["SnapshotType"] = "SpriteSnapshot";

    return json_encode($templateConfig);
}

/**
 * 添加截图模板函数
 */
function addSnapshotVodTemplate($client) {
    $request = new vod\AddVodTemplateRequest();
    //模板名称
    $request->setName("截图模板添加测试");
    //模板类型,固定值为Snapshot
    $request->setTemplateType("Snapshot");
    //截图模板配置数据生成
    $request->setTemplateConfig(buildSnapshotTemplateConfig());

    return $client->getAcsResponse($request);
}

/**
 * 以下为调用示例
 */
try {
    $client = initVodClient("<AccessKeyId>", "<AccessKeySecret>");

    $result = addSnapshotVodTemplate($client);
    var_dump($result);
} catch (Exception $e) {
    print $e->getMessage()."\n";
}

修改截图模板

调用UpdateVodTemplate接口,完成修改截图模板功能。

接口参数和返回字段请参见UpdateVodTemplate。调用示例如下:

/**
 * 构建截图模板的配置数据,根据具体设置需求修改对应的参数值
 * (以下代码为普通截图完整配置)
 * @return
 */
function buildSnapshotTemplateConfig() {
    $templateConfig = array();

    //普通截图配置(与雪碧图原始图配置共用该配置信息)
    $snapshotConfig = array();
    $snapshotConfig["Count"] = "50";
    $snapshotConfig["Interval"] = "1";
    $snapshotConfig["SpecifiedOffsetTime"] = "0";
    $snapshotConfig["Width"] = "200";
    $snapshotConfig["Height"] = "200";
    $snapshotConfig["FrameType"] = "normal";
    $templateConfig["SnapshotConfig"] = $snapshotConfig;

    //截图类型(存在雪碧图配置,该类型必须是"SpriteSnapshot",否则为"NormalSnapshot")
    $templateConfig["SnapshotType"] = "NormalSnapshot";

    return json_encode($templateConfig);
}

/**
 * 修改截图模板函数
 */
function updateSnapshotVodTemplate($client) {
    $request = new vod\UpdateVodTemplateRequest();
    //设置要修改的模板ID
    $request->setVodTemplateId("6e9835ce8896aa3ace027c048352****");
    //模板名称
    $request->setName("截图模板修改测试");
    //截图模板配置数据生成
    $request->setTemplateConfig(buildSnapshotTemplateConfig());

    return $client->getAcsResponse($request);
}


/**
 * 以下为调用示例
 */
try {
    $client = initVodClient("<AccessKeyId>", "<AccessKeySecret>");

    $result = updateSnapshotVodTemplate($client);
    var_dump($result);
} catch (Exception $e) {
    print $e->getMessage()."\n";
}

删除截图模板

调用DeleteVodTemplate接口,完成删除截图模板功能。

接口参数和返回字段请参见DeleteVodTemplate。调用示例如下:

/**
 * 删除截图模板函数
 */
function deleteSnapshotVodTemplate($client) {
    $request = new vod\DeleteVodTemplateRequest();
    //设置要删除的模板ID
    $request->setVodTemplateId("6e9835ce8896aa3ace027c048352****");

    return $client->getAcsResponse($request);
}


/**
 * 以下为调用示例
 */
try {
    $client = initVodClient("<AccessKeyId>", "<AccessKeySecret>");

    $result = deleteSnapshotVodTemplate($client);
    var_dump($result);
} catch (Exception $e) {
    print $e->getMessage()."\n";
}

查询截图模板列表

调用ListVodTemplate接口,完成查询截图模板列表功能。

接口参数和返回字段请参见ListVodTemplate。调用示例如下:

/**
 * 查询截图模板列表
 */
function listSnapshotVodTemplate($client) {
    $request = new vod\ListVodTemplateRequest();
    //模板类型,固定值为Snapshot
    $request->setTemplateType("Snapshot");

    return $client->getAcsResponse($request);
}


/**
 * 以下为调用示例
 */
try {
    $client = initVodClient("<AccessKeyId>", "<AccessKeySecret>");

    $result = listSnapshotVodTemplate($client);
    var_dump($result);
} catch (Exception $e) {
    print $e->getMessage()."\n";
}

查询截图模板

调用GetVodTemplate接口,完成查询截图模板功能。

接口参数和返回字段请参见GetVodTemplate。调用示例如下:

/**
 * 查询截图模板函数
 */
function getSnapshotVodTemplate($client) {
    $request = new vod\GetVodTemplateRequest();
    //设置要查询的模板ID
    $request->setVodTemplateId("6e9835ce8896aa3ace027c048352****");

    return $client->getAcsResponse($request);
}


/**
 * 以下为调用示例
 */
try {
    $client = initVodClient("<AccessKeyId>", "<AccessKeySecret>");

    $result = getSnapshotVodTemplate($client);
    var_dump($result);
} catch (Exception $e) {
    print $e->getMessage()."\n";
}