Пример #1
0
        public MainWindow()
        {
            InitializeComponent();

            var version = GetType().Assembly.GetName().Version.ToString(3);

            Title                     = $"WPF PDFium Viewer Demo v{version}";
            CurrentProcess            = Process.GetCurrentProcess();
            Cts                       = new CancellationTokenSource();
            DataContext               = this;
            Renderer.PropertyChanged += delegate
            {
                OnPropertyChanged(nameof(Page));
                OnPropertyChanged(nameof(ZoomPercent));
            };

            MemoryChecker          = new System.Windows.Threading.DispatcherTimer();
            MemoryChecker.Tick    += OnMemoryChecker;
            MemoryChecker.Interval = new TimeSpan(0, 0, 1);
            MemoryChecker.Start();

            SearchManager = new PdfSearchManager(Renderer);
            MatchCaseCheckBox.IsChecked           = SearchManager.MatchCase;
            WholeWordOnlyCheckBox.IsChecked       = SearchManager.MatchWholeWord;
            HighlightAllMatchesCheckBox.IsChecked = SearchManager.HighlightAllMatches;
        }
Пример #2
0
        public SearchForm(PdfRenderer renderer)
        {
            if (renderer == null)
            {
                throw new ArgumentNullException(nameof(renderer));
            }

            InitializeComponent();

            _searchManager = new PdfSearchManager(renderer);

            _matchCase.Checked      = _searchManager.MatchCase;
            _matchWholeWord.Checked = _searchManager.MatchWholeWord;
            _highlightAll.Checked   = _searchManager.HighlightAllMatches;
        }
Пример #3
0
        public bool Search(string text, bool matchCase = false, bool matchWholeWord = false, bool highlight = false)
        {
            Cursor.Current = Cursors.WaitCursor;

            if (_searchManager == null)
            {
                _searchManager = new PdfSearchManager(pdfViewer.Renderer);
            }
            _searchManager.MatchCase           = matchCase;
            _searchManager.MatchWholeWord      = matchWholeWord;
            _searchManager.HighlightAllMatches = highlight;
            bool result = _searchManager.Search(text);

            Cursor.Current = Cursors.Default;

            return(result);
        }