有奖捉虫:云通信与企业服务文档专题,速来> HOT

简介

本文档提供关于水印模板接口的 API 概览和 SDK 示例代码。
API
操作描述
用于新增水印模板。
用于更新水印模板。

新增水印模板

功能说明

用于新增水印模板。

方法原型

public Guzzle\\Service\\Resource\\Model createMediaWatermarkTemplate(array $args = array());

请求示例

<?php

require dirname(__FILE__) . '/../vendor/autoload.php';

$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\\Cos\\Client(
array(
'region' => $region,
'scheme' => 'https', //协议头部,默认为http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
// https://cloud.tencent.com/document/product/436/54033 新增水印模板
// 文本水印
$result = $cosClient->createMediaWatermarkTemplate(array(
'Bucket' => 'examplebucket-125000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Tag' => 'Watermark',
'Name' => 'Watermark-Template-Name',
'Watermark' => array(
'Type' => 'Text',
'Pos' => 'TopRight',
'LocMode' => 'Absolute',
'Dx' => '128',
'Dy' => '128',
'StartTime' => '',
'EndTime' => '',
'Text' => array(
'FontSize' => '30',
'FontType' => 'simfang',
'FontColor' => '0x000000',
'Transparency' => '30',
'Text' => '水印内容',
),
),
));
// 请求成功
print_r($result);

// 图片水印
$result = $cosClient->createMediaWatermarkTemplate(array(
'Bucket' => 'examplebucket-125000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Tag' => 'Watermark',
'Name' => 'Watermark-Template-Name',
'Watermark' => array(
'Type' => 'Image',
'Pos' => 'TopRight',
'LocMode' => 'Absolute',
'Dx' => '128',
'Dy' => '128',
'StartTime' => '',
'EndTime' => '',
'Image' => array(
'Url' => 'https://examplebucket-125000000.cos.ap-guangzhou.myqcloud.com/test01.png',
'Mode' => 'Proportion',
'Width' => '10',
'Height' => '',
'Transparency' => '100',
'Background' => '',
),
),
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

Request 中的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
必选
Tag
Request
模板类型: Watermark
String
Name
Request
模板名称,仅支持中文、英文、数字、_、-和*
String
Watermark
Request
水印信息
Container
Container 类型 Watermark 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
必选
默认值
限制
Type
Request.Watermark
水印类型
String
Text:文字水印 Image:图片水印
Pos
Request.Watermark
基准位置
String
TopRight、TopLeft、BottomRight、 BottomLeft
LocMode
Request.Watermark
偏移方式
String
Relativity:按比例
Absolute:固定位置
Dx
Request.Watermark
水平偏移
String
1. 在图片水印中,如果 Background 为 true,当 locMode 为 Relativity 时,为%,值范围:[-300 0];当 locMode 为 Absolute 时,为 px,值范围:[-4096 0]
2. 在图片水印中,如果 Background 为 false,当 locMode 为 Relativity 时,为%,值范围:[0 100];当 locMode 为 Absolute 时,为 px,值范围:[0 4096]
3. 在文字水印中,当 locMode 为 Relativity 时,为%,值范围:[0 100];当 locMode 为 Absolute 时,为 px,值范围:[0 4096]
Dy
Request.Watermark
垂直偏移
String
1. 在图片水印中,如果 Background 为 true,当 locMode 为 Relativity 时,为%,值范围:[-300 0];当 locMode 为 Absolute 时,为 px,值范围:[-4096 0]
2. 在图片水印中,如果 Background 为 false,当 locMode 为 Relativity 时,为%,值范围:[0 100];当 locMode 为 Absolute 时,为 px,值范围:[0 4096]
3. 在文字水印中,当 locMode 为 Relativity 时,为%,值范围:[0 100];当 locMode 为 Absolute 时,为 px,值范围:[0 4096]
StartTime
Request.Watermark
水印开始时间
String
0
1. [0 视频时长]
2. 单位为秒
3. 支持 float 格式,执行精度精确到毫秒
EndTime
Request.Watermark
水印结束时间
String
视频结束时间
1. [0 视频时长]
2. 单位为秒支持 float 格式,执行精度精确到毫秒
Image
Request.Watermark
图片水印节点
Container
Text
Request.Watermark
文本水印节点
Container
Container 类型 Image 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
必选
默认值
限制
Url
Request.Watermark. Image
水印图地址(需要 Urlencode 后传入)
String
同 bucket 的水印图片地址
Mode
Request.Watermark. Image
尺寸模式
String
1. Original:原有尺寸
2. Proportion:按比例
3. Fixed:固定大小
Width
Request.Watermark. Image
String
1. 当 Mode 为 Original 时,不支持设置水印图宽度
2. 当 Mode 为 Proportion,单位为%,背景图值范围:[100 300];前景图值范围:[1 100],相对于视频宽,最大不超过4096px
3. 当 Mode 为 Fixed,单位为 px,值范围:[8,4096]
4. 若只设置 Width 时,按照水印图比例计算 Height
Height
Request.Watermark. Image
String
1. 当 Mode 为 Original 时,不支持设置水印图高度
2. 当 Mode 为 Proportion,单位为%,背景图值范围:[100 300];前景图值范围:[1 100],相对于视频高,最大不超过4096px
3. 当 Mode 为 Fixed,单位为 px,值范围:[8,4096]
4. 若只设置 Height 时,按照水印图比例计算 Width
Transparency
Request.Watermark. Image
透明度
String
值范围:[1 100],单位%
Background
Request.Watermark. Image
是否背景图
String
false
true、false
Container 类型 Text 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
必选
默认值
限制
FontSize
Request.Watermark. Text
字体大小
String
值范围:[5 100],单位 px
FontType
Request.Watermark. Text
字体类型
String
参考下表
FontColor
Request.Watermark. Text
字体颜色
String
格式:0xRRGGBB
Transparency
Request.Watermark. Text
透明度
String
值范围:[1 100],单位%
Text
Request.Watermark. Text
水印内容
String
长度不超过64个字符,仅支持中文、英文、数字、_、-和*
Text 的 FontType 具体数据描述如下:
字体名称
支持的语言
描述
simfang.ttf
中/英
仿宋
simhei.ttf
中/英
黑体
simkai.ttf
中/英
楷体
simsun.ttc
中/英
宋体
STHeiti-Light.ttc
中/英
华文黑体
STHeiti-Medium.ttc
中/英
华文黑体中
youyuan.TTF
中/英
幼圆
ariblk.ttf
arial.ttf
ahronbd.ttf
Helvetica.dfont
HelveticaNeue.dfont

返回结果示例

GuzzleHttp\\Command\\Result Object
(
[Body] => GuzzleHttp\\Psr7\\Stream Object
(
[stream:GuzzleHttp\\Psr7\\Stream:private] => Resource id #88
[size:GuzzleHttp\\Psr7\\Stream:private] =>
[seekable:GuzzleHttp\\Psr7\\Stream:private] => 1
[readable:GuzzleHttp\\Psr7\\Stream:private] => 1
[writable:GuzzleHttp\\Psr7\\Stream:private] => 1
[uri:GuzzleHttp\\Psr7\\Stream:private] => php://temp
[customMetadata:GuzzleHttp\\Psr7\\Stream:private] => Array
(
)

)

[RequestId] => NjJhOTRhNTlJAOISDUJIOASDUIOxNDc2N2I=
[ContentType] => application/xml
[ContentLength] => 853
[Bucket] => examplebucket-125000000
[Location] => examplebucket-125000000.ci.ap-guangzhou.myqcloud.com/template
[Response] => Array
(
[RequestId] => NjJhOTRhNTlJAOISDUJIOASDUIOxNDc2N2I=
[Template] => Array
(
[TemplateId] => t183b6fd90369a908sd09a8sd09ase1340
[Name] => Watermark-Template-Name
[State] => Normal
[Tag] => Watermark
[CreateTime] => 2022-06-15T10:56:25+0800
[UpdateTime] => 2022-06-15T10:56:25+0800
[BucketId] => examplebucket-125000000
[Category] => Custom
[Watermark] => Array
(
[Type] => Text
[Pos] => TopRight
[LocMode] => Absolute
[Dx] => 128
[Dy] => 128
[StartTime] => 0
[EndTime] => 300
[Text] => Array
(
[FontType] => simfang
[FontSize] => 30
[FontColor] => 0x000000
[Text] => 水印内容
[Transparency] => 30
)

)

)

)

)

更新水印模板

功能说明

用于更新水印模板。

方法原型

public Guzzle\\Service\\Resource\\Model updateMediaWatermarkTemplate(array $args = array());

请求示例

<?php

require dirname(__FILE__) . '/../vendor/autoload.php';

$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\\Cos\\Client(
array(
'region' => $region,
'scheme' => 'https', //协议头部,默认为http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
// https://cloud.tencent.com/document/product/436/54036 更新水印模板
// 文本
$result = $cosClient->updateMediaWatermarkTemplate(array(
'Bucket' => 'examplebucket-125000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Key' => '', // TemplateId
'Tag' => 'Watermark',
'Name' => 'Watermark-Template-Name',
'Watermark' => array(
'Type' => 'Text',
'Pos' => 'TopRight',
'LocMode' => 'Absolute',
'Dx' => '128',
'Dy' => '128',
'StartTime' => '',
'EndTime' => '',
'Text' => array(
'FontSize' => '30',
'FontType' => 'simfang',
'FontColor' => '0x000000',
'Transparency' => '30',
'Text' => '水印内容',
),
),
));
// 请求成功
print_r($result);

// 图片
$result = $cosClient->updateMediaWatermarkTemplate(array(
'Bucket' => 'examplebucket-125000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Key' => '', // TemplateId
'Tag' => 'Watermark',
'Name' => 'Watermark-Template-Name2-1',
'Watermark' => array(
'Type' => 'Image',
'Pos' => 'TopRight',
'LocMode' => 'Absolute',
'Dx' => '128',
'Dy' => '128',
'StartTime' => '',
'EndTime' => '',
'Image' => array(
'Url' => 'https://examplebucket-125000000.cos.ap-guangzhou.myqcloud.com/test01.png',
'Mode' => 'Proportion',
'Width' => '10',
'Height' => '',
'Transparency' => '100',
'Background' => '',
),
),
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

Request 中的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
必选
Tag
Request
模板类型:Watermark
String
Name
Request
模板名称仅支持中文、英文、数字、_、-和*
String
Watermark
Request
水印信息
Container
Container 类型 Watermark 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
必选
默认值
限制
Type
Request.Watermark
水印 类型
String
Text:文字水印 Image:图片水印
Pos
Request.Watermark
基准 位置
String
TopRight:右上
TopLeft:左上
BottomRight:右下
BottomLeft:左下
LocMode
Request.Watermark
偏移 方式
String
Relativity:按比例
Absolute:固定位置
Dx
Request.Watermark
水平偏移
String
1. 在图片水印中,如果 Background 为 true,当 locMode 为 Relativity 时,单位为%,值范围:[-300 0];当 locMode 为 Absolute 时,单位为 px,值范围:[-4096 0]
2. 在图片水印中,如果 Background 为 false,当 locMode 为 Relativity 时,单位为%,值范围:[0 100];当 locMode 为 Absolute 时,单位为 px,值范围:[0 4096]
3. 在文字水印中,当 locMode 为 Relativity 时,单位为%,值范围:[0 100];当 locMode 为 Absolute 时,单位为 px,值范围:[0 4096]
Dy
Request.Watermark
垂直偏移
String
1. 在图片水印中,如果 Background 为 true,当 locMode 为 Relativity 时,单位为%,值范围:[-300 0];当 locMode 为 Absolute 时,单位为 px,值范围:[-4096 0]
2. 在图片水印中,如果 Background 为 false,当 locMode 为 Relativity 时,单位为%,值范围:[0 100];当 locMode 为 Absolute 时,单位为 px,值范围:[0 4096]
3. 在文字水印中,当 locMode 为 Relativity 时,单位为%,值范围:[0 100];当 locMode 为 Absolute 时,单位为 px,值范围:[0 4096]
StartTime
Request.Watermark
水印 开始 时间
String
0
[0 视频时长] 单位为秒,支持 float 格式,执行精度精确到毫秒
EndTime
Request.Watermark
水印 结束 时间
String
视频结束时间
[0 视频时长] 单位为秒,支持 float 格式,执行精度精确到毫秒
Image
Request.Watermark
图片 水印 节点
Container
Text
Request.Watermark
文本 水印 节点
Container
Container 类型 Image 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
必选
默认值
限制
Url
Request.Watermark. Image
水印图地址
String
水印图片地址,如果水印图片为私有对象时,请携带签名信息
Mode
Request.Watermark. Image
尺寸模式
String
Original:原有尺寸 Proportion:按比例 Fixed:固定大小
Width
Request.Watermark. Image
String
当 Mode 为 Original 时,不支持设置水印图宽度
当 Mode 为 Proportion,单位为%,背景图值范围:[100 300];前景图值范围:[1 100]
当 Mode 为 Fixed,单位为 px,值范围:[8,4096],若只设置 Width 时,按照视频原始比例计算 Height
Height
Request.Watermark. Image
String
当 Mode 为 Original 时,不支持设置水印图高度
当 Mode 为 Proportion,单位为%,背景图值范围:[100 300];前景图值范围:[1 100]
当 Mode 为 Fixed,单位为px,值范围:[128,4096],若只设置 Height 时,按照视频原始比例计算 Width
Transparency
Request.Watermark. Image
透明度
String
值范围:[0 100],单位为%
Background
Request.Watermark. Image
是否背景图
String
false
true、false
Container 类型 Text 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
必选
默认值
限制
FontSize
Request.Watermark. Text
字体大小
String
值范围:[0 100],单位为 px
FontType
Request.Watermark. Text
字体类型
String
参考下表
FontColor
Request.Watermark. Text
字体颜色
String
格式:0xRRGGBB
Transparency
Request.Watermark. Text
透明度
String
值范围:[0 100],单位为%
Text
Request.Watermark. Text
水印内容
String
长度不超过64个字符,仅支持中文、英文、数字、_、-和*
Text 的 FontType 具体数据描述如下:
字体名称
支持的语言
描述
simfang.ttf
中/英
仿宋
simhei.ttf
中/英
黑体
simkai.ttf
中/英
楷体
simsun.ttc
中/英
宋体
STHeiti-Light.ttc
中/英
华文黑体
STHeiti-Medium.ttc
中/英
华文黑体中
youyuan.TTF
中/英
幼圆
ariblk.ttf
arial.ttf
ahronbd.ttf
Helvetica.dfont
HelveticaNeue.dfont

返回结果示例

GuzzleHttp\\Command\\Result Object
(
[Body] => GuzzleHttp\\Psr7\\Stream Object
(
[stream:GuzzleHttp\\Psr7\\Stream:private] => Resource id #88
[size:GuzzleHttp\\Psr7\\Stream:private] =>
[seekable:GuzzleHttp\\Psr7\\Stream:private] => 1
[readable:GuzzleHttp\\Psr7\\Stream:private] => 1
[writable:GuzzleHttp\\Psr7\\Stream:private] => 1
[uri:GuzzleHttp\\Psr7\\Stream:private] => php://temp
[customMetadata:GuzzleHttp\\Psr7\\Stream:private] => Array
(
)

)

[RequestId] => NjJhOTRiNzJfNzgwYzdkNAIODUAIODUNGZhMWQ=
[ContentType] => application/xml
[ContentLength] => 855
[Key] => t183b6fd9039167b2db0dfe1340
[Bucket] => examplebucket-125000000
[Location] => examplebucket-125000000.ci.ap-guangzhou.myqcloud.com/template/t183b6fd9039167b2db0dfe1340
[Response] => Array
(
[RequestId] => NjJhOTRiNzJfNzgwYzdkNAIODUAIODUNGZhMWQ=
[Template] => Array
(
[TemplateId] => t183b6fd9039167b2db0dfe1340
[Name] => Watermark-Template-Name
[State] => Normal
[Tag] => Watermark
[CreateTime] => 2022-06-15T10:56:25+0800
[UpdateTime] => 2022-06-15T11:01:06+0800
[BucketId] => examplebucket-125000000
[Category] => Custom
[Watermark] => Array
(
[Type] => Text
[Pos] => TopRight
[LocMode] => Absolute
[Dx] => 128
[Dy] => 128
[StartTime] => 0
[EndTime] => 300
[Text] => Array
(
[FontType] => simfang
[FontSize] => 30
[FontColor] => 0x000000
[Text] => 水印内容
[Transparency] => 30
)

)

)

)

)