VintaSoft Imaging .NET SDK 15.1: Документация для .NET разработчика
Vintasoft.Imaging.Text Namespace / TextRegion Class / GetSubregion Methods / GetSubregion(RectangleF,TextSelectionMode) Method
Синтаксис Example Требования Смотрите также
В этом разделе
GetSubregion(RectangleF,TextSelectionMode) Метод (TextRegion)
В этом разделе
Возвращает субрегион этой текстовой области.
Синтаксис
'Declaration

Public Overloads Function GetSubregion( _
ByVal rect
Расположение и размер субрегиона.
As System.Drawing.RectangleF, _
ByVal selectionMode
Режим выбора субрегиона.
As TextSelectionMode _
) As TextRegion

Parameters

rect
Расположение и размер субрегиона.
selectionMode
Режим выбора субрегиона.

Return Value

Подрегион этой текстовой области.
Пример

Вот C#/VB.NET код, который демонстрирует, как извлечь текст, расположенный в указанном прямоугольнике на PDF странице.


''' <summary>
''' Extracts text that is located in specified rectangle on PDF page.
''' </summary>
''' <param name="image">The image.</param>
''' <param name="rect">The rectange, in image space.</param>
Public Shared Function ExtractText(image As Vintasoft.Imaging.VintasoftImage, rect As System.Drawing.RectangleF) As String
    ' get text region of image
    Dim textRegion As Vintasoft.Imaging.Text.TextRegion = image.Metadata.TextRegion
    If textRegion Is Nothing Then
        Return ""
    End If

    ' get transform from image to Text space
    Dim fromImageToTextSpaceTransform As Vintasoft.Imaging.AffineMatrix = image.Metadata.TextRegion.GetTransformFromImageToTextSpace(image.Resolution)

    ' transform rect to TextRegion space
    rect = Vintasoft.Imaging.Utils.GraphicsUtils.TransformRect(rect, fromImageToTextSpaceTransform)

    ' get text sub region for specified rect
    textRegion = textRegion.GetSubregion(rect, Vintasoft.Imaging.Text.TextSelectionMode.Rectangle)

    ' return text
    Return textRegion.TextContent
End Function


/// <summary>
/// Extracts text that is located in specified rectangle on PDF page.
/// </summary>
/// <param name="image">The image.</param>
/// <param name="rect">The rectange, in image space.</param>
public static string ExtractText(
    Vintasoft.Imaging.VintasoftImage image,
    System.Drawing.RectangleF rect)
{
    // get text region of image
    Vintasoft.Imaging.Text.TextRegion textRegion = image.Metadata.TextRegion;
    if (textRegion == null)
        return "";

    // get transform from image to Text space
    Vintasoft.Imaging.AffineMatrix fromImageToTextSpaceTransform = image.Metadata.TextRegion.GetTransformFromImageToTextSpace(image.Resolution);

    // transform rect to TextRegion space
    rect = Vintasoft.Imaging.Utils.GraphicsUtils.TransformRect(rect, fromImageToTextSpaceTransform);

    // get text sub region for specified rect
    textRegion = textRegion.GetSubregion(rect, Vintasoft.Imaging.Text.TextSelectionMode.Rectangle);

    // return text
    return textRegion.TextContent;
}

Требования

Целевые платформы: .NET 10; .NET 9; .NET 8; .NET 7; .NET 6; .NET Framework 4.8, 4.7, 4.6, 4.5, 4.0, 3.5

Смотрите также