using ComPDFKitViewer; using ComPDFKitViewer.AnnotEvent; using ComPDFKitViewer.PdfViewer; using Microsoft.Win32; using PDF_Master.CustomControl.CompositeControl; using PDF_Master.Helper; using PDF_Master.Model; using PDF_Master.Model.AnnotPanel; using PDF_Master.Model.PropertyPanel.AnnotPanel; using PDF_Master.ViewModels.Tools.AnnotManager; using PDFSettings; using Prism.Commands; using Prism.Mvvm; using Prism.Regions; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Input; using System.Windows.Media; namespace PDF_Master.ViewModels.PropertyPanel.PDFEdit { public class TextEditPropertyViewModel : PDFEditVM, INavigationAware { #region 属性 public TextEditPropertyViewModel() { InitVariable(); InitCommand(); } private void InitVariable() { InitBaseVariable(); } private bool isSelectedEmpty; public bool IsSelectedEmpty { get { return isSelectedEmpty; } set { SetProperty(ref isSelectedEmpty, value); } } private string title; public string Title { get { return title; } set { SetProperty(ref title, value); } } private FontBoardVm _fontVm = new FontBoardVm(true); public FontBoardVm FontVm { get { return _fontVm; } set { SetProperty(ref _fontVm, value); } } private ComPDFKit.PDFPage.Edit.TextAlignType _textAlign; public ComPDFKit.PDFPage.Edit.TextAlignType TextAlign { get { return _textAlign; } set { _textAlign = value; } } #endregion #region Command public DelegateCommand AddTextCommand { get; set; } public DelegateCommand AddImgCommand { get; set; } public DelegateCommand SelectedColorCommand { get; set; } public DelegateCommand SelectedFontStyleCommand { get; set; } public DelegateCommand FontSizeChangedCommand { get; set; } public DelegateCommand TextAlignCheckedCommand { get; set; } //进入属性面板编辑 public DelegateCommand EditTextModeCommand { get; set; } public DelegateCommand FontFamilyChangedCommand { get; set; } public DelegateCommand CustomFontStyleCommand { get; set; } public DelegateCommand FontStyleWeightChangedCommand { get; set; } public DelegateCommand SelectedPresetFontCommand { get; set; } //重定义 public DelegateCommand ReDefineFontStyleCommand { get; set; } public DelegateCommand RestoreDefaultStyleCommand { get; set; } public DelegateCommand LayoutAlignCheckedCommand { get; set; } #endregion #region Command初始化 private void InitCommand() { //预设文本样式 SelectedPresetFontCommand = new DelegateCommand(SelectedPresetFont); //字体 FontFamilyChangedCommand = new DelegateCommand(FontFamilyChanged); //文本字重、字体 FontStyleWeightChangedCommand = new DelegateCommand(FontStyleWeightChanged); //添加文本 AddTextCommand = new DelegateCommand(AddText); //添加图片 AddImgCommand = new DelegateCommand(AddImg); //选择颜色 SelectedColorCommand = new DelegateCommand(SelectedColor); SelectedFontStyleCommand = new DelegateCommand(SelectedFontStyle); //大小 FontSizeChangedCommand = new DelegateCommand(FontSizeChanged); //内容对齐 TextAlignCheckedCommand = new DelegateCommand(TextAlignChecked); //编辑模式 EditTextModeCommand = new DelegateCommand(EditTextMode); //自定义 CustomFontStyleCommand = new DelegateCommand(CustomFontStyle); //重新定义 ReDefineFontStyleCommand = new DelegateCommand(ReDefineFontStyle); //恢复默认 RestoreDefaultStyleCommand = new DelegateCommand(RestoreDefaultStyle); LayoutAlignCheckedCommand = new DelegateCommand(LayoutAlignChecked); } #endregion #region 文本处理 private void AddText() { PDFViewer.SetPDFEditCreateType(ComPDFKit.PDFPage.CPDFEditType.EditText); } private void AddImg() { PDFViewer.SetPDFEditCreateType(ComPDFKit.PDFPage.CPDFEditType.EditImage); } private void EditTextMode() { } /// /// 从预设样式设置文本 /// private void SelectedPresetFont() { if (CurrentPresetFont != null) { var itemComboxItem = CurrentPresetFont; var item = PresetFontList.FirstOrDefault(temp => temp.mTag == itemComboxItem.ValueStr); if (item != null) { if (item.mTag != "Custom") { GetCurrentFontSize(item.mFontSize); if (item.mFontFamily != null) { GetCurrentFontFamily(item.mFontFamily.ToString(), item.mFontFamily.ToString()); } GetFontWeights_Style(item.mFontStyle, item.mFontWeight); } } } } /// /// 自定义文字样式 /// private void CustomFontStyle() { if (CurrentPresetFont != null) { ContextMenu menu; if (CurrentPresetFont.ValueStr == "Custom") { menu = SelectAnnotContextMenu(false); } else { menu = SelectAnnotContextMenu(false); var currentItem = PresetFontList.FirstOrDefault(temp => temp.mTag == CurrentPresetFont.ValueStr); if (currentItem.mTag != "Custom") { if (FontWeightItem != currentItem.mFontWeight || FontStyleItem != currentItem.mFontStyle || CurrentFontSize.Value != currentItem.mFontSize || CurrentFontFamily.ValueStr != currentItem.mFontFamily.Source) { menu = SelectAnnotContextMenu(true); } } } if (menu != null) { menu.IsOpen = true; } } } //设置字体样式 private void FontFamilyChanged() { if (string.IsNullOrEmpty(CurrentFontFamily.ValueStr) == false) { GetCurrentFontFamily(TextEditEvent.FontName, TextEditEvent.FontName); } if (CurrentPresetFont != null) { var currentItem = PresetFontList.FirstOrDefault(temp => temp.mTag == CurrentPresetFont.ValueStr); if (currentItem.mTag != "Custom") { foreach (var item in PresetFontList) { if (item.mTag == currentItem.mTag) { if (CurrentFontFamily.ValueStr != item.mFontFamily.Source) { string txt = string.Format($" * {currentItem.mTagContent}"); if (Title == txt) { Title = ""; } Title = txt; break; } else { if (FontWeightItem == item.mFontWeight && FontStyleItem == item.mFontStyle && CurrentFontSize.Value == item.mFontSize && CurrentFontFamily.ValueStr == item.mFontFamily.Source) { string txt = currentItem.mTagContent; if (Title == txt) { Title = ""; } Title = txt; } } } } } else { //bool isExist = GetCurrentPresetFont(Annot); //if (isExist) //{ //} } } } /// /// 设置文本字重、样式 /// private void FontStyleWeightChanged() { if (CurrrentFontWeightStyle != null) { UpdateFontWeight_Style(); //Dictionary AnnotAttribDir = new Dictionary(); //AnnotAttribDir.Add(AnnotAttrib.IsItalic,FontStyleItem == FontStyles.Italic); //AnnotAttribDir.Add(AnnotAttrib.IsBold, FontWeightItem == FontWeights.Bold); //PropertyPanel.UpdateAnnotAllAttribs(AnnotAttribDir); //GetFontWeights_Style(TextEditEvent.IsItalic ? FontStyles.Italic : FontStyles.Normal, TextEditEvent.IsBold ? FontWeights.Bold : FontWeights.Normal); if (CurrentPresetFont != null) { var currentItem = PresetFontList.FirstOrDefault(temp => temp.mTag == CurrentPresetFont.ValueStr); if (currentItem.mTag != "Custom") { foreach (var item in PresetFontList) { if (item.mTag == currentItem.mTag) { if (FontWeightItem != item.mFontWeight || FontStyleItem != item.mFontStyle) { string txt = string.Format($" * {currentItem.mTagContent}"); if (Title == txt) { Title = ""; } Title = txt; break; } else { if (FontWeightItem == item.mFontWeight && FontStyleItem == item.mFontStyle && CurrentFontSize.Value == item.mFontSize && CurrentFontFamily.ValueStr == item.mFontFamily.Source) { string txt = currentItem.mTagContent; if (Title == txt) { Title = ""; } Title = txt; } } } } } else { //bool isExist = GetCurrentPresetFont(Annot); //if (isExist) //{ //} } } } } /// /// 用所选部分重新定义 /// private void ReDefineFontStyle() { var item = PresetFontList.FirstOrDefault(temp => temp.mTag == CurrentPresetFont.ValueStr); if (item == null) return; item.mFontFamily = new FontFamily(CurrentFontFamily.ValueStr); if (CurrrentFontWeightStyle.ValueStr == "Bold") { item.mFontStyle = FontStyles.Normal; item.mFontWeight = FontWeights.Bold; } else if (CurrrentFontWeightStyle.ValueStr == "Regular") { item.mFontStyle = FontStyles.Normal; item.mFontWeight = FontWeights.Normal; } else if (CurrrentFontWeightStyle.ValueStr == "Italic") { item.mFontStyle = FontStyles.Italic; item.mFontWeight = FontWeights.Normal; } else { item.mFontStyle = FontStyles.Italic; item.mFontWeight = FontWeights.Bold; } item.mFontSize = (int)CurrentFontSize.Value; CurrentPresetFont = new ComboDataItem(item.mTag, item.mTagContent); SelectedPresetFont(); } //重置定义 private void RestoreDefaultStyle() { //var item = PresetFontList.FirstOrDefault(temp => temp.mTag == CurrentPresetFont.ValueStr); var defaultlists = TextFont.GetPresetFontStyle(); if (CurrentPresetFont.ValueStr != "Custom") { var defaulItem = defaultlists.FirstOrDefault(temp => temp.mTag ==CurrentPresetFont.ValueStr); if (defaulItem != null) { var currentItem = PresetFontList.FirstOrDefault(temp => temp.mTag == CurrentPresetFont.ValueStr); if (currentItem != null) { currentItem.mTagContent = defaulItem.mTagContent; currentItem.mFontStyle = defaulItem.mFontStyle; currentItem.mFontWeight = defaulItem.mFontWeight; currentItem.mFontFamily = defaulItem.mFontFamily; currentItem.mFontSize = defaulItem.mFontSize; GetCurrentFontFamily(currentItem.mFontFamily.ToString(), currentItem.mFontFamily.ToString()); GetCurrentFontSize(currentItem.mFontSize); GetFontWeights_Style(currentItem.mFontStyle, currentItem.mFontWeight); CurrentPresetFont = new ComboDataItem(defaulItem.mTag, defaulItem.mTagContent); SelectedPresetFont(); } } } } private void LayoutAlignChecked(object obj) { if (obj != null) { if (obj != null) { switch ((string)obj) { case "AlignLeft": PDFViewer.SetPDFEditAligment(AlignModes.AlignLeft); break; case "AlignHorizonCenter": PDFViewer.SetPDFEditAligment(AlignModes.AlignHorizonCenter); break; case "AlignRight": PDFViewer.SetPDFEditAligment(AlignModes.AlignRight); break; case "DistributeHorizontal": PDFViewer.SetPDFEditAligment(AlignModes.DistributeHorizontal); break; case "AlignTop": PDFViewer.SetPDFEditAligment(AlignModes.AlignTop); break; case "AlignVerticalCenter": PDFViewer.SetPDFEditAligment(AlignModes.AlignVerticalCenter); break; case "AlignBottom": PDFViewer.SetPDFEditAligment(AlignModes.AlignBottom); break; case "DistributeVertical": PDFViewer.SetPDFEditAligment(AlignModes.DistributeVertical); break; } } } } private void TextAlignChecked(object obj) { if ((string)obj != null && TextEditEvent != null) { switch ((string)obj) { case "AlignLeft": TextEditEvent.TextAlign = ComPDFKit.PDFPage.Edit.TextAlignType.AlignLeft; break; case "AlignCenter": TextEditEvent.TextAlign = ComPDFKit.PDFPage.Edit.TextAlignType.AlignMiddle; break; case "AlignRight": TextEditEvent.TextAlign = ComPDFKit.PDFPage.Edit.TextAlignType.AlignRight; break; case "Align": TextEditEvent.TextAlign = ComPDFKit.PDFPage.Edit.TextAlignType.AlignNone; break; } TextAlign = TextEditEvent.TextAlign; TextEditEvent.UpdatePDFEditByEventArgs(); } } private void SelectedColor(object obj) { if (obj != null) { var colorValue = (Color)obj; if (colorValue != null) { SelectColor = new SolidColorBrush(colorValue); } } } private void SelectedFontStyle(object obj) { if (obj != null && (PresetFontItem)obj != null) { var item = (PresetFontItem)obj; } } private void FontSizeChanged(object obj) { if (CurrentFontSize != null) { GetCurrentFontSize((int)CurrentFontSize.Value); //PropertyPanel.UpdateAnnotAAttrib(AnnotAttrib.FontSize,CurrentFontSize.Value); } if (CurrentPresetFont != null) { var currentItem = PresetFontList.FirstOrDefault(temp => temp.mTag == CurrentPresetFont.ValueStr); if (currentItem.mTag != "Custom") { foreach (var item in PresetFontList) { if (item.mTag == currentItem.mTag) { if (CurrentFontSize.Value != item.mFontSize) { string txt = string.Format($" * {currentItem.mTagContent}"); if (Title == txt) { Title = ""; } Title = txt; break; } else { if (FontWeightItem == item.mFontWeight && FontStyleItem == item.mFontStyle && CurrentFontSize.Value == item.mFontSize && CurrentFontFamily.ValueStr == item.mFontFamily.Source) { string txt = currentItem.mTagContent; if (Title == txt) { Title = ""; } Title = txt; } } } } } else { //bool isExist = GetCurrentPresetFont(Annot); //if (isExist) //{ //} } } //if (obj != null) //{ // var item = (ComboBoxItem)obj; // var content = (string)item.Content; // if (content != null) // { // var intData = int.Parse(content); // //TextFontSize = intData; // } //} } #endregion #region 布局处理 private void ImgAlignChecked(object obj) { if (obj != null) { switch ((string)obj) { case "AlignLeft": PDFViewer.SetPDFEditAligment(AlignModes.AlignLeft); break; case "AlignHorizonCenter": PDFViewer.SetPDFEditAligment(AlignModes.AlignHorizonCenter); break; case "AlignRight": PDFViewer.SetPDFEditAligment(AlignModes.AlignRight); break; case "DistributeHorizontal": PDFViewer.SetPDFEditAligment(AlignModes.DistributeHorizontal); break; case "AlignTop": PDFViewer.SetPDFEditAligment(AlignModes.AlignTop); break; case "AlignVerticalCenter": PDFViewer.SetPDFEditAligment(AlignModes.AlignVerticalCenter); break; case "AlignBottom": PDFViewer.SetPDFEditAligment(AlignModes.AlignBottom); break; case "DistributeVertical": PDFViewer.SetPDFEditAligment(AlignModes.DistributeVertical); break; } } } private void ReLoadLayoutAlign(int count) { if (count >= 2) IsLayoutAlign = true; else IsLayoutAlign = false; if (count >= 3) IsLayoutAvgAlign = true; else IsLayoutAvgAlign = false; } #endregion #region 右键菜单 //点击空白处时 private ContextMenu EmptyStateMenu(object sender) { var popMenu = App.Current.FindResource("NoneMenu") as ContextMenu; CustomPopMenu customMenu = new CustomPopMenu(popMenu, sender); //粘贴 customMenu.SetMenuBinding(0, ApplicationCommands.Paste); //添加文本 customMenu.SetMenuBinding(1, AddTextCommand); //添加图像 customMenu.SetMenuBinding(2, AddImgCommand); return popMenu; } //选中文字的框 private ContextMenu SelectTextBorder(object sender) { var popMenu = App.Current.FindResource("SelectTextMenu") as ContextMenu; CustomPopMenu customMenu = new CustomPopMenu(popMenu, sender); //编辑 customMenu.SetMenuBinding(0, EditTextModeCommand); //复制 customMenu.SetMenuBinding(1, ApplicationCommands.Copy); //剪切 customMenu.SetMenuBinding(2, ApplicationCommands.Cut); //粘贴 customMenu.SetMenuBinding(3, ApplicationCommands.Paste); //删除 customMenu.SetMenuBinding(4, ApplicationCommands.Delete); return popMenu; } //多选文本框 private ContextMenu SelectMoreText(object sender) { var popMenu = App.Current.FindResource("SelectMoreTextMenu") as ContextMenu; CustomPopMenu customMenu = new CustomPopMenu(popMenu, sender); //复制 customMenu.SetMenuBinding(0, ApplicationCommands.Copy); //剪切 customMenu.SetMenuBinding(1, ApplicationCommands.Cut); //粘贴 customMenu.SetMenuBinding(2, ApplicationCommands.Paste); //删除 customMenu.SetMenuBinding(3, ApplicationCommands.Delete); return popMenu; } //选中文字内容 private ContextMenu SelectTextContent(object sender) { var popMenu = App.Current.FindResource("SelectContentMenu") as ContextMenu; CustomPopMenu customMenu = new CustomPopMenu(popMenu, sender); //复制 customMenu.SetMenuBinding(0, ApplicationCommands.Copy); //剪切 customMenu.SetMenuBinding(1, ApplicationCommands.Cut); //粘贴 customMenu.SetMenuBinding(2, ApplicationCommands.Paste); //粘贴并匹配样式 customMenu.SetVisibilityProperty(3, false); //删除 customMenu.SetMenuBinding(4, ApplicationCommands.Delete); //全部选定 customMenu.SetMenuBinding(5, ApplicationCommands.SelectAll); return popMenu; } //编辑中右键 private ContextMenu EditTextContent(object sender) { var popMenu = App.Current.FindResource("NoneSelectContentMenu") as ContextMenu; CustomPopMenu customMenu = new CustomPopMenu(popMenu, sender); ////复制 //customMenu.SetMenuBinding(0, ApplicationCommands.Copy); ////剪切 //customMenu.SetMenuBinding(1, ApplicationCommands.Cut); //全部选定 customMenu.SetMenuBinding(0, ApplicationCommands.SelectAll); //粘贴 customMenu.SetMenuBinding(1, ApplicationCommands.Paste); //粘贴并匹配样式 customMenu.SetVisibilityProperty(2, false); ////删除 //customMenu.SetMenuBinding(4, ApplicationCommands.Delete); return popMenu; } #endregion #region 编辑PDF内容触发的事件 /// /// 右键菜单的事件 /// private void PDFViewer_PDFEditCommandHandler(object sender, PDFEditCommand e) { if (e == null) return; switch (e.CommandType) { case CommandType.Context: // if (e.EditType == ComPDFKit.PDFPage.CPDFEditType.EditText) // { // //文字编辑 // if (e.PressOnBorder == true) // { // e.PopupMenu = SelectTextBorder(sender); // } // else if(e.PressOnSelectedText == true) // { // e.PopupMenu = SelectTextContent(sender); // } // else if(e.SelectText=="") // { // e.PopupMenu= EditTextContent(sender); // } // else // { // e.PopupMenu = SelectTextContent(sender); // } // } //else if (e.EditType == ComPDFKit.PDFPage.CPDFEditType.None) { e.PopupMenu = EmptyStateMenu(sender); } break; default: e.DoCommand(); break; } if (e.PopupMenu != null) { e.Handle = true; } } /// /// 更多菜单 /// /// /// private ContextMenu SelectAnnotContextMenu(bool isEnable) { var popMenu = App.Current.FindResource("CustomFontStyleFlyoutMenu") as ContextMenu; if (popMenu != null && popMenu.Items.Count == 2) { //用所选部分重新定义 MenuItem menuItem = popMenu.Items[0] as MenuItem; menuItem.IsEnabled = isEnable; menuItem.Command = ReDefineFontStyleCommand; //恢复默认预设样式 menuItem = popMenu.Items[1] as MenuItem; menuItem.IsEnabled = isEnable; menuItem.Command = RestoreDefaultStyleCommand; } return popMenu; } #region 全局 public event EventHandler ClearCheckedAglin; #endregion #endregion protected List TextEditEventList; public void OnNavigatedTo(NavigationContext navigationContext) { navigationContext.Parameters.TryGetValue(ParameterNames.PDFViewer, out PDFViewer); navigationContext.Parameters.TryGetValue>(ParameterNames.AnnotEvent, out TextEditEventList); if (PDFViewer != null) { if (TextEditEventList != null && TextEditEventList.Count > 0) { TextEditEvent = TextEditEventList[0]; GetPDFEdit(); if (TextEditEventList.Count > 1) IsSelectedEmpty = true; else IsSelectedEmpty = false; if (TextEditEventList.Count == 2) { IsLayoutAlign = true; IsLayoutAvgAlign = false; } else if (TextEditEventList.Count > 2) { IsLayoutAlign = true; IsLayoutAvgAlign = true; } else { IsLayoutAlign = false; IsLayoutAvgAlign = false; } } PDFViewer.PDFEditCommandHandler -= PDFViewer_PDFEditCommandHandler; PDFViewer.PDFEditCommandHandler += PDFViewer_PDFEditCommandHandler; ChangedValue -= FontMode_ChangedValue; ChangedValue += FontMode_ChangedValue; IsCanSave = true; } } private void FontMode_ChangedValue(object sender, FontSetModeType e) { if (sender != null) { switch (e) { case FontSetModeType.PresetFontStyes: if (PresetFontList != null && sender is string == true) { var item = PresetFontList.FirstOrDefault(temp => temp.mTag == (string)sender); if (item != null && TextEditEvent != null) { if (TextEditEventList.Count == 1 && IsSelectedEmpty == false) { TextEditEvent.FontName = item.mFontFamily != null ? item.mFontFamily.Source : string.Empty; TextEditEvent.FontSize = item.mFontSize; TextEditEvent.IsBold = item.mFontWeight == FontWeights.Bold; TextEditEvent.IsItalic = item.mFontStyle == FontStyles.Italic; TextEditEvent.UpdatePDFEditByEventArgs(); } else { foreach (var itemlist in TextEditEventList) { itemlist.FontName = item.mFontFamily != null ? item.mFontFamily.Source : string.Empty; itemlist.FontSize = item.mFontSize; itemlist.IsBold = item.mFontWeight == FontWeights.Bold; itemlist.IsItalic = item.mFontStyle == FontStyles.Italic; itemlist.UpdatePDFEditByEventArgs(); } } } } break; case FontSetModeType.FontFamilys: if (sender is string == true) { TextEditEvent.FontName = (string)sender; TextEditEvent.UpdatePDFEditByEventArgs(); } break; case FontSetModeType.FontSizes: if (sender is double == true && (double)sender > 0 && TextEditEvent.FontSize > 0) { TextEditEvent.FontSize = (double)sender; TextEditEvent.UpdatePDFEditByEventArgs(); } break; case FontSetModeType.FontWeight_Style: //UpdateFontWeight_Style(); TextEditEvent.IsBold = FontWeightItem == FontWeights.Bold; TextEditEvent.IsItalic = FontStyleItem == FontStyles.Italic; TextEditEvent.UpdatePDFEditByEventArgs(); break; case FontSetModeType.FontColor: if (sender is Color == true) { var setColor = (Color)sender; var eventColor = TextEditEvent.FontColor; bool isok = eventColor.A != setColor.A || eventColor.B != setColor.B || eventColor.G != setColor.G || eventColor.R != setColor.R; if (isok) { TextEditEvent.FontColor = setColor; TextEditEvent.UpdatePDFEditByEventArgs(); } } break; case FontSetModeType.TextAlignment: break; } } } private void GetPDFEdit() { SelectColor = new SolidColorBrush(TextEditEvent.FontColor); CurrentFontSize =new ComboDataItem(TextEditEvent.FontSize); //CurrentFontFamily = new ComboDataItem(TextEditEvent.FontName, TextEditEvent.FontName); FontStyleItem = TextEditEvent.IsItalic ? FontStyles.Italic : FontStyles.Normal; FontWeightItem = TextEditEvent.IsBold ? FontWeights.Bold : FontWeights.Normal; bool isExist = false; if (TextEditEvent.FontSize == 0) { isExist = false; } else { isExist = true; } if (isExist == false) { FontVm.CurrentPresetFont = new ComboDataItem("Custom", "Custom"); CurrentPresetFont = new ComboDataItem("Custom", "Custom"); GetCurrentFontSize((int)TextEditEvent.FontSize); GetCurrentFontFamily(TextEditEvent.FontName, TextEditEvent.FontName); GetFontWeights_Style(TextEditEvent.IsItalic ? FontStyles.Italic : FontStyles.Normal, TextEditEvent.IsBold ? FontWeights.Bold : FontWeights.Normal); } else { if (CurrentPresetFont != null) { var itemComboxItem = CurrentPresetFont; var item = PresetFontList.FirstOrDefault(temp => temp.mTag == itemComboxItem.ValueStr); if (item != null) { if (item.mTag != "Custom") { CurrentFontSize = new ComboDataItem(TextEditEvent.FontSize); GetCurrentFontSize(item.mFontSize); if (item.mFontFamily != null) { CurrentFontFamily = new ComboDataItem(TextEditEvent.FontName, TextEditEvent.FontName); GetCurrentFontFamily(item.mFontFamily.ToString(), item.mFontFamily.ToString()); } FontStyleItem = item.mFontStyle; FontWeightItem = item.mFontWeight; GetFontWeights_Style(TextEditEvent.IsItalic ? FontStyles.Italic : FontStyles.Normal, TextEditEvent.IsBold ? FontWeights.Bold : FontWeights.Normal); } TextAlign = TextEditEvent.TextAlign; } } } //if (TextEditEvent != null && TextEditEventList.Count == 1) //{ // SelectColor = new SolidColorBrush(TextEditEvent.FontColor); // GetCurrentFontSize((int)TextEditEvent.FontSize); // if (TextEditEvent.FontName != null) // { // GetCurrentFontFamily(TextEditEvent.FontName, TextEditEvent.FontName); // } // GetFontWeights_Style(TextEditEvent.IsItalic ? FontStyles.Italic : FontStyles.Normal, TextEditEvent.IsBold ? FontWeights.Bold : FontWeights.Normal); // TextAlign = TextEditEvent.TextAlign; //} } public bool IsNavigationTarget(NavigationContext navigationContext) { return true; } public void OnNavigatedFrom(NavigationContext navigationContext) { IsCanSave = false; TextEditEvent = null; IsSelectedEmpty = false; ClearCheckedAglin?.Invoke(null, null); PDFViewer.PDFEditCommandHandler -= PDFViewer_PDFEditCommandHandler; ChangedValue -= FontMode_ChangedValue; } } }