123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- using ComPDFKit.PDFDocument;
- using ComPDFKitViewer;
- using ComPDFKitViewer.PdfViewer;
- using PDF_Office.Helper;
- using PDF_Office.Model;
- using PDF_Office.Model.EditTools.Background;
- using Prism.Mvvm;
- using Prism.Regions;
- using System;
- using System.Collections.Generic;
- using System.Drawing.Printing;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Media.Imaging;
- namespace PDF_Office.ViewModels.EditTools.Redaction
- {
- public class RedactionDocumentContentViewModel : BindableBase, INavigationAware
- {
- private CPDFViewer pdfViewer;
- public IRegionManager regionManager;
- public CPDFViewer PDFViewer;
- public CPDFDocument Document;
- public string ViewerRegionName { get; set; }
- private int _currentPageIndex;
- public int CurrentPageIndex
- {
- get { return _currentPageIndex; }
- set
- {
- SetProperty(ref _currentPageIndex, PDFViewer.CurrentIndex);
- }
- }
- private int _pageSize;
- public int PageRangeNumber
- {
- get { return _pageSize; }
- set { SetProperty(ref _pageSize, value); }
- }
- public RedactionDocumentContentViewModel(IRegionManager regionManager)
- {
- this.regionManager = regionManager;
- PageRangeNumber = PDFViewer.Document.PageCount;
- ViewerRegionName = RegionNames.BackgroundViewerRegionName;
- }
- private void CurrentViewer_CustomDrawHandler(object sender, CustomDrawData e)
- {
- }
- private void UndoManager_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
- {
- }
- public bool IsNavigationTarget(NavigationContext navigationContext)
- {
- return true;
- }
- public void OnNavigatedFrom(NavigationContext navigationContext)
- {
- }
- public void OnNavigatedTo(NavigationContext navigationContext)
- {
- navigationContext.Parameters.TryGetValue<CPDFViewer>(ParameterNames.PDFViewer, out pdfViewer);
- if (pdfViewer != null)
- {
- if (!regionManager.Regions[ViewerRegionName].Views.Contains(PDFViewer))
- {
- PDFViewer = new CPDFViewer();
- PDFViewer.InitDocument(pdfViewer.Document);
- Document = PDFViewer.Document;
- PDFViewer.CustomDrawHandler += CurrentViewer_CustomDrawHandler;
- PDFViewer.UndoManager.PropertyChanged += UndoManager_PropertyChanged;
- regionManager.AddToRegion(ViewerRegionName, PDFViewer);
- PDFViewer.SetAnnotInteraction(!PDFViewer.GetAnnotInteraction());
- PDFViewer.Load();
- PDFViewer.ChangeViewMode(ViewMode.SingleContinuous);
- PDFViewer.SetMouseMode(MouseModes.AnnotCreate);
- }
- }
- }
- }
- }
|