Checks whether the specified page or all pages in the document have text that is currently selected.
public bool HasSelectedText(
int pageNumber
)
pageNumber
Page number to use. If this value is 0, then the text of all pages in the document will be used.
true if the page or document specified has text that is currently selected; otherwise, false.
If the text of the specified page(s) was not previously obtained, then this method will return false.
using Leadtools;
using Leadtools.Controls;
using Leadtools.Document;
using Leadtools.Document.Viewer;
using Leadtools.Codecs;
using Leadtools.Caching;
using Leadtools.Annotations.Engine;
using Leadtools.Ocr;
var text = _documentViewer.Text;
// First check if we have text for this page
var pageNumber = _documentViewer.CurrentPageNumber;
if (!text.HasDocumentPageText(pageNumber))
{
// Get the text
text.GetDocumentPageText(pageNumber);
// Show it
var value = text.ExportText(pageNumber);
Console.WriteLine(value);
}
// Get the current document
var document = _documentViewer.Document;
// Get the page and the current view item
var page = document.Pages[pageNumber - 1];
// Create a rectangle that is the first half of the page
var bounds = LeadRectD.Create(0, 0, page.Size.Width, page.Size.Height / 2);
// SelectText requires the rectangle to be in control pixel coordinates, so convert. First to pixels ...
bounds = document.RectToPixels(bounds).ToLeadRectD();
// And then using the image viewer in the view to control. The item is the one at page number - 1
var imageViewer = _documentViewer.View.ImageViewer;
bounds = imageViewer.ConvertRect(imageViewer.Items[pageNumber - 1], ImageViewerCoordinateType.Image, ImageViewerCoordinateType.Control, bounds);
// Select it, all lines
text.SelectText(bounds.ToLeadRect(), DocumentViewerSelectTextMode.Line);
// Now, check if we have any text selected
if (text.HasSelectedText(pageNumber))
{
// yes, show it
var value = text.GetSelectedText(pageNumber);
Console.WriteLine(value);
}