123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297 |
- using PDF_Master.CustomControl.CompositeControl;
- using PDF_Master.Properties;
- using PDFSettings;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows;
- using System.Windows.Media;
- namespace PDF_Master.Model.PropertyPanel.AnnotPanel
- {
- public class TextFont
- {
- //获取本地缓存数据
- public static List<PresetFontItem> GetCachePresetFontList()
- {
- List<PresetFontItem> cacheTempList = new List<PresetFontItem>();
- if (Settings.Default.PresetFontList == null)
- Settings.Default.PresetFontList = new PresetFontList();
- if (Settings.Default.PresetFontList.Count == 0)
- {
- cacheTempList = GetPresetFontStyle();
- foreach(var cacheItem in cacheTempList)
- {
- var newItem = new PresetFontItem();
- newItem.mTag = cacheItem.mTag;
- newItem.mTagContent = cacheItem.mTagContent;
- newItem.mFontStyle = cacheItem.mFontStyle;
- newItem.mFontWeight = cacheItem.mFontWeight;
- newItem.mFontSize = cacheItem.mFontSize;
- newItem.mFontFamily = cacheItem.mFontFamily;
- Settings.Default.PresetFontList.Add(newItem);
- }
- Settings.Default.Save();
- }
- else
- {
- foreach (var item in Settings.Default.PresetFontList)
- {
- var newItem = new PresetFontItem();
- newItem.mTag = item.mTag;
- newItem.mTagContent = item.mTagContent;
- newItem.mFontStyle = item.mFontStyle;
- newItem.mFontWeight = item.mFontWeight;
- newItem.mFontSize = item.mFontSize;
- newItem.mFontFamily = item.mFontFamily;
- cacheTempList.Add(newItem);
- }
- }
- return cacheTempList;
- }
- //保存到本地缓存数据
- public static void SavePresetFontList(List<PresetFontItem> list)
- {
- if (list == null) return;
- if(Settings.Default.PresetFontList == null)
- Settings.Default.PresetFontList = new PresetFontList();
- bool isCanSave = false;
- List<PresetFontItem> TempLists = new List<PresetFontItem>();
- foreach (var item in list)
- {
- var cacheItem = Settings.Default.PresetFontList.FirstOrDefault(temp => temp.mTag == item.mTag);
- if (cacheItem != null)
- {
- if(cacheItem.mFontFamily != item.mFontFamily ||
- cacheItem.mFontSize != item.mFontSize ||
- cacheItem.mFontStyle != item.mFontStyle ||
- cacheItem.mFontWeight != item.mFontWeight
- )
- {
- isCanSave = true;
-
- }
- break;
- }
- else
- {
- TempLists.Add(item);
- }
- }
- foreach(var itemTemp in TempLists)
- {
- Settings.Default.PresetFontList.Add(itemTemp);
- }
- if (isCanSave)
- Settings.Default.Save();
- }
- public static void BackDefaultPresetFontStyle(string tag)
- {
- bool isCanSave = false;
- var list = GetPresetFontStyle();
- var itemDefault = list.FirstOrDefault(temp => temp.mTag == tag);
- if (Settings.Default.PresetFontList == null)
- Settings.Default.PresetFontList = new PresetFontList();
- if(Settings.Default.PresetFontList.Count == 0)
- {
- Settings.Default.PresetFontList.Add(itemDefault);
- isCanSave = true;
- }
- else
- {
- foreach (var item in Settings.Default.PresetFontList)
- {
- if (item.mTag == itemDefault.mTag)
- {
- item.mTagContent = itemDefault.mTagContent;
- item.mFontFamily = itemDefault.mFontFamily;
- item.mFontWeight = itemDefault.mFontWeight;
- item.mFontStyle = itemDefault.mFontStyle;
- item.mFontSize = itemDefault.mFontSize;
- isCanSave = true;
- break;
- }
- }
- }
- if (isCanSave == true)
- Settings.Default.Save();
- }
- //获取拟定的预设样式
- public static List<PresetFontItem> GetPresetFontStyle()
- {
- List<PresetFontItem> fontStyleList = new List<PresetFontItem>();
- PresetFontItem custom = new PresetFontItem();
- custom.mTag = "custom";
- custom.mTagContent = "自定义";
- custom.mFontSize = 24;
- custom.mFontFamily = new FontFamily("Helvatica");
- custom.mFontStyle = FontStyles.Normal;
- custom.mFontWeight = FontWeights.Normal;
- PresetFontItem h1 = new PresetFontItem();
- h1.mTag = "H1";
- h1.mTagContent = "H1大标题";
- h1.mFontSize = 36;
- h1.mFontFamily = new FontFamily("Helvatica");
- h1.mFontStyle = FontStyles.Normal;
- h1.mFontWeight = FontWeights.Normal;
- PresetFontItem h2 = new PresetFontItem();
- h2.mTag = "H2";
- h2.mTagContent = "h2(标准)";
- h2.mFontSize = 24;
- h2.mFontFamily = new FontFamily("Helvatica");
- h2.mFontStyle = FontStyles.Normal;
- h2.mFontWeight = FontWeights.Bold;
- PresetFontItem h3 = new PresetFontItem();
- h3.mTag = "H3";
- h3.mTagContent = "H3小标题";
- h3.mFontSize = 18;
- h3.mFontFamily = new FontFamily("Helvatica");
- h3.mFontStyle = FontStyles.Normal;
- h3.mFontWeight = FontWeights.Bold;
- PresetFontItem b1 = new PresetFontItem();
- b1.mTag = "B1";
- b1.mTagContent = "B1标题";
- b1.mFontSize = 14;
- b1.mFontFamily = new FontFamily("Helvatica");
- b1.mFontStyle = FontStyles.Normal;
- b1.mFontWeight = FontWeights.Normal;
- PresetFontItem b2 = new PresetFontItem();
- b2.mTag = "B2";
- b2.mTagContent = "B2标题";
- b2.mFontSize = 12;
- b2.mFontFamily = new FontFamily("Helvatica");
- b2.mFontStyle = FontStyles.Normal;
- b2.mFontWeight = FontWeights.Normal;
- PresetFontItem b3 = new PresetFontItem();
- b3.mTag = "B3";
- b3.mTagContent = "B3标题";
- b3.mFontSize = 11;
- b3.mFontFamily = new FontFamily("Helvatica");
- b3.mFontStyle = FontStyles.Normal;
- b3.mFontWeight = FontWeights.Normal;
- fontStyleList.Add(custom);
- fontStyleList.Add(h1);
- fontStyleList.Add(h2);
- fontStyleList.Add(h3);
- fontStyleList.Add(b1);
- fontStyleList.Add(b2);
- fontStyleList.Add(b3);
- return fontStyleList;
- }
- public static List<ComboDataItem> GetFontStyle()
- {
- var FontStyleItems = new List<ComboDataItem>();
- ComboDataItem item = new ComboDataItem("Regular", "Regular");
- FontStyleItems.Add(item);
- item = new ComboDataItem("Bold", "Bold");
- FontStyleItems.Add(item);
- item = new ComboDataItem("Italic", "Italic");
- FontStyleItems.Add(item);
- item = new ComboDataItem("Bold Italic", "Bold Italic");
- FontStyleItems.Add(item);
- return FontStyleItems;
- }
- public static List<ComboDataItem> GetFamily()
- {
- var FontFamilyItems = new List<ComboDataItem>();
- ComboDataItem item = new ComboDataItem("Courier", "Courier New");
- FontFamilyItems.Add(item);
- item = new ComboDataItem("Arial", "Helvetica");
- FontFamilyItems.Add(item);
- item = new ComboDataItem(/*"Times-Roman"*/"Times", "Times New Roman");
- FontFamilyItems.Add(item);
- return FontFamilyItems;
- }
- public static List<ComboDataItem> GetDateFormats()
- {
- var dateFormatItems = new List<ComboDataItem>();
- foreach(var itemFormat in GetTimesFormats())
- {
- ComboDataItem item = new ComboDataItem(itemFormat, "format");
- dateFormatItems.Add(item);
- }
- return dateFormatItems;
- }
- private static List<string> GetTimesFormats()
- {
- List<string> TimesItems = new List<string>();
- TimesItems.Add("yyyy年M月d日");
- TimesItems.Add("M/d");
- TimesItems.Add("M/d/yy");
- TimesItems.Add("M/d/yyyy");
- TimesItems.Add("MM/dd/yy");
- TimesItems.Add("MM/dd/yyyy");
- TimesItems.Add("d/M/yy");
- TimesItems.Add("d/M/yyyy");
- TimesItems.Add("dd/MM/yy");
- TimesItems.Add("dd/MM/yyyy");
- TimesItems.Add("MM/yy");
- TimesItems.Add("MM/yyyy");
- TimesItems.Add("M.d.yy");
- TimesItems.Add("M.d.yyyy");
- TimesItems.Add("MM.dd.yy");
- TimesItems.Add("MM.dd.yyyy");
- TimesItems.Add("MM.yy");
- TimesItems.Add("MM.yyyy");
- TimesItems.Add("d.M.yy");
- TimesItems.Add("d.M.yyyy");
- TimesItems.Add("dd.MM.yy");
- TimesItems.Add("dd.MM.yyyy");
- TimesItems.Add("yy-MM-dd");
- TimesItems.Add("yyyy-MM-dd");
- return TimesItems;
- }
- }
-
- }
|