管道基础大数据平台系统开发-【CS】-ExportMap
13693261870
2024-09-07 8d7a67ab1d635cb954337d8a767878ae526dd3dc
ExportMap/Models/ExportArgs.cs
@@ -3,7 +3,7 @@
using System.Linq;
using System.Web;
namespace LFServer.Models
namespace ExportMap.Models
{
    /// <summary>
    /// 出图参数
@@ -12,10 +12,17 @@
    {
        public ExportArgs() { }
        public String token { set; get; }
        /// <summary>
        /// 标题
        /// </summary>
        public String title { set; get; }
        /// <summary>
        /// 纸张大小
        /// </summary>
        public String pageSize { set; get; }
        /// <summary>
        /// 省份
@@ -28,7 +35,7 @@
        public String scale { set; get; }
        /// <summary>
        /// 分辨率
        /// 分辨率(右下角文本)
        /// </summary>
        public String resolution { set; get; }
@@ -41,6 +48,11 @@
        /// 图层
        /// </summary>
        public String layers { set; get; }
        /// <summary>
        /// 导出路径
        /// </summary>
        public String imgPath { set; get; }
        /// <summary>
        /// 旋转角度
@@ -66,5 +78,59 @@
        /// X最大
        /// </summary>
        public double xmax { set; get; }
        /// <summary>
        /// 出图分辨率
        /// </summary>
        public int dpi { set; get; }
        /// <summary>
        /// 模板文件
        /// </summary>
        public String qpt { set; get; }
        /// <summary>
        /// 设置默认值
        /// </summary>
        public void SetDefault()
        {
            if (string.IsNullOrWhiteSpace(title)) title = "管道基础大数据平台";
            if (string.IsNullOrWhiteSpace(province)) province = string.Empty;
            if (string.IsNullOrWhiteSpace(scale)) scale = string.Empty;
            if (string.IsNullOrWhiteSpace(resolution)) resolution = string.Empty;
            if (string.IsNullOrWhiteSpace(date)) date = DateTime.Now.ToString("yyyy.MM.dd");
            this.dpi = GetDpi(this.pageSize);
        }
        /// <summary>
        /// 获取DPI
        /// </summary>
        /// <param name="page">页面大小</param>
        /// <returns>DPI</returns>
        public int GetDpi(string page)
        {
            if (string.IsNullOrWhiteSpace(page)) return 300;
            switch (page.ToUpper())
            {
                case "A0":
                    return 1200;
                case "A1":
                    return 850;
                case "A2":
                    return 600;
                case "A3":
                    return 424;
                case "A4":
                    return 300;
                case "A5":
                    return 212;
                case "A6":
                    return 150;
                default:
                    return 300;
            }
        }
    }
}
}