|
@@ -340,31 +340,29 @@ namespace PDF_Master.ViewModels.Tools
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private async void CropCurrentPageWM()
|
|
|
+ private void CropCurrentPageWM()
|
|
|
{
|
|
|
viewContentViewModel.IsLoading = Visibility.Visible;
|
|
|
- await WaitCropCurrentPageWM();
|
|
|
+ WaitCropCurrentPageWM();
|
|
|
viewContentViewModel.IsLoading = Visibility.Collapsed;
|
|
|
}
|
|
|
- private async void CropAllPagesWM()
|
|
|
+ private void CropAllPagesWM()
|
|
|
{
|
|
|
viewContentViewModel.IsLoading = Visibility.Visible;
|
|
|
- await WaitCropAllPagesWM();
|
|
|
+ WaitCropAllPagesWM();
|
|
|
viewContentViewModel.IsLoading = Visibility.Collapsed;
|
|
|
|
|
|
//PDFViewer.UndoManager.AddHistory();
|
|
|
}
|
|
|
|
|
|
- private async Task WaitCropCurrentPageWM()
|
|
|
+ private void WaitCropCurrentPageWM()
|
|
|
{
|
|
|
|
|
|
if (!viewContentViewModel.IAPBeforeFunction())
|
|
|
{
|
|
|
return;
|
|
|
}
|
|
|
-
|
|
|
- await Task.Run(() =>
|
|
|
- {
|
|
|
+ App.Current.Dispatcher.Invoke(new Action(() => {
|
|
|
if (PDFViewer.CurrentIndex >= 0)
|
|
|
{
|
|
|
UndoManager.cropPageList.Add(PDFViewer.CurrentIndex);
|
|
@@ -374,20 +372,33 @@ namespace PDF_Master.ViewModels.Tools
|
|
|
PDFViewer?.SetCropMode(true, UndoManager.cropPageList);
|
|
|
PDFViewer.UndoManager.AddHistory(UndoManager);
|
|
|
PDFViewer.UndoManager.CanSave = true;
|
|
|
- });
|
|
|
+ }));
|
|
|
+
|
|
|
+ //5.22 SDK更新后剪切线程异常
|
|
|
+ // await Task.Run(() =>
|
|
|
+ //{
|
|
|
+ // if (PDFViewer.CurrentIndex >= 0)
|
|
|
+ // {
|
|
|
+ // UndoManager.cropPageList.Add(PDFViewer.CurrentIndex);
|
|
|
+ // }
|
|
|
+ // UndoManager.ADDCropCurrentPageWM();
|
|
|
+ // //此法不会直接保存,只是设置是否被裁减(只对pdfview裁剪,不是真正的裁剪),需要保存后调用PdfViewer?.CropPage进行真正裁剪
|
|
|
+ // PDFViewer?.SetCropMode(true, UndoManager.cropPageList);
|
|
|
+ // PDFViewer.UndoManager.AddHistory(UndoManager);
|
|
|
+ // PDFViewer.UndoManager.CanSave = true;
|
|
|
+ //});
|
|
|
|
|
|
}
|
|
|
|
|
|
- private async Task WaitCropAllPagesWM()
|
|
|
+ private void WaitCropAllPagesWM()
|
|
|
{
|
|
|
|
|
|
if (!viewContentViewModel.IAPBeforeFunction())
|
|
|
{
|
|
|
return;
|
|
|
}
|
|
|
+ App.Current.Dispatcher.Invoke(new Action(() => {
|
|
|
|
|
|
- await Task.Run(() =>
|
|
|
- {
|
|
|
List<int> cropPagesList = new List<int>();
|
|
|
for (int i = 0; i < PDFViewer.Document.PageCount; i++)
|
|
|
{
|
|
@@ -400,7 +411,24 @@ namespace PDF_Master.ViewModels.Tools
|
|
|
PDFViewer?.SetCropMode(true, UndoManager.cropPageList);
|
|
|
PDFViewer.UndoManager.AddHistory(UndoManager);
|
|
|
PDFViewer.UndoManager.CanSave = true;
|
|
|
- });
|
|
|
+
|
|
|
+ }));
|
|
|
+ //5.22 SDK更新后剪切线程异常
|
|
|
+ // await Task.Run(() =>
|
|
|
+ //{
|
|
|
+ //List<int> cropPagesList = new List<int>();
|
|
|
+ //for (int i = 0; i < PDFViewer.Document.PageCount; i++)
|
|
|
+ //{
|
|
|
+ // cropPagesList.Add(i);
|
|
|
+ //}
|
|
|
+
|
|
|
+ //UndoManager.cropPageList.AddRange(cropPagesList);
|
|
|
+ //UndoManager.ADDCropAllPagesWM();
|
|
|
+ ////此法不会直接保存,只是设置是否被裁减(只对pdfview裁剪,不是真正的裁剪),需要保存后调用PdfViewer?.CropPage进行真正裁剪
|
|
|
+ //PDFViewer?.SetCropMode(true, UndoManager.cropPageList);
|
|
|
+ //PDFViewer.UndoManager.AddHistory(UndoManager);
|
|
|
+ //PDFViewer.UndoManager.CanSave = true;
|
|
|
+ //});
|
|
|
}
|
|
|
|
|
|
|