using ComDocumentAIKit;
using ComPDFKit_Conversion.Converter;
using ComPDFKit_Conversion.Options;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace PDF_Office.Model.Dialog.HomePageToolsDialogs.HomePageBatchProcessing.HomePageConverter
{
    public class ConvertOptions
    {
        public COCRLanguage OCRLanguage = COCRLanguage.English;
        public bool IsAllowOCR = false;
        public bool IsContainOCRBgImage = false;
        public bool IsContainAnnotations = true;
        public bool IsContainImages = true;
        public ContentOptions ContentOpts = ContentOptions.AllContent;
        public WorksheetOptions WorksheetOpts = WorksheetOptions.ForEachPage;
        public PageAndNavigationPaneOptions PageAndNavigationPaneOpts = PageAndNavigationPaneOptions.SinglePageNavigationByBookmarks;
        public ImgType ImageType = ImgType.PNG;
        public uint ImageDpi = 150;
        public bool IsMergeCsv = false;
    }

    public class HomePageConverterDialogModel
    {
        public static List<string> GetConverter = new List<string> { "HomePageConverterWord","HomePageConverterExcel","HomePageConverterPPT","HomePageConverterRTF","HomePageConverterCSV","HomePageConverterHTML","HomePageConverterText","HomePageConverterImg" };

        /// <summary>
        /// 文档地址;
        /// </summary>
        public string InputPath = "";

        /// <summary>
        /// 输出地址;
        /// </summary>
        public string OutputPath = "";

        /// <summary>
        /// 进度;
        /// </summary>
        public OnProgress GetProgress = null;

        /// <summary>
        /// 页码 页码范围;
        /// </summary>
        public List<int> PageIndexLists = new List<int> { };

        /// <summary>
        /// 页面信息
        /// </summary>
        public string PageRange = "1,3-4,10";

        /// <summary>
        /// 文档密码;
        /// </summary>
        public string Pawssword = "";

        /// <summary>
        /// OCR,与部分功能;
        /// </summary>
        public ConvertOptions Options = new ConvertOptions();
    }
}