imageenhan-20190930/core/Client.cs (5,632 lines of code) (raw):

// This file is auto-generated, don't edit it. Thanks. using System; using System.Collections; using System.Collections.Generic; using System.IO; using System.Threading.Tasks; using Tea; using Tea.Utils; using AlibabaCloud.SDK.Imageenhan20190930.Models; namespace AlibabaCloud.SDK.Imageenhan20190930 { public class Client : AlibabaCloud.OpenApiClient.Client { public Client(AlibabaCloud.OpenApiClient.Models.Config config): base(config) { this._endpointRule = "regional"; CheckConfig(config); this._endpoint = GetEndpoint("imageenhan", _regionId, _endpointRule, _network, _suffix, _endpointMap, _endpoint); } public string GetEndpoint(string productId, string regionId, string endpointRule, string network, string suffix, Dictionary<string, string> endpointMap, string endpoint) { if (!AlibabaCloud.TeaUtil.Common.Empty(endpoint)) { return endpoint; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(endpointMap) && !AlibabaCloud.TeaUtil.Common.Empty(endpointMap.Get(regionId))) { return endpointMap.Get(regionId); } return AlibabaCloud.EndpointUtil.Common.GetEndpointRules(productId, regionId, endpointRule, network, suffix); } public AssessCompositionResponse AssessCompositionWithOptions(AssessCompositionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "AssessComposition", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<AssessCompositionResponse>(CallApi(params_, req, runtime)); } public async Task<AssessCompositionResponse> AssessCompositionWithOptionsAsync(AssessCompositionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "AssessComposition", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<AssessCompositionResponse>(await CallApiAsync(params_, req, runtime)); } public AssessCompositionResponse AssessComposition(AssessCompositionRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return AssessCompositionWithOptions(request, runtime); } public async Task<AssessCompositionResponse> AssessCompositionAsync(AssessCompositionRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await AssessCompositionWithOptionsAsync(request, runtime); } public AssessCompositionResponse AssessCompositionAdvance(AssessCompositionAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); AssessCompositionRequest assessCompositionReq = new AssessCompositionRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, assessCompositionReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); assessCompositionReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } AssessCompositionResponse assessCompositionResp = AssessCompositionWithOptions(assessCompositionReq, runtime); return assessCompositionResp; } public async Task<AssessCompositionResponse> AssessCompositionAdvanceAsync(AssessCompositionAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); AssessCompositionRequest assessCompositionReq = new AssessCompositionRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, assessCompositionReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); assessCompositionReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } AssessCompositionResponse assessCompositionResp = await AssessCompositionWithOptionsAsync(assessCompositionReq, runtime); return assessCompositionResp; } public AssessExposureResponse AssessExposureWithOptions(AssessExposureRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "AssessExposure", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<AssessExposureResponse>(CallApi(params_, req, runtime)); } public async Task<AssessExposureResponse> AssessExposureWithOptionsAsync(AssessExposureRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "AssessExposure", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<AssessExposureResponse>(await CallApiAsync(params_, req, runtime)); } public AssessExposureResponse AssessExposure(AssessExposureRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return AssessExposureWithOptions(request, runtime); } public async Task<AssessExposureResponse> AssessExposureAsync(AssessExposureRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await AssessExposureWithOptionsAsync(request, runtime); } public AssessExposureResponse AssessExposureAdvance(AssessExposureAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); AssessExposureRequest assessExposureReq = new AssessExposureRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, assessExposureReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); assessExposureReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } AssessExposureResponse assessExposureResp = AssessExposureWithOptions(assessExposureReq, runtime); return assessExposureResp; } public async Task<AssessExposureResponse> AssessExposureAdvanceAsync(AssessExposureAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); AssessExposureRequest assessExposureReq = new AssessExposureRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, assessExposureReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); assessExposureReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } AssessExposureResponse assessExposureResp = await AssessExposureWithOptionsAsync(assessExposureReq, runtime); return assessExposureResp; } public AssessSharpnessResponse AssessSharpnessWithOptions(AssessSharpnessRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "AssessSharpness", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<AssessSharpnessResponse>(CallApi(params_, req, runtime)); } public async Task<AssessSharpnessResponse> AssessSharpnessWithOptionsAsync(AssessSharpnessRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "AssessSharpness", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<AssessSharpnessResponse>(await CallApiAsync(params_, req, runtime)); } public AssessSharpnessResponse AssessSharpness(AssessSharpnessRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return AssessSharpnessWithOptions(request, runtime); } public async Task<AssessSharpnessResponse> AssessSharpnessAsync(AssessSharpnessRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await AssessSharpnessWithOptionsAsync(request, runtime); } public AssessSharpnessResponse AssessSharpnessAdvance(AssessSharpnessAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); AssessSharpnessRequest assessSharpnessReq = new AssessSharpnessRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, assessSharpnessReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); assessSharpnessReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } AssessSharpnessResponse assessSharpnessResp = AssessSharpnessWithOptions(assessSharpnessReq, runtime); return assessSharpnessResp; } public async Task<AssessSharpnessResponse> AssessSharpnessAdvanceAsync(AssessSharpnessAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); AssessSharpnessRequest assessSharpnessReq = new AssessSharpnessRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, assessSharpnessReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); assessSharpnessReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } AssessSharpnessResponse assessSharpnessResp = await AssessSharpnessWithOptionsAsync(assessSharpnessReq, runtime); return assessSharpnessResp; } public ChangeImageSizeResponse ChangeImageSizeWithOptions(ChangeImageSizeRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Height)) { body["Height"] = request.Height; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Url)) { body["Url"] = request.Url; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Width)) { body["Width"] = request.Width; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ChangeImageSize", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<ChangeImageSizeResponse>(CallApi(params_, req, runtime)); } public async Task<ChangeImageSizeResponse> ChangeImageSizeWithOptionsAsync(ChangeImageSizeRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Height)) { body["Height"] = request.Height; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Url)) { body["Url"] = request.Url; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Width)) { body["Width"] = request.Width; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ChangeImageSize", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<ChangeImageSizeResponse>(await CallApiAsync(params_, req, runtime)); } public ChangeImageSizeResponse ChangeImageSize(ChangeImageSizeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return ChangeImageSizeWithOptions(request, runtime); } public async Task<ChangeImageSizeResponse> ChangeImageSizeAsync(ChangeImageSizeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await ChangeImageSizeWithOptionsAsync(request, runtime); } public ChangeImageSizeResponse ChangeImageSizeAdvance(ChangeImageSizeAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); ChangeImageSizeRequest changeImageSizeReq = new ChangeImageSizeRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, changeImageSizeReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UrlObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.UrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); changeImageSizeReq.Url = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } ChangeImageSizeResponse changeImageSizeResp = ChangeImageSizeWithOptions(changeImageSizeReq, runtime); return changeImageSizeResp; } public async Task<ChangeImageSizeResponse> ChangeImageSizeAdvanceAsync(ChangeImageSizeAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); ChangeImageSizeRequest changeImageSizeReq = new ChangeImageSizeRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, changeImageSizeReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UrlObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.UrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); changeImageSizeReq.Url = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } ChangeImageSizeResponse changeImageSizeResp = await ChangeImageSizeWithOptionsAsync(changeImageSizeReq, runtime); return changeImageSizeResp; } public ColorizeImageResponse ColorizeImageWithOptions(ColorizeImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ColorizeImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<ColorizeImageResponse>(CallApi(params_, req, runtime)); } public async Task<ColorizeImageResponse> ColorizeImageWithOptionsAsync(ColorizeImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ColorizeImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<ColorizeImageResponse>(await CallApiAsync(params_, req, runtime)); } public ColorizeImageResponse ColorizeImage(ColorizeImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return ColorizeImageWithOptions(request, runtime); } public async Task<ColorizeImageResponse> ColorizeImageAsync(ColorizeImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await ColorizeImageWithOptionsAsync(request, runtime); } public ColorizeImageResponse ColorizeImageAdvance(ColorizeImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); ColorizeImageRequest colorizeImageReq = new ColorizeImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, colorizeImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); colorizeImageReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } ColorizeImageResponse colorizeImageResp = ColorizeImageWithOptions(colorizeImageReq, runtime); return colorizeImageResp; } public async Task<ColorizeImageResponse> ColorizeImageAdvanceAsync(ColorizeImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); ColorizeImageRequest colorizeImageReq = new ColorizeImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, colorizeImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); colorizeImageReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } ColorizeImageResponse colorizeImageResp = await ColorizeImageWithOptionsAsync(colorizeImageReq, runtime); return colorizeImageResp; } public EnhanceImageColorResponse EnhanceImageColorWithOptions(EnhanceImageColorRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Mode)) { body["Mode"] = request.Mode; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OutputFormat)) { body["OutputFormat"] = request.OutputFormat; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "EnhanceImageColor", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<EnhanceImageColorResponse>(CallApi(params_, req, runtime)); } public async Task<EnhanceImageColorResponse> EnhanceImageColorWithOptionsAsync(EnhanceImageColorRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Mode)) { body["Mode"] = request.Mode; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OutputFormat)) { body["OutputFormat"] = request.OutputFormat; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "EnhanceImageColor", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<EnhanceImageColorResponse>(await CallApiAsync(params_, req, runtime)); } public EnhanceImageColorResponse EnhanceImageColor(EnhanceImageColorRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return EnhanceImageColorWithOptions(request, runtime); } public async Task<EnhanceImageColorResponse> EnhanceImageColorAsync(EnhanceImageColorRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await EnhanceImageColorWithOptionsAsync(request, runtime); } public EnhanceImageColorResponse EnhanceImageColorAdvance(EnhanceImageColorAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); EnhanceImageColorRequest enhanceImageColorReq = new EnhanceImageColorRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, enhanceImageColorReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); enhanceImageColorReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } EnhanceImageColorResponse enhanceImageColorResp = EnhanceImageColorWithOptions(enhanceImageColorReq, runtime); return enhanceImageColorResp; } public async Task<EnhanceImageColorResponse> EnhanceImageColorAdvanceAsync(EnhanceImageColorAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); EnhanceImageColorRequest enhanceImageColorReq = new EnhanceImageColorRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, enhanceImageColorReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); enhanceImageColorReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } EnhanceImageColorResponse enhanceImageColorResp = await EnhanceImageColorWithOptionsAsync(enhanceImageColorReq, runtime); return enhanceImageColorResp; } public ErasePersonResponse ErasePersonWithOptions(ErasePersonRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserMask)) { body["UserMask"] = request.UserMask; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ErasePerson", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<ErasePersonResponse>(CallApi(params_, req, runtime)); } public async Task<ErasePersonResponse> ErasePersonWithOptionsAsync(ErasePersonRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserMask)) { body["UserMask"] = request.UserMask; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ErasePerson", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<ErasePersonResponse>(await CallApiAsync(params_, req, runtime)); } public ErasePersonResponse ErasePerson(ErasePersonRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return ErasePersonWithOptions(request, runtime); } public async Task<ErasePersonResponse> ErasePersonAsync(ErasePersonRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await ErasePersonWithOptionsAsync(request, runtime); } public ErasePersonResponse ErasePersonAdvance(ErasePersonAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); ErasePersonRequest erasePersonReq = new ErasePersonRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, erasePersonReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); erasePersonReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserMaskObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.UserMaskObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); erasePersonReq.UserMask = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } ErasePersonResponse erasePersonResp = ErasePersonWithOptions(erasePersonReq, runtime); return erasePersonResp; } public async Task<ErasePersonResponse> ErasePersonAdvanceAsync(ErasePersonAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); ErasePersonRequest erasePersonReq = new ErasePersonRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, erasePersonReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); erasePersonReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserMaskObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.UserMaskObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); erasePersonReq.UserMask = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } ErasePersonResponse erasePersonResp = await ErasePersonWithOptionsAsync(erasePersonReq, runtime); return erasePersonResp; } public ExtendImageStyleResponse ExtendImageStyleWithOptions(ExtendImageStyleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MajorUrl)) { body["MajorUrl"] = request.MajorUrl; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.StyleUrl)) { body["StyleUrl"] = request.StyleUrl; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ExtendImageStyle", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<ExtendImageStyleResponse>(CallApi(params_, req, runtime)); } public async Task<ExtendImageStyleResponse> ExtendImageStyleWithOptionsAsync(ExtendImageStyleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MajorUrl)) { body["MajorUrl"] = request.MajorUrl; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.StyleUrl)) { body["StyleUrl"] = request.StyleUrl; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ExtendImageStyle", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<ExtendImageStyleResponse>(await CallApiAsync(params_, req, runtime)); } public ExtendImageStyleResponse ExtendImageStyle(ExtendImageStyleRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return ExtendImageStyleWithOptions(request, runtime); } public async Task<ExtendImageStyleResponse> ExtendImageStyleAsync(ExtendImageStyleRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await ExtendImageStyleWithOptionsAsync(request, runtime); } public ExtendImageStyleResponse ExtendImageStyleAdvance(ExtendImageStyleAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); ExtendImageStyleRequest extendImageStyleReq = new ExtendImageStyleRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, extendImageStyleReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MajorUrlObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.MajorUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); extendImageStyleReq.MajorUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.StyleUrlObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.StyleUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); extendImageStyleReq.StyleUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } ExtendImageStyleResponse extendImageStyleResp = ExtendImageStyleWithOptions(extendImageStyleReq, runtime); return extendImageStyleResp; } public async Task<ExtendImageStyleResponse> ExtendImageStyleAdvanceAsync(ExtendImageStyleAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); ExtendImageStyleRequest extendImageStyleReq = new ExtendImageStyleRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, extendImageStyleReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MajorUrlObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.MajorUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); extendImageStyleReq.MajorUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.StyleUrlObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.StyleUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); extendImageStyleReq.StyleUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } ExtendImageStyleResponse extendImageStyleResp = await ExtendImageStyleWithOptionsAsync(extendImageStyleReq, runtime); return extendImageStyleResp; } public GenerateCartoonizedImageResponse GenerateCartoonizedImageWithOptions(GenerateCartoonizedImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageType)) { body["ImageType"] = request.ImageType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageUrl)) { body["ImageUrl"] = request.ImageUrl; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Index)) { body["Index"] = request.Index; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GenerateCartoonizedImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<GenerateCartoonizedImageResponse>(CallApi(params_, req, runtime)); } public async Task<GenerateCartoonizedImageResponse> GenerateCartoonizedImageWithOptionsAsync(GenerateCartoonizedImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageType)) { body["ImageType"] = request.ImageType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageUrl)) { body["ImageUrl"] = request.ImageUrl; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Index)) { body["Index"] = request.Index; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GenerateCartoonizedImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<GenerateCartoonizedImageResponse>(await CallApiAsync(params_, req, runtime)); } public GenerateCartoonizedImageResponse GenerateCartoonizedImage(GenerateCartoonizedImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return GenerateCartoonizedImageWithOptions(request, runtime); } public async Task<GenerateCartoonizedImageResponse> GenerateCartoonizedImageAsync(GenerateCartoonizedImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await GenerateCartoonizedImageWithOptionsAsync(request, runtime); } public GenerateCartoonizedImageResponse GenerateCartoonizedImageAdvance(GenerateCartoonizedImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); GenerateCartoonizedImageRequest generateCartoonizedImageReq = new GenerateCartoonizedImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, generateCartoonizedImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageUrlObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); generateCartoonizedImageReq.ImageUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } GenerateCartoonizedImageResponse generateCartoonizedImageResp = GenerateCartoonizedImageWithOptions(generateCartoonizedImageReq, runtime); return generateCartoonizedImageResp; } public async Task<GenerateCartoonizedImageResponse> GenerateCartoonizedImageAdvanceAsync(GenerateCartoonizedImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); GenerateCartoonizedImageRequest generateCartoonizedImageReq = new GenerateCartoonizedImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, generateCartoonizedImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageUrlObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); generateCartoonizedImageReq.ImageUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } GenerateCartoonizedImageResponse generateCartoonizedImageResp = await GenerateCartoonizedImageWithOptionsAsync(generateCartoonizedImageReq, runtime); return generateCartoonizedImageResp; } public GenerateDynamicImageResponse GenerateDynamicImageWithOptions(GenerateDynamicImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Operation)) { body["Operation"] = request.Operation; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Url)) { body["Url"] = request.Url; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GenerateDynamicImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<GenerateDynamicImageResponse>(CallApi(params_, req, runtime)); } public async Task<GenerateDynamicImageResponse> GenerateDynamicImageWithOptionsAsync(GenerateDynamicImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Operation)) { body["Operation"] = request.Operation; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Url)) { body["Url"] = request.Url; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GenerateDynamicImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<GenerateDynamicImageResponse>(await CallApiAsync(params_, req, runtime)); } public GenerateDynamicImageResponse GenerateDynamicImage(GenerateDynamicImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return GenerateDynamicImageWithOptions(request, runtime); } public async Task<GenerateDynamicImageResponse> GenerateDynamicImageAsync(GenerateDynamicImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await GenerateDynamicImageWithOptionsAsync(request, runtime); } public GenerateDynamicImageResponse GenerateDynamicImageAdvance(GenerateDynamicImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); GenerateDynamicImageRequest generateDynamicImageReq = new GenerateDynamicImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, generateDynamicImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UrlObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.UrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); generateDynamicImageReq.Url = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } GenerateDynamicImageResponse generateDynamicImageResp = GenerateDynamicImageWithOptions(generateDynamicImageReq, runtime); return generateDynamicImageResp; } public async Task<GenerateDynamicImageResponse> GenerateDynamicImageAdvanceAsync(GenerateDynamicImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); GenerateDynamicImageRequest generateDynamicImageReq = new GenerateDynamicImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, generateDynamicImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UrlObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.UrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); generateDynamicImageReq.Url = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } GenerateDynamicImageResponse generateDynamicImageResp = await GenerateDynamicImageWithOptionsAsync(generateDynamicImageReq, runtime); return generateDynamicImageResp; } public GenerateImageWithTextResponse GenerateImageWithTextWithOptions(GenerateImageWithTextRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Number)) { body["Number"] = request.Number; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Resolution)) { body["Resolution"] = request.Resolution; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Text)) { body["Text"] = request.Text; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GenerateImageWithText", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<GenerateImageWithTextResponse>(CallApi(params_, req, runtime)); } public async Task<GenerateImageWithTextResponse> GenerateImageWithTextWithOptionsAsync(GenerateImageWithTextRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Number)) { body["Number"] = request.Number; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Resolution)) { body["Resolution"] = request.Resolution; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Text)) { body["Text"] = request.Text; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GenerateImageWithText", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<GenerateImageWithTextResponse>(await CallApiAsync(params_, req, runtime)); } public GenerateImageWithTextResponse GenerateImageWithText(GenerateImageWithTextRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return GenerateImageWithTextWithOptions(request, runtime); } public async Task<GenerateImageWithTextResponse> GenerateImageWithTextAsync(GenerateImageWithTextRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await GenerateImageWithTextWithOptionsAsync(request, runtime); } public GenerateImageWithTextAndImageResponse GenerateImageWithTextAndImageWithOptions(GenerateImageWithTextAndImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AspectRatioMode)) { body["AspectRatioMode"] = request.AspectRatioMode; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Number)) { body["Number"] = request.Number; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RefImageUrl)) { body["RefImageUrl"] = request.RefImageUrl; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Resolution)) { body["Resolution"] = request.Resolution; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Similarity)) { body["Similarity"] = request.Similarity; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Text)) { body["Text"] = request.Text; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GenerateImageWithTextAndImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<GenerateImageWithTextAndImageResponse>(CallApi(params_, req, runtime)); } public async Task<GenerateImageWithTextAndImageResponse> GenerateImageWithTextAndImageWithOptionsAsync(GenerateImageWithTextAndImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AspectRatioMode)) { body["AspectRatioMode"] = request.AspectRatioMode; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Number)) { body["Number"] = request.Number; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RefImageUrl)) { body["RefImageUrl"] = request.RefImageUrl; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Resolution)) { body["Resolution"] = request.Resolution; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Similarity)) { body["Similarity"] = request.Similarity; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Text)) { body["Text"] = request.Text; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GenerateImageWithTextAndImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<GenerateImageWithTextAndImageResponse>(await CallApiAsync(params_, req, runtime)); } public GenerateImageWithTextAndImageResponse GenerateImageWithTextAndImage(GenerateImageWithTextAndImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return GenerateImageWithTextAndImageWithOptions(request, runtime); } public async Task<GenerateImageWithTextAndImageResponse> GenerateImageWithTextAndImageAsync(GenerateImageWithTextAndImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await GenerateImageWithTextAndImageWithOptionsAsync(request, runtime); } public GenerateImageWithTextAndImageResponse GenerateImageWithTextAndImageAdvance(GenerateImageWithTextAndImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); GenerateImageWithTextAndImageRequest generateImageWithTextAndImageReq = new GenerateImageWithTextAndImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, generateImageWithTextAndImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RefImageUrlObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.RefImageUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); generateImageWithTextAndImageReq.RefImageUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } GenerateImageWithTextAndImageResponse generateImageWithTextAndImageResp = GenerateImageWithTextAndImageWithOptions(generateImageWithTextAndImageReq, runtime); return generateImageWithTextAndImageResp; } public async Task<GenerateImageWithTextAndImageResponse> GenerateImageWithTextAndImageAdvanceAsync(GenerateImageWithTextAndImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); GenerateImageWithTextAndImageRequest generateImageWithTextAndImageReq = new GenerateImageWithTextAndImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, generateImageWithTextAndImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RefImageUrlObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.RefImageUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); generateImageWithTextAndImageReq.RefImageUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } GenerateImageWithTextAndImageResponse generateImageWithTextAndImageResp = await GenerateImageWithTextAndImageWithOptionsAsync(generateImageWithTextAndImageReq, runtime); return generateImageWithTextAndImageResp; } public GenerateSuperResolutionImageResponse GenerateSuperResolutionImageWithOptions(GenerateSuperResolutionImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageUrl)) { body["ImageUrl"] = request.ImageUrl; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OutputFormat)) { body["OutputFormat"] = request.OutputFormat; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OutputQuality)) { body["OutputQuality"] = request.OutputQuality; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Scale)) { body["Scale"] = request.Scale; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserData)) { body["UserData"] = request.UserData; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GenerateSuperResolutionImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<GenerateSuperResolutionImageResponse>(CallApi(params_, req, runtime)); } public async Task<GenerateSuperResolutionImageResponse> GenerateSuperResolutionImageWithOptionsAsync(GenerateSuperResolutionImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageUrl)) { body["ImageUrl"] = request.ImageUrl; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OutputFormat)) { body["OutputFormat"] = request.OutputFormat; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OutputQuality)) { body["OutputQuality"] = request.OutputQuality; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Scale)) { body["Scale"] = request.Scale; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UserData)) { body["UserData"] = request.UserData; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GenerateSuperResolutionImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<GenerateSuperResolutionImageResponse>(await CallApiAsync(params_, req, runtime)); } public GenerateSuperResolutionImageResponse GenerateSuperResolutionImage(GenerateSuperResolutionImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return GenerateSuperResolutionImageWithOptions(request, runtime); } public async Task<GenerateSuperResolutionImageResponse> GenerateSuperResolutionImageAsync(GenerateSuperResolutionImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await GenerateSuperResolutionImageWithOptionsAsync(request, runtime); } public GenerateSuperResolutionImageResponse GenerateSuperResolutionImageAdvance(GenerateSuperResolutionImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); GenerateSuperResolutionImageRequest generateSuperResolutionImageReq = new GenerateSuperResolutionImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, generateSuperResolutionImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageUrlObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); generateSuperResolutionImageReq.ImageUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } GenerateSuperResolutionImageResponse generateSuperResolutionImageResp = GenerateSuperResolutionImageWithOptions(generateSuperResolutionImageReq, runtime); return generateSuperResolutionImageResp; } public async Task<GenerateSuperResolutionImageResponse> GenerateSuperResolutionImageAdvanceAsync(GenerateSuperResolutionImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); GenerateSuperResolutionImageRequest generateSuperResolutionImageReq = new GenerateSuperResolutionImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, generateSuperResolutionImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageUrlObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); generateSuperResolutionImageReq.ImageUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } GenerateSuperResolutionImageResponse generateSuperResolutionImageResp = await GenerateSuperResolutionImageWithOptionsAsync(generateSuperResolutionImageReq, runtime); return generateSuperResolutionImageResp; } public GetAsyncJobResultResponse GetAsyncJobResultWithOptions(GetAsyncJobResultRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.JobId)) { body["JobId"] = request.JobId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GetAsyncJobResult", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<GetAsyncJobResultResponse>(CallApi(params_, req, runtime)); } public async Task<GetAsyncJobResultResponse> GetAsyncJobResultWithOptionsAsync(GetAsyncJobResultRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.JobId)) { body["JobId"] = request.JobId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GetAsyncJobResult", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<GetAsyncJobResultResponse>(await CallApiAsync(params_, req, runtime)); } public GetAsyncJobResultResponse GetAsyncJobResult(GetAsyncJobResultRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return GetAsyncJobResultWithOptions(request, runtime); } public async Task<GetAsyncJobResultResponse> GetAsyncJobResultAsync(GetAsyncJobResultRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await GetAsyncJobResultWithOptionsAsync(request, runtime); } public ImageBlindCharacterWatermarkResponse ImageBlindCharacterWatermarkWithOptions(ImageBlindCharacterWatermarkRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.FunctionType)) { body["FunctionType"] = request.FunctionType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OriginImageURL)) { body["OriginImageURL"] = request.OriginImageURL; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OutputFileType)) { body["OutputFileType"] = request.OutputFileType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.QualityFactor)) { body["QualityFactor"] = request.QualityFactor; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Text)) { body["Text"] = request.Text; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.WatermarkImageURL)) { body["WatermarkImageURL"] = request.WatermarkImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ImageBlindCharacterWatermark", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<ImageBlindCharacterWatermarkResponse>(CallApi(params_, req, runtime)); } public async Task<ImageBlindCharacterWatermarkResponse> ImageBlindCharacterWatermarkWithOptionsAsync(ImageBlindCharacterWatermarkRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.FunctionType)) { body["FunctionType"] = request.FunctionType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OriginImageURL)) { body["OriginImageURL"] = request.OriginImageURL; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OutputFileType)) { body["OutputFileType"] = request.OutputFileType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.QualityFactor)) { body["QualityFactor"] = request.QualityFactor; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Text)) { body["Text"] = request.Text; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.WatermarkImageURL)) { body["WatermarkImageURL"] = request.WatermarkImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ImageBlindCharacterWatermark", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<ImageBlindCharacterWatermarkResponse>(await CallApiAsync(params_, req, runtime)); } public ImageBlindCharacterWatermarkResponse ImageBlindCharacterWatermark(ImageBlindCharacterWatermarkRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return ImageBlindCharacterWatermarkWithOptions(request, runtime); } public async Task<ImageBlindCharacterWatermarkResponse> ImageBlindCharacterWatermarkAsync(ImageBlindCharacterWatermarkRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await ImageBlindCharacterWatermarkWithOptionsAsync(request, runtime); } public ImageBlindCharacterWatermarkResponse ImageBlindCharacterWatermarkAdvance(ImageBlindCharacterWatermarkAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); ImageBlindCharacterWatermarkRequest imageBlindCharacterWatermarkReq = new ImageBlindCharacterWatermarkRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, imageBlindCharacterWatermarkReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OriginImageURLObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.OriginImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); imageBlindCharacterWatermarkReq.OriginImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.WatermarkImageURLObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.WatermarkImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); imageBlindCharacterWatermarkReq.WatermarkImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } ImageBlindCharacterWatermarkResponse imageBlindCharacterWatermarkResp = ImageBlindCharacterWatermarkWithOptions(imageBlindCharacterWatermarkReq, runtime); return imageBlindCharacterWatermarkResp; } public async Task<ImageBlindCharacterWatermarkResponse> ImageBlindCharacterWatermarkAdvanceAsync(ImageBlindCharacterWatermarkAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); ImageBlindCharacterWatermarkRequest imageBlindCharacterWatermarkReq = new ImageBlindCharacterWatermarkRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, imageBlindCharacterWatermarkReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OriginImageURLObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.OriginImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); imageBlindCharacterWatermarkReq.OriginImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.WatermarkImageURLObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.WatermarkImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); imageBlindCharacterWatermarkReq.WatermarkImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } ImageBlindCharacterWatermarkResponse imageBlindCharacterWatermarkResp = await ImageBlindCharacterWatermarkWithOptionsAsync(imageBlindCharacterWatermarkReq, runtime); return imageBlindCharacterWatermarkResp; } public ImageBlindPicWatermarkResponse ImageBlindPicWatermarkWithOptions(ImageBlindPicWatermarkRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.FunctionType)) { body["FunctionType"] = request.FunctionType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LogoURL)) { body["LogoURL"] = request.LogoURL; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OriginImageURL)) { body["OriginImageURL"] = request.OriginImageURL; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OutputFileType)) { body["OutputFileType"] = request.OutputFileType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.QualityFactor)) { body["QualityFactor"] = request.QualityFactor; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.WatermarkImageURL)) { body["WatermarkImageURL"] = request.WatermarkImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ImageBlindPicWatermark", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<ImageBlindPicWatermarkResponse>(CallApi(params_, req, runtime)); } public async Task<ImageBlindPicWatermarkResponse> ImageBlindPicWatermarkWithOptionsAsync(ImageBlindPicWatermarkRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.FunctionType)) { body["FunctionType"] = request.FunctionType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LogoURL)) { body["LogoURL"] = request.LogoURL; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OriginImageURL)) { body["OriginImageURL"] = request.OriginImageURL; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OutputFileType)) { body["OutputFileType"] = request.OutputFileType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.QualityFactor)) { body["QualityFactor"] = request.QualityFactor; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.WatermarkImageURL)) { body["WatermarkImageURL"] = request.WatermarkImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ImageBlindPicWatermark", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<ImageBlindPicWatermarkResponse>(await CallApiAsync(params_, req, runtime)); } public ImageBlindPicWatermarkResponse ImageBlindPicWatermark(ImageBlindPicWatermarkRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return ImageBlindPicWatermarkWithOptions(request, runtime); } public async Task<ImageBlindPicWatermarkResponse> ImageBlindPicWatermarkAsync(ImageBlindPicWatermarkRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await ImageBlindPicWatermarkWithOptionsAsync(request, runtime); } public ImageBlindPicWatermarkResponse ImageBlindPicWatermarkAdvance(ImageBlindPicWatermarkAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); ImageBlindPicWatermarkRequest imageBlindPicWatermarkReq = new ImageBlindPicWatermarkRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, imageBlindPicWatermarkReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LogoURLObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.LogoURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); imageBlindPicWatermarkReq.LogoURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OriginImageURLObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.OriginImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); imageBlindPicWatermarkReq.OriginImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.WatermarkImageURLObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.WatermarkImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); imageBlindPicWatermarkReq.WatermarkImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } ImageBlindPicWatermarkResponse imageBlindPicWatermarkResp = ImageBlindPicWatermarkWithOptions(imageBlindPicWatermarkReq, runtime); return imageBlindPicWatermarkResp; } public async Task<ImageBlindPicWatermarkResponse> ImageBlindPicWatermarkAdvanceAsync(ImageBlindPicWatermarkAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); ImageBlindPicWatermarkRequest imageBlindPicWatermarkReq = new ImageBlindPicWatermarkRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, imageBlindPicWatermarkReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LogoURLObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.LogoURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); imageBlindPicWatermarkReq.LogoURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OriginImageURLObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.OriginImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); imageBlindPicWatermarkReq.OriginImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.WatermarkImageURLObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.WatermarkImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); imageBlindPicWatermarkReq.WatermarkImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } ImageBlindPicWatermarkResponse imageBlindPicWatermarkResp = await ImageBlindPicWatermarkWithOptionsAsync(imageBlindPicWatermarkReq, runtime); return imageBlindPicWatermarkResp; } public ImitatePhotoStyleResponse ImitatePhotoStyleWithOptions(ImitatePhotoStyleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.StyleUrl)) { body["StyleUrl"] = request.StyleUrl; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ImitatePhotoStyle", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<ImitatePhotoStyleResponse>(CallApi(params_, req, runtime)); } public async Task<ImitatePhotoStyleResponse> ImitatePhotoStyleWithOptionsAsync(ImitatePhotoStyleRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.StyleUrl)) { body["StyleUrl"] = request.StyleUrl; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ImitatePhotoStyle", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<ImitatePhotoStyleResponse>(await CallApiAsync(params_, req, runtime)); } public ImitatePhotoStyleResponse ImitatePhotoStyle(ImitatePhotoStyleRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return ImitatePhotoStyleWithOptions(request, runtime); } public async Task<ImitatePhotoStyleResponse> ImitatePhotoStyleAsync(ImitatePhotoStyleRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await ImitatePhotoStyleWithOptionsAsync(request, runtime); } public ImitatePhotoStyleResponse ImitatePhotoStyleAdvance(ImitatePhotoStyleAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); ImitatePhotoStyleRequest imitatePhotoStyleReq = new ImitatePhotoStyleRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, imitatePhotoStyleReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); imitatePhotoStyleReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.StyleUrlObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.StyleUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); imitatePhotoStyleReq.StyleUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } ImitatePhotoStyleResponse imitatePhotoStyleResp = ImitatePhotoStyleWithOptions(imitatePhotoStyleReq, runtime); return imitatePhotoStyleResp; } public async Task<ImitatePhotoStyleResponse> ImitatePhotoStyleAdvanceAsync(ImitatePhotoStyleAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); ImitatePhotoStyleRequest imitatePhotoStyleReq = new ImitatePhotoStyleRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, imitatePhotoStyleReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); imitatePhotoStyleReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.StyleUrlObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.StyleUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); imitatePhotoStyleReq.StyleUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } ImitatePhotoStyleResponse imitatePhotoStyleResp = await ImitatePhotoStyleWithOptionsAsync(imitatePhotoStyleReq, runtime); return imitatePhotoStyleResp; } public IntelligentCompositionResponse IntelligentCompositionWithOptions(IntelligentCompositionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NumBoxes)) { body["NumBoxes"] = request.NumBoxes; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "IntelligentComposition", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<IntelligentCompositionResponse>(CallApi(params_, req, runtime)); } public async Task<IntelligentCompositionResponse> IntelligentCompositionWithOptionsAsync(IntelligentCompositionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NumBoxes)) { body["NumBoxes"] = request.NumBoxes; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "IntelligentComposition", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<IntelligentCompositionResponse>(await CallApiAsync(params_, req, runtime)); } public IntelligentCompositionResponse IntelligentComposition(IntelligentCompositionRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return IntelligentCompositionWithOptions(request, runtime); } public async Task<IntelligentCompositionResponse> IntelligentCompositionAsync(IntelligentCompositionRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await IntelligentCompositionWithOptionsAsync(request, runtime); } public IntelligentCompositionResponse IntelligentCompositionAdvance(IntelligentCompositionAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); IntelligentCompositionRequest intelligentCompositionReq = new IntelligentCompositionRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, intelligentCompositionReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); intelligentCompositionReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } IntelligentCompositionResponse intelligentCompositionResp = IntelligentCompositionWithOptions(intelligentCompositionReq, runtime); return intelligentCompositionResp; } public async Task<IntelligentCompositionResponse> IntelligentCompositionAdvanceAsync(IntelligentCompositionAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); IntelligentCompositionRequest intelligentCompositionReq = new IntelligentCompositionRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, intelligentCompositionReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); intelligentCompositionReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } IntelligentCompositionResponse intelligentCompositionResp = await IntelligentCompositionWithOptionsAsync(intelligentCompositionReq, runtime); return intelligentCompositionResp; } public MakeSuperResolutionImageResponse MakeSuperResolutionImageWithOptions(MakeSuperResolutionImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Mode)) { body["Mode"] = request.Mode; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OutputFormat)) { body["OutputFormat"] = request.OutputFormat; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OutputQuality)) { body["OutputQuality"] = request.OutputQuality; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UpscaleFactor)) { body["UpscaleFactor"] = request.UpscaleFactor; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Url)) { body["Url"] = request.Url; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "MakeSuperResolutionImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<MakeSuperResolutionImageResponse>(CallApi(params_, req, runtime)); } public async Task<MakeSuperResolutionImageResponse> MakeSuperResolutionImageWithOptionsAsync(MakeSuperResolutionImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Mode)) { body["Mode"] = request.Mode; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OutputFormat)) { body["OutputFormat"] = request.OutputFormat; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OutputQuality)) { body["OutputQuality"] = request.OutputQuality; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UpscaleFactor)) { body["UpscaleFactor"] = request.UpscaleFactor; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Url)) { body["Url"] = request.Url; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "MakeSuperResolutionImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<MakeSuperResolutionImageResponse>(await CallApiAsync(params_, req, runtime)); } public MakeSuperResolutionImageResponse MakeSuperResolutionImage(MakeSuperResolutionImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return MakeSuperResolutionImageWithOptions(request, runtime); } public async Task<MakeSuperResolutionImageResponse> MakeSuperResolutionImageAsync(MakeSuperResolutionImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await MakeSuperResolutionImageWithOptionsAsync(request, runtime); } public MakeSuperResolutionImageResponse MakeSuperResolutionImageAdvance(MakeSuperResolutionImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); MakeSuperResolutionImageRequest makeSuperResolutionImageReq = new MakeSuperResolutionImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, makeSuperResolutionImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UrlObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.UrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); makeSuperResolutionImageReq.Url = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } MakeSuperResolutionImageResponse makeSuperResolutionImageResp = MakeSuperResolutionImageWithOptions(makeSuperResolutionImageReq, runtime); return makeSuperResolutionImageResp; } public async Task<MakeSuperResolutionImageResponse> MakeSuperResolutionImageAdvanceAsync(MakeSuperResolutionImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); MakeSuperResolutionImageRequest makeSuperResolutionImageReq = new MakeSuperResolutionImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, makeSuperResolutionImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UrlObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.UrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); makeSuperResolutionImageReq.Url = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } MakeSuperResolutionImageResponse makeSuperResolutionImageResp = await MakeSuperResolutionImageWithOptionsAsync(makeSuperResolutionImageReq, runtime); return makeSuperResolutionImageResp; } public RecolorHDImageResponse RecolorHDImageWithOptions(RecolorHDImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ColorCount)) { body["ColorCount"] = request.ColorCount; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ColorTemplate)) { body["ColorTemplate"] = request.ColorTemplate; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Degree)) { body["Degree"] = request.Degree; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Mode)) { body["Mode"] = request.Mode; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RefUrl)) { body["RefUrl"] = request.RefUrl; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Url)) { body["Url"] = request.Url; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "RecolorHDImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<RecolorHDImageResponse>(CallApi(params_, req, runtime)); } public async Task<RecolorHDImageResponse> RecolorHDImageWithOptionsAsync(RecolorHDImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ColorCount)) { body["ColorCount"] = request.ColorCount; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ColorTemplate)) { body["ColorTemplate"] = request.ColorTemplate; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Degree)) { body["Degree"] = request.Degree; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Mode)) { body["Mode"] = request.Mode; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RefUrl)) { body["RefUrl"] = request.RefUrl; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Url)) { body["Url"] = request.Url; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "RecolorHDImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<RecolorHDImageResponse>(await CallApiAsync(params_, req, runtime)); } public RecolorHDImageResponse RecolorHDImage(RecolorHDImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return RecolorHDImageWithOptions(request, runtime); } public async Task<RecolorHDImageResponse> RecolorHDImageAsync(RecolorHDImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await RecolorHDImageWithOptionsAsync(request, runtime); } public RecolorHDImageResponse RecolorHDImageAdvance(RecolorHDImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); RecolorHDImageRequest recolorHDImageReq = new RecolorHDImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, recolorHDImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RefUrlObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.RefUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); recolorHDImageReq.RefUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UrlObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.UrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); recolorHDImageReq.Url = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } RecolorHDImageResponse recolorHDImageResp = RecolorHDImageWithOptions(recolorHDImageReq, runtime); return recolorHDImageResp; } public async Task<RecolorHDImageResponse> RecolorHDImageAdvanceAsync(RecolorHDImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); RecolorHDImageRequest recolorHDImageReq = new RecolorHDImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, recolorHDImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RefUrlObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.RefUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); recolorHDImageReq.RefUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UrlObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.UrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); recolorHDImageReq.Url = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } RecolorHDImageResponse recolorHDImageResp = await RecolorHDImageWithOptionsAsync(recolorHDImageReq, runtime); return recolorHDImageResp; } public RecolorImageResponse RecolorImageWithOptions(RecolorImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ColorCount)) { body["ColorCount"] = request.ColorCount; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ColorTemplate)) { body["ColorTemplate"] = request.ColorTemplate; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Mode)) { body["Mode"] = request.Mode; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RefUrl)) { body["RefUrl"] = request.RefUrl; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Url)) { body["Url"] = request.Url; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "RecolorImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<RecolorImageResponse>(CallApi(params_, req, runtime)); } public async Task<RecolorImageResponse> RecolorImageWithOptionsAsync(RecolorImageRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ColorCount)) { body["ColorCount"] = request.ColorCount; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ColorTemplate)) { body["ColorTemplate"] = request.ColorTemplate; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Mode)) { body["Mode"] = request.Mode; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RefUrl)) { body["RefUrl"] = request.RefUrl; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Url)) { body["Url"] = request.Url; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "RecolorImage", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<RecolorImageResponse>(await CallApiAsync(params_, req, runtime)); } public RecolorImageResponse RecolorImage(RecolorImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return RecolorImageWithOptions(request, runtime); } public async Task<RecolorImageResponse> RecolorImageAsync(RecolorImageRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await RecolorImageWithOptionsAsync(request, runtime); } public RecolorImageResponse RecolorImageAdvance(RecolorImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); RecolorImageRequest recolorImageReq = new RecolorImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, recolorImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RefUrlObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.RefUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); recolorImageReq.RefUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UrlObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.UrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); recolorImageReq.Url = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } RecolorImageResponse recolorImageResp = RecolorImageWithOptions(recolorImageReq, runtime); return recolorImageResp; } public async Task<RecolorImageResponse> RecolorImageAdvanceAsync(RecolorImageAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); RecolorImageRequest recolorImageReq = new RecolorImageRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, recolorImageReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RefUrlObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.RefUrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); recolorImageReq.RefUrl = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.UrlObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.UrlObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); recolorImageReq.Url = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } RecolorImageResponse recolorImageResp = await RecolorImageWithOptionsAsync(recolorImageReq, runtime); return recolorImageResp; } public RemoveImageSubtitlesResponse RemoveImageSubtitlesWithOptions(RemoveImageSubtitlesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.BH)) { body["BH"] = request.BH; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.BW)) { body["BW"] = request.BW; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.BX)) { body["BX"] = request.BX; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.BY)) { body["BY"] = request.BY; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "RemoveImageSubtitles", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<RemoveImageSubtitlesResponse>(CallApi(params_, req, runtime)); } public async Task<RemoveImageSubtitlesResponse> RemoveImageSubtitlesWithOptionsAsync(RemoveImageSubtitlesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.BH)) { body["BH"] = request.BH; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.BW)) { body["BW"] = request.BW; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.BX)) { body["BX"] = request.BX; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.BY)) { body["BY"] = request.BY; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "RemoveImageSubtitles", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<RemoveImageSubtitlesResponse>(await CallApiAsync(params_, req, runtime)); } public RemoveImageSubtitlesResponse RemoveImageSubtitles(RemoveImageSubtitlesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return RemoveImageSubtitlesWithOptions(request, runtime); } public async Task<RemoveImageSubtitlesResponse> RemoveImageSubtitlesAsync(RemoveImageSubtitlesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await RemoveImageSubtitlesWithOptionsAsync(request, runtime); } public RemoveImageSubtitlesResponse RemoveImageSubtitlesAdvance(RemoveImageSubtitlesAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); RemoveImageSubtitlesRequest removeImageSubtitlesReq = new RemoveImageSubtitlesRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, removeImageSubtitlesReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); removeImageSubtitlesReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } RemoveImageSubtitlesResponse removeImageSubtitlesResp = RemoveImageSubtitlesWithOptions(removeImageSubtitlesReq, runtime); return removeImageSubtitlesResp; } public async Task<RemoveImageSubtitlesResponse> RemoveImageSubtitlesAdvanceAsync(RemoveImageSubtitlesAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); RemoveImageSubtitlesRequest removeImageSubtitlesReq = new RemoveImageSubtitlesRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, removeImageSubtitlesReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); removeImageSubtitlesReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } RemoveImageSubtitlesResponse removeImageSubtitlesResp = await RemoveImageSubtitlesWithOptionsAsync(removeImageSubtitlesReq, runtime); return removeImageSubtitlesResp; } public RemoveImageWatermarkResponse RemoveImageWatermarkWithOptions(RemoveImageWatermarkRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "RemoveImageWatermark", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<RemoveImageWatermarkResponse>(CallApi(params_, req, runtime)); } public async Task<RemoveImageWatermarkResponse> RemoveImageWatermarkWithOptionsAsync(RemoveImageWatermarkRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "RemoveImageWatermark", Version = "2019-09-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; return TeaModel.ToObject<RemoveImageWatermarkResponse>(await CallApiAsync(params_, req, runtime)); } public RemoveImageWatermarkResponse RemoveImageWatermark(RemoveImageWatermarkRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return RemoveImageWatermarkWithOptions(request, runtime); } public async Task<RemoveImageWatermarkResponse> RemoveImageWatermarkAsync(RemoveImageWatermarkRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await RemoveImageWatermarkWithOptionsAsync(request, runtime); } public RemoveImageWatermarkResponse RemoveImageWatermarkAdvance(RemoveImageWatermarkAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = this._credential.GetAccessKeyId(); string accessKeySecret = this._credential.GetAccessKeySecret(); string securityToken = this._credential.GetSecurityToken(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); RemoveImageWatermarkRequest removeImageWatermarkReq = new RemoveImageWatermarkRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, removeImageWatermarkReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; ossClient.PostObject(uploadRequest, ossRuntime); removeImageWatermarkReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } RemoveImageWatermarkResponse removeImageWatermarkResp = RemoveImageWatermarkWithOptions(removeImageWatermarkReq, runtime); return removeImageWatermarkResp; } public async Task<RemoveImageWatermarkResponse> RemoveImageWatermarkAdvanceAsync(RemoveImageWatermarkAdvanceRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { // Step 0: init client string accessKeyId = await this._credential.GetAccessKeyIdAsync(); string accessKeySecret = await this._credential.GetAccessKeySecretAsync(); string securityToken = await this._credential.GetSecurityTokenAsync(); string credentialType = this._credential.GetType(); string openPlatformEndpoint = _openPlatformEndpoint; if (AlibabaCloud.TeaUtil.Common.IsUnset(openPlatformEndpoint)) { openPlatformEndpoint = "openplatform.aliyuncs.com"; } if (AlibabaCloud.TeaUtil.Common.IsUnset(credentialType)) { credentialType = "access_key"; } AlibabaCloud.OpenApiClient.Models.Config authConfig = new AlibabaCloud.OpenApiClient.Models.Config { AccessKeyId = accessKeyId, AccessKeySecret = accessKeySecret, SecurityToken = securityToken, Type = credentialType, Endpoint = openPlatformEndpoint, Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Client authClient = new AlibabaCloud.SDK.OpenPlatform20191219.Client(authConfig); AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest authRequest = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadRequest { Product = "imageenhan", RegionId = _regionId, }; AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse authResponse = new AlibabaCloud.SDK.OpenPlatform20191219.Models.AuthorizeFileUploadResponse(); AlibabaCloud.OSS.Models.Config ossConfig = new AlibabaCloud.OSS.Models.Config { AccessKeySecret = accessKeySecret, Type = "access_key", Protocol = _protocol, RegionId = _regionId, }; AlibabaCloud.OSS.Client ossClient = null; AlibabaCloud.SDK.TeaFileform.Models.FileField fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField(); AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader(); AlibabaCloud.OSS.Models.PostObjectRequest uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest(); AlibabaCloud.OSSUtil.Models.RuntimeOptions ossRuntime = new AlibabaCloud.OSSUtil.Models.RuntimeOptions(); AlibabaCloud.OpenApiUtil.Client.Convert(runtime, ossRuntime); RemoveImageWatermarkRequest removeImageWatermarkReq = new RemoveImageWatermarkRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(request, removeImageWatermarkReq); if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ImageURLObject)) { authResponse = await authClient.AuthorizeFileUploadWithOptionsAsync(authRequest, runtime); ossConfig.AccessKeyId = authResponse.Body.AccessKeyId; ossConfig.Endpoint = AlibabaCloud.OpenApiUtil.Client.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, _endpointType); ossClient = new AlibabaCloud.OSS.Client(ossConfig); fileObj = new AlibabaCloud.SDK.TeaFileform.Models.FileField { Filename = authResponse.Body.ObjectKey, Content = request.ImageURLObject, ContentType = "", }; ossHeader = new AlibabaCloud.OSS.Models.PostObjectRequest.PostObjectRequestHeader { AccessKeyId = authResponse.Body.AccessKeyId, Policy = authResponse.Body.EncodedPolicy, Signature = authResponse.Body.Signature, Key = authResponse.Body.ObjectKey, File = fileObj, SuccessActionStatus = "201", }; uploadRequest = new AlibabaCloud.OSS.Models.PostObjectRequest { BucketName = authResponse.Body.Bucket, Header = ossHeader, }; await ossClient.PostObjectAsync(uploadRequest, ossRuntime); removeImageWatermarkReq.ImageURL = "http://" + authResponse.Body.Bucket + "." + authResponse.Body.Endpoint + "/" + authResponse.Body.ObjectKey; } RemoveImageWatermarkResponse removeImageWatermarkResp = await RemoveImageWatermarkWithOptionsAsync(removeImageWatermarkReq, runtime); return removeImageWatermarkResp; } } }