package common


type DocumentWaterMarkContent struct {
	// <ext>core:true</ext> 【水印类型】水印类型  【作用】 1、图片水印：支持传入图片作为文件上的水印，例如企业logo等 2、文字水印：支持定义文字内容作为文件上的水印，例如“该文件仅作为内部使用，请勿外传”等 3、文件编号：将使用该签署文档所在的电子签约文件的文件编号作为水印内容 4、光栅防伪码：可在文件上添加水印，在电子签约文件需要纸质输出时，采用防伪打印技术，在打印文件的页面上增加光栅防伪码，使用特定的光栅片可查验识别真伪，有效防止纸质文件被人为抽页、漏页，确保电子文件与纸质文件的一致性与完整性 5、文件二维码：可将该文件的二维码显示在文件上，扫码可在线查看电子文件或查看文件的验签结果 【传参】 取值范围：IMAGE（图片水印），TEXT（文字水印），NO（文件编号），DOUBLEANTIFAKE（光栅防伪码），QRCODE（文件二维码）；不传值默认为：TEXT（文字水印）。
	Type_ string `json:"type,omitempty"`
	// <ext>core:true</ext> 【文字水印内容】文字水印内容 【传参】 type（水印类型）为TEXT（文字水印）时必填。
	Content string `json:"content,omitempty"`
	// <ext>core:true</ext> 【字体大小】字体大小 【传参】 最小值：0（不包含）；不传值默认为：16。
	FontSize *int64 `json:"fontSize,omitempty"`
	// <ext>core:true;format:color</ext> 【字体颜色】字体颜色 【传参】 RGB颜色(16进制)。不传值默认为：#999999。
	Color string `json:"color,omitempty"`
	// <ext>core:true;format:base64</ext> 【图片水印】图片水印 【传参】 1、支持PNG、JPG、JPEG格式图片。 2、type（水印类型）为IMAGE（图片水印）时必填。
	ImageBase64 string `json:"imageBase64,omitempty"`
	// <ext>core:true</ext> 【图片缩放比例】图片缩放比例 【作用】 1、调整水印的图片大小，支持按比例缩小放大 2、水印图片默认宽度为 116像素 * 0.5=58像素，高度等比例缩放。可传入参数进行放大缩小，将按照（116 像素* 缩放比例）确认宽度，再将高度等比例缩放 【传参】 1、最小值：0（不包含）；不传值默认为：0.5。 2、大于1放大，小于1缩小。
	Scaling *float64 `json:"scaling,omitempty"`
	// <ext>core:true</ext> 【透明度】透明度 【传参】 1、最小值：0（包含），最大值：1（包含）；不传值默认为：0.3。 2、文字图片水印均可使用。
	Transparency *float64 `json:"transparency,omitempty"`
	// <ext>core:true</ext> 【光栅码图片宽高】光栅码图片宽高 【传参】 1、取值范围：SQUARE_5（5*5），SQUARE_10（10*10），RECTANGLE_20_10（20*10）；不传值默认为：SQUARE_5（5*5）。 2、单位：毫米。 3、type（水印类型）为DOUBLEANTIFAKE（光栅防伪码）时必填。
	BackgroundShape string `json:"backgroundShape,omitempty"`
	// <ext>core:true</ext> 【横向光栅码内容】横向光栅码内容 【传参】 支持最多四位数字或字母，type（水印类型）为DOUBLEANTIFAKE（光栅防伪码）时生效。
	HorizonAntiFakeContent string `json:"horizonAntiFakeContent,omitempty"`
	// <ext>core:true</ext> 【横向光栅码内容是否随机生成】横向光栅码内容是否随机生成 【传参】 1、取值范围：true（随机生成），false（不随机生成）；不传值默认为：false（不随机生成）。 2、为true时，横向光栅码内容随机生成，且会覆盖horizonAntiFakeContent（横向光栅码内容）。
	HorizonAntiFakeRandomCode *bool `json:"horizonAntiFakeRandomCode,omitempty"`
	// <ext>core:true</ext> 【横向光栅码内容随机生成位数】横向光栅码内容随机生成位数 【传参】 1、取值范围：1， 2，3，4；不传值默认为：1。 2、horizonAntiFakeRandomCode（横向光栅码内容是否随机生成）为true时有效，用来控制随机生成横向光栅码内容的长度。
	HorizonAntiFakeCodeDigit *int64 `json:"horizonAntiFakeCodeDigit,omitempty"`
	// <ext>core:true</ext> 【纵向光栅码内容】纵向光栅码内容 【传参】 支持最多四位数字或字母，type（水印类型）为DOUBLEANTIFAKE（光栅防伪码）时生效。
	VerticalAntiFakeContent string `json:"verticalAntiFakeContent,omitempty"`
	// <ext>core:true</ext> 【纵向光栅码内容是否随机生成】纵向光栅码内容是否随机生成 【传参】 1、取值范围：true（随机生成），false（不随机生成）；不传值默认为：false（不随机生成）。 2、为true时，纵向光栅码内容随机生成，且会覆盖verticalAntiFakeContent（纵向光栅码内容）。
	VerticalAntiFakeRandomCode *bool `json:"verticalAntiFakeRandomCode,omitempty"`
	// <ext>core:true</ext> 【纵向光栅码内容随机生成位数】纵向光栅码内容随机生成位数 【传参】 1、取值范围：1， 2， 3，4；不传值默认为：1。 2、verticalAntiFakeRandomCode（纵向光栅码内容是否随机生成）为true时有效，用来控制随机生成纵向光栅码内容的长度。
	VerticalAntiFakeCodeDigit *int64 `json:"verticalAntiFakeCodeDigit,omitempty"`
	// <ext>core:true</ext> 【二维码是否永久有效】二维码是否永久有效 【传参】 1、取值范围：true（永久有效），false（根据activeTime、timeUnit设置）；不传值默认为：true（永久有效）。 2、若为false，则二维码有效时间根据activeTime、timeUnit计算，例如activeTime为7，timeUnit为DAY，表示发起后7天失效。 3、有效时间从发起时开始计算。 2、type（水印类型）为QRCODE（文件二维码）时生效。
	Permanent *bool `json:"permanent,omitempty"`
	// <ext>core:true</ext> 【二维码有效时间】二维码有效时间 【传参】 1、最小值：1（包含），最大值：1000（包含）。 2、type（水印类型）为QRCODE（文件二维码），且permanent（二维码是否永久有效）为false时必填。
	ActiveTime *int64 `json:"activeTime,omitempty"`
	// <ext>core:true</ext> 【二维码有效时间单位】二维码有效时间单位 【传参】 1、取值范围：DAY（天），HOUR（小时），MINUTE（分钟）。 2、type（水印类型）为QRCODE（文件二维码），且permanent（二维码是否永久有效）为false时必填。
	TimeUnit string `json:"timeUnit,omitempty"`
	// <ext>core:true</ext> 【扫码二维码查看内容】扫码二维码查看内容 【传参】 取值范围：DETAIL（电子原文），VERIFY_SIGN（原文验签结果）；不传值默认为：DETAIL（电子原文）。
	CodeTypeList []string `json:"codeTypeList,omitempty"`
	// <ext>core:true</ext> 【二维码查看权限 】二维码查看权限  【传参】 取值范围：default（登录后查看），open（公开无需登录）；不传值默认为：default（登录后查看）。
	ViewType string `json:"viewType,omitempty"`
	// <ext>core:true</ext> 【公开类型二维码访问页面展示登录logo及背景图】公开类型二维码访问页面展示登录logo及背景图 【传参】 1、取值范围：true（展示），false（不展示）；不传值默认为：true（展示）。 2、当viewType（二维码查看权限）为open（公开无需登录）时生效。
	ShowLogo *bool `json:"showLogo,omitempty"`
	// <ext>core:true</ext> 【水印位置】水印位置 【传参】 取值范围：UPPER_LEFT（左上角），UPPER_RIGHT（右上角），LOWER_LEFT（左下角），LOWER_RIGHT（右下角），UPPER_MIDDLE（居中），LOWER_MIDDLE（底部居中），TILE（平铺），FILL（填充），CUSTOM（坐标指定位置、需传入customLocation指定位置）；不传值默认为：UPPER_MIDDLE（居中）。
	Location string `json:"location,omitempty"`
	CustomLocation *CustomLocation `json:"customLocation,omitempty"`
	// <ext>core:true</ext> 【水印平铺密度】水印平铺密度 【传参】 1、最小值：1（包含），最大值：999（包含）；不传值默认为：30（适中）。 2、可参考：270（稀疏），30（适中），10（密集）。 3、当location（水印位置）为TILE（平铺）时生效。
	CustomDensity *int64 `json:"customDensity,omitempty"`
	// <ext>core:true</ext> 【水印应用页面】水印应用页面 【传参】 取值范围：EVERY_PAGE（所有文件所有页），HOME_PAGE（所有文件首页），FINAL_PAGE（所有文件末页），ODD_PAGES（所有文件奇数页），EVEN_PAGES（所有文件偶数页），CUSTOM_PAGES（自定义页面、需传入customPages指定页面范围）；不传值默认为：EVERY_PAGE（所有文件所有页）。
	WaterMarkPages string `json:"waterMarkPages,omitempty"`
	// <ext>core:true</ext> 【水印页面范围】水印页面范围 【传参】 1、可输入页码或页码范围，多组页码或页码范围之间用英文逗号(,)分隔，例如：2,4~7,8~11。 2、当waterMarkPages（应用页面）为CUSTOM_PAGES（自定义页面）时必填。
	CustomPages string `json:"customPages,omitempty"`
	// <ext>core:true</ext> 【旋转角度】旋转角度 【传参】 最小值：0（包含），最大值：180（包含）；不传值默认为：0。
	RotateAngle *float64 `json:"rotateAngle,omitempty"`
	// <ext>core:true</ext> 【水印在文字上还是文字下】水印在文字上还是文字下 【传参】 取值范围：under（水印在文字下），over（水印在文字上）；不传值默认为：over（水印在文字上）。
	TypeContent string `json:"typeContent,omitempty"`
	// <ext>core:true;format:string</ext> 【签署文档id】签署文档id 【特别说明】 为签署文档添加水印时必填
	DocumentId *int64 `json:"documentId,omitempty"`
}
