using System; using System.Collections.Generic; using System.Text; namespace HTEXLib.Models { /// /// 物件動畫 時間系列 (animtimetree) /// public class AnimtimeTree { /// /// 物件動畫 時間節點 列表 (animnode list) /// public List actlst { get; set; } /// /// 物件(有動畫) 之 對應資訊 列表 /// "Key": "00002", // *om* // 物件 自訂 uid /// "Value": objdata // *om* // 物件(有動畫) 之 對應資訊 (objdata) /// public Dictionary obj_dic { get; set; } /// /// 是否循序 或 同時 /// public bool seqf { get; set; } /// /// 物件動畫 時間系列 表列 (animtimetree list) /// public List subtreelst { get; set; } /// /// 物件動畫 時間系列 uid /// public string tree_id { get; set; } } /// /// 物件(有動畫) 之 對應資訊 (objdata) : /// public class AnimtimeData { /// /// 動畫結束後 是否 可見 /// public bool endvisible { get; set; } /// /// 原始 是否可見 /// public bool orgvisible { get; set; } /// /// 物件 於 pptx 之 原始 id /// public string obj_spid { get; set; } /// /// 物件 自訂 uid /// public string obj_uid { get; set; } /// /// 對 pptx 物件 之 自訂類別: 0=形狀, 1=文字, m=替換元素 (若是形狀裡有文字, 則會被切成 (0=形狀)+(1=文字) 2 個物件 以組合處理) /// public string objtypelst { get; set; } /// /// 位置 /// public Position position { get; set; } /// /// 原始 不透明值 (0, .., 1) /// public double orgopaque { get; set; } } /// /// 物件動畫 時間節點 (animnode) /// public class AnimtimeNode { /// /// 開始 加速 /// public int accel { get; set; } /// /// 物件動畫 變化狀態 表列 (animxchg list) /// public List achglst { get; set; } /// /// 自動反轉 /// public bool autorev { get; set; } /// /// 開始之 旋轉角度 (記憶 物件動畫過程後 的 累計旋轉量) /// public int beg_rot { get; set; } /// /// 開始之 高 縮放比值 /// public int begh_scale { get; set; } /// /// 開始之 寬 縮放比值 /// public int begw_scale { get; set; } /// /// 結束 減速 /// public int decel { get; set; } /// /// 延遲 播放 /// public int delay { get; set; } /// /// 結束之 旋轉角度 (記憶 物件動畫過程後 的 累計旋轉量) /// public int end_rot { get; set; } /// /// 結束之 高 縮放比值 /// public int endh_scale { get; set; } /// /// 結束之 寬 縮放比值 /// public int endw_scale { get; set; } /// /// path 移動路徑) 之 最後 x 位置(pptx 給 頁面寬之比值)(左上角開始) (只對 path 移動路徑 有效) /// public int endx_rate { get; set; } /// /// (path 移動路徑) 之 最後 y 位置(pptx 給 頁面高之比值)(左上角開始) (只對 path 移動路徑 有效) /// public int endy_rate { get; set; } /// /// 動畫播放完成後 之 狀態 /// public string fill { get; set; } /// /// 當 is_accrot > 0 時, 表示 end_rot 值有效 (壘加 旋轉動畫 角度 之用) /// public int is_accrot { get; set; } /// /// (預留) /// public int iterate_tmabs { get; set; } /// /// (對應 ) 之 % 值 /// public double iterate_tmpct { get; set; } /// /// (對應 ) 列舉 /// public int iterate_type { get; set; } /// /// 物件動畫 播放方式: "clickEffect"(按下開始), "withEffect"(和前一動畫同時), "afterEffect"(接在前一動畫之後) (對應 ) /// public int nodetype { get; set; } /// /// 物件動畫可能所屬 播放群組 id, 對應 /// public int obj_grpid { get; set; } /// /// 物件 於 pptx 之 原始 id /// public int obj_spid { get; set; } /// /// 物件 自訂 uid 表列 /// public List obj_uid { get; set; } /// /// 物件動畫 四大分類: "entr"(進入), "exit"(結束), "emph"(強調), "path"(移動路徑) (對應 ) /// public string presetclass { get; set; } /// /// 物件動畫 樣式 id (對應 ) /// public string presetid { get; set; } /// /// 物件動畫 次樣式 形態 (對應 ) /// public string presetsubtype { get; set; } /// /// 重覆 播放 /// public int repeat { get; set; } } public class AnimtimeExchange { /// /// 開始 加速 /// public int accel { get; set; } /// /// 自動反轉 /// public bool autorev { get; set; } /// /// 結束 減速 /// public int decel { get; set; } /// /// 延遲 播放 /// public int delay { get; set; } /// /// 播放時間長度 (秒) /// public double dur { get; set; } /// /// 動畫播放完成後 之 狀態 /// public string fill { get; set; } /// /// 物件動畫 變化狀態名稱 表列 (pptx 於眾多不同地方 設眾多不同值) /// (HiTeach 白板 除 pptx 給的原始值之外, 目前新增 "內定出現","內定消失", "內定強調", "color", "motion", "scale") /// public List name_type { get; set; } /// /// 依 各細項出現的順序, 記錄 相對應的 資料型態 /// public List newtavl { get; set; } /// /// bool 值 表列 /// public bool newvalb { get; set; } /// /// (string) color 值 表列 (以 string 表示) /// public string newvalc { get; set; } /// /// double 值 表列 /// public double newvald { get; set; } /// /// int 值 表列 /// public int newvali { get; set; } /// /// string 值 表列 /// public List newvals { get; set; } /// /// (對應 ) fmla (string) 值 表列 (pptx 複雜動畫公式 會使用, 如:輕彈,猛然挪動,...等) /// public string tav_fmla_str { get; set; } /// /// (對應 ) tm (%) 值 表列 /// public List tav_tm { get; set; } /// /// (對應 ) /// public string tmfilter { get; set; } public string transition { get; set; } /// /// (對應 ) int 值 /// public int txtcrgbeg { get; set; } /// /// (對應 ) int 值 /// public int txtcrgend { get; set; } /// /// (對應 ) int 值 /// public int txtprgbeg { get; set; } /// /// (對應 ) int 值 /// public int txtprgend { get; set; } /// /// (by) 資料類別+index /// public string valby { get; set; } /// /// (from) 資料類別 + index /// public string valfrom { get; set; } /// /// (to) 資料類別+index /// public string valto { get; set; } } }