|
@@ -23,6 +23,7 @@ using ComPDFKit.Controls.PDFControl;
|
|
|
using ComPDFKit.Controls.Properties;
|
|
|
using Color = System.Windows.Media.Color;
|
|
|
using ColorConverter = System.Windows.Media.ColorConverter;
|
|
|
+using ComboBox = System.Windows.Forms.ComboBox;
|
|
|
using Image = System.Windows.Controls.Image;
|
|
|
|
|
|
namespace ComPDFKit.Controls.Comparison
|
|
@@ -71,19 +72,19 @@ namespace ComPDFKit.Controls.Comparison
|
|
|
{
|
|
|
CPDFBlendMode.CPDFBlendModeNormal,
|
|
|
CPDFBlendMode.CPDFBlendModeMultiply,
|
|
|
- //CPDFBlendMode.CPDFBlendModeScreen,
|
|
|
- //CPDFBlendMode.CPDFBlendModeOverlay,
|
|
|
+ CPDFBlendMode.CPDFBlendModeScreen,
|
|
|
+ CPDFBlendMode.CPDFBlendModeOverlay,
|
|
|
CPDFBlendMode.CPDFBlendModeDarken,
|
|
|
- //CPDFBlendMode.CPDFBlendModeLighten,
|
|
|
- //CPDFBlendMode.CPDFBlendModeColorDodge,
|
|
|
+ CPDFBlendMode.CPDFBlendModeLighten,
|
|
|
+ CPDFBlendMode.CPDFBlendModeColorDodge,
|
|
|
CPDFBlendMode.CPDFBlendModeColorBurn,
|
|
|
CPDFBlendMode.CPDFBlendModeHardLight,
|
|
|
- //CPDFBlendMode.CPDFBlendModeSoftLight,
|
|
|
+ CPDFBlendMode.CPDFBlendModeSoftLight,
|
|
|
CPDFBlendMode.CPDFBlendModeDifference,
|
|
|
CPDFBlendMode.CPDFBlendModeExclusion,
|
|
|
- //CPDFBlendMode.CPDFBlendModeHue,
|
|
|
- //CPDFBlendMode.CPDFBlendModeSaturation,
|
|
|
- //CPDFBlendMode.CPDFBlendModeColor,
|
|
|
+ CPDFBlendMode.CPDFBlendModeHue,
|
|
|
+ CPDFBlendMode.CPDFBlendModeSaturation,
|
|
|
+ CPDFBlendMode.CPDFBlendModeColor,
|
|
|
CPDFBlendMode.CPDFBlendModeLuminosity
|
|
|
};
|
|
|
private bool IsFillWhite { get; set; } = false;
|
|
@@ -854,30 +855,32 @@ namespace ComPDFKit.Controls.Comparison
|
|
|
CPdfOverlay?.Compare();
|
|
|
CPDFDocument resultDoc = CPdfOverlay?.ComparisonDocument();
|
|
|
|
|
|
- // Dispatcher.Invoke(() =>
|
|
|
- // {
|
|
|
- // if (viewCtrl != null && viewCtrl.ParentPage != null)
|
|
|
- // {
|
|
|
- // if (viewCtrl.ParentPage.loadingConceal.Visibility == Visibility.Collapsed)
|
|
|
- // {
|
|
|
- // return;
|
|
|
- // }
|
|
|
- // viewCtrl.ParentPage.loadingConcealBar.Value = 0.6;
|
|
|
- // FileCompareGrid.Visibility = Visibility.Collapsed;
|
|
|
- // CompareOverwriteResultControl resultPage = new CompareOverwriteResultControl();
|
|
|
- // resultPage.SetCompareColor(new SolidColorBrush(NewMarkColor), new SolidColorBrush(OldMarkColor));
|
|
|
- // resultPage.PDFViewControl = viewCtrl;
|
|
|
- // resultPage.PDFViewControl.ParentPage.SetCompareModel(false);
|
|
|
- // viewCtrl.ParentPage.loadingConcealClose.Visibility = Visibility.Visible;
|
|
|
- // viewCtrl.ParentPage.loadingConceal.Visibility = Visibility.Collapsed;
|
|
|
- // resultPage.LoadComparePdf(resultDoc);
|
|
|
- // resultPage.LeftDoc = OldDocument;
|
|
|
- // resultPage.RightDoc = NewDocument;
|
|
|
- // viewCtrl.ParentPage.CompareResultGrid.Children.Clear();
|
|
|
- // viewCtrl.ParentPage.CompareResultGrid.Visibility = Visibility.Visible;
|
|
|
- // viewCtrl.ParentPage.CompareResultGrid.Children.Add(resultPage);
|
|
|
- // }
|
|
|
- // });
|
|
|
+ Dispatcher.Invoke(() =>
|
|
|
+ {
|
|
|
+ if (viewCtrl != null)
|
|
|
+ {
|
|
|
+ // if (viewCtrl.ParentPage.loadingConceal.Visibility == Visibility.Collapsed)
|
|
|
+ // {
|
|
|
+ // return;
|
|
|
+ // }
|
|
|
+ // viewCtrl.ParentPage.loadingConcealBar.Value = 0.6;
|
|
|
+ FileCompareGrid.Visibility = Visibility.Collapsed;
|
|
|
+ CompareOverwriteResultControl resultPage = new CompareOverwriteResultControl();
|
|
|
+ resultPage.SetCompareColor(new SolidColorBrush(NewMarkColor), new SolidColorBrush(OldMarkColor));
|
|
|
+ resultPage.pdfViewerCtrl = viewCtrl;
|
|
|
+ // resultPage.pdfViewerCtrl.ParentPage.SetCompareModel(false);
|
|
|
+ // viewCtrl.ParentPage.loadingConcealClose.Visibility = Visibility.Visible;
|
|
|
+ // viewCtrl.ParentPage.loadingConceal.Visibility = Visibility.Collapsed;
|
|
|
+ resultPage.LoadComparePdf(resultDoc);
|
|
|
+ resultPage.LeftDoc = OldDocument;
|
|
|
+ resultPage.RightDoc = NewDocument;
|
|
|
+ resultPage.ExitCompareEvent += (s, r) =>
|
|
|
+ {
|
|
|
+ OnCompareStatusChanged?.Invoke(this, null);
|
|
|
+ };
|
|
|
+ OnCompareStatusChanged?.Invoke(this, resultPage);
|
|
|
+ }
|
|
|
+ });
|
|
|
});
|
|
|
}
|
|
|
}
|
|
@@ -1506,5 +1509,33 @@ namespace ComPDFKit.Controls.Comparison
|
|
|
{
|
|
|
PageRangeBorder.Visibility = Visibility.Collapsed;
|
|
|
}
|
|
|
+
|
|
|
+ private void Selector_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
|
|
|
+ {
|
|
|
+ if (sender is ComboBox cmb)
|
|
|
+ {
|
|
|
+ if(cmb.SelectedIndex < 0 || cmb.SelectedIndex > 16)
|
|
|
+ {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ MixMode = (CPDFBlendMode)cmb.SelectedIndex;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private void OldOpacityControl_OnTextInput(object sender, string e)
|
|
|
+ {
|
|
|
+ if (float.TryParse(e, out float oldOpacity))
|
|
|
+ {
|
|
|
+ OldOpacity = oldOpacity / 100.0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private void NewOpacityControl_OnTextInput(object sender, string e)
|
|
|
+ {
|
|
|
+ if (float.TryParse(e, out float newOpacity))
|
|
|
+ {
|
|
|
+ NewOpacity = newOpacity / 100.0;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
}
|