Класс WpfTextSelectionTool
Визуальный инструмент, позволяющий выделять и искать текст на PDF странице или DOCX в просмотрщике изображений.
Вот C#/VB.NET код, который демонстрирует, как искать текст в документе, загруженном в просмотрщик изображений WPF.
Public Partial Class TextSelectionWindow
Inherits System.Windows.Window
' ...
Private _imageViewer As Vintasoft.Imaging.Wpf.UI.WpfImageViewer = Nothing
Private _textSelectionTool As Vintasoft.Imaging.Wpf.UI.VisualTools.WpfTextSelectionTool = Nothing
Public Sub New()
' ...
' create the text selection tool
_textSelectionTool = New Vintasoft.Imaging.Wpf.UI.VisualTools.WpfTextSelectionTool(New System.Windows.Media.SolidColorBrush(System.Windows.Media.Color.FromArgb(56, 0, 0, 255)))
' subscribe to the text selection tool events
AddHandler _textSelectionTool.SelectionChanged, New System.EventHandler(AddressOf _textSelectionTool_SelectionChanged)
' set the text selection tool as the current tool in image viewer
_imageViewer.VisualTool = _textSelectionTool
End Sub
' Handles the TextSelectionTool.Selection event.
Private Sub _textSelectionTool_SelectionChanged(sender As Object, e As System.EventArgs)
' if text selection is not empty
If _textSelectionTool.SelectedRegion IsNot Nothing AndAlso Not _textSelectionTool.SelectedRegion.IsEmpty Then
' show the text selection content
System.Windows.MessageBox.Show(_textSelectionTool.SelectedRegion.TextContent)
End If
End Sub
End Class
public partial class TextSelectionWindow : System.Windows.Window
{
// ...
Vintasoft.Imaging.Wpf.UI.WpfImageViewer _imageViewer = null;
Vintasoft.Imaging.Wpf.UI.VisualTools.WpfTextSelectionTool _textSelectionTool = null;
public TextSelectionWindow()
{
// ...
// create the text selection tool
_textSelectionTool = new Vintasoft.Imaging.Wpf.UI.VisualTools.WpfTextSelectionTool(
new System.Windows.Media.SolidColorBrush(System.Windows.Media.Color.FromArgb(56, 0, 0, 255)));
// subscribe to the text selection tool events
_textSelectionTool.SelectionChanged += new System.EventHandler(_textSelectionTool_SelectionChanged);
// set the text selection tool as the current tool in image viewer
_imageViewer.VisualTool = _textSelectionTool;
}
// Handles the TextSelectionTool.Selection event.
private void _textSelectionTool_SelectionChanged(object sender, System.EventArgs e)
{
// if text selection is not empty
if (_textSelectionTool.SelectedRegion != null && !_textSelectionTool.SelectedRegion.IsEmpty)
// show the text selection content
System.Windows.MessageBox.Show(_textSelectionTool.SelectedRegion.TextContent);
}
}
Целевые платформы: .NET 9; .NET 8; .NET 7; .NET 6; .NET Framework 4.8, 4.7, 4.6, 4.5, 4.0, 3.5