package com.ycwl.basic.image.watermark.entity;

import cn.hutool.core.date.DateUtil;
import lombok.Data;

import java.io.File;
import java.util.Date;
import java.util.List;

@Data
public class WatermarkInfo {
    private File originalFile;
    /**
     * 输出文件
     */
    private File watermarkedFile;
    private File qrcodeFile;
    private File faceFile;
    private String scenicLine;
    private String secondLine;
    private String thirdLine;
    private String fourthLine;
    private Date datetime;
    private String dtFormat;
    private String datetimeLine;

    /**
     * 四边偏移(像素值),正数表示向内偏移
     * 例如: offsetLeft=40 表示左边界向右收缩40像素,所有左对齐元素随之向右移动
     * null 表示使用默认值(通常为0)
     */
    private Integer offsetTop;
    private Integer offsetBottom;
    private Integer offsetLeft;
    private Integer offsetRight;

    /**
     * 缩放倍数,用于将所有定位和大小乘以该倍数
     * 例如: scale=2.0 表示所有尺寸和位置都放大2倍
     * null 表示使用默认值1.0(不缩放)
     */
    private Double scale;

    /**
     * 打印水印竖版URL列表
     */
    private List<String> printWatermarkPUrlList;

    /**
     * 打印水印横版URL列表
     */
    private List<String> printWatermarkLUrlList;

    public String getDatetimeLine() {
        if (datetimeLine == null) {
            datetimeLine = DateUtil.format(datetime, dtFormat);
        }
        return datetimeLine;
    }

    public String getScenicLine() {
        if (scenicLine == null) {
            scenicLine = "";
        }
        return scenicLine;
    }

}
