
# 更新水印模板
#### 核心代码
1. **设置水印模板的参数。**
   ```
   //创建更新水印模板请求
   UpdateWatermarkTemplateRequest req = new UpdateWatermarkTemplateRequest()
       .withBody(new WatermarkTemplate()
               //设置模板名称
               .withTemplateName("watermark_name")
               //设置模板类型
               .withType("Image")
               //设置图片水印处理方式
               .withImageProcess("Grayed")
               //水印宽度
               .withWidth("1920")
               //水印高度
               .withHeight("1080")
               //水印相对视频顶点水平偏移位置
               .withDx("10")
               //水印相对视频顶点垂直偏移位置
               .withDy("10")
               //水印的位置
               //.withReferpos("BottomLeft")
               //水印开始时间，与timeline_duration配合使用
               .withTimelineStart("0")
               //水印持续时间，默认值“ToEND”,表示持续到视频结束
               .withTimelineDuration("ToEND"));
   ```
   
2. **发送更新水印模板请求，并显示返回消息** 。
   ```
   // 发送修改水印配置请求给媒体处理服务
   UpdateWatermarkTemplateResponse rsp = initMpcClient().updateWatermarkTemplate(req);
   // 打印返回消息
   System.out.println("UpdateWatermarkTemplateResponse=" + JsonUtils.toJSON(rsp));
   ```
   
 
#### 完整代码
```
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.http.HttpConfig;
import com.huaweicloud.sdk.core.utils.JsonUtils;
import com.huaweicloud.sdk.mpc.v1.MpcClient;
import com.huaweicloud.sdk.mpc.v1.model.UpdateWatermarkTemplateRequest;
import com.huaweicloud.sdk.mpc.v1.model.UpdateWatermarkTemplateResponse;
import com.huaweicloud.sdk.mpc.v1.model.WatermarkTemplate;
public class TestUpdateWatermarkTemplate {
    /**
     * 初始化 MpcClient
     * @return
     */
    public static MpcClient initMpcClient() {
        HttpConfig httpConfig = HttpConfig.getDefaultHttpConfig().withIgnoreSSLVerification(true).withTimeout(3);
        //http代理设置，请根据实际情况设置
        //httpConfig.withProxyHost("xxxxxx").withProxyPort(xxxxxx).withProxyUsername("xxxxxx").
        //        withProxyPassword("xxxxxx");
        //根据实际填写ak,sk，在控制台账号名下“我的凭证 > 访问密钥”上创建和查看您的AK/SK
        
        String ak = System.getenv("SDK_AK");
        String sk = System.getenv("SDK_SK");
        //根据实际填写项目ID，在控制台账号名下“我的凭证 > API凭证”下查看您的项目ID
        String projectId = System.getenv("PROJECT_ID");
        //根据实际填写所需endpoint，这里以“region01”为例
        String endpoint = "https://mpc.region01.myhuaweicloud.com";
        BasicCredentials auth = new BasicCredentials().withAk(ak).withSk(sk).withProjectId(projectId);
        return MpcClient.newBuilder()
                .withHttpConfig(httpConfig)
                .withCredential(auth)
                .withEndpoint(endpoint)
                .build();
    }
    /**
     * 更新水印模板
     * @param args
     */
    public static void main(String[] args) {
        //创建更新水印模板请求
        UpdateWatermarkTemplateRequest req = new UpdateWatermarkTemplateRequest()
                .withBody(new WatermarkTemplate()
                        //设置模板名称
                        .withTemplateName("watermark_name")
                        //设置模板类型
                        .withType("Image")
                        //设置图片水印处理方式
                        .withImageProcess("Grayed")
                        //水印宽度
                        .withWidth("1920")
                        //水印高度
                        .withHeight("1080")
                        //水印相对视频顶点水平偏移位置
                        .withDx("10")
                        //水印相对视频顶点垂直偏移位置
                        .withDy("10")
                        //水印的位置
                        //.withReferpos("BottomLeft")
                        //水印开始时间，与timeline_duration配合使用
                        .withTimelineStart("0")
                        //水印持续时间，默认值“ToEND”,表示持续到视频结束
                        .withTimelineDuration("ToEND"));
        //发送水印模板请求
        try {
            UpdateWatermarkTemplateResponse rsp = initMpcClient().updateWatermarkTemplate(req);
            System.out.println("UpdateWatermarkTemplateResponse=" + JsonUtils.toJSON(rsp));
        } catch (ClientRequestException | ConnectionException | RequestTimeoutException | ServiceException e) {
            System.out.println(e);
        }
    }
}
```
