USING IRONOCR

How to OCR Get Text From Screenshot in C#

Many people out there may be wondering "What is an OCR Screenshot?" Others might wonder how to convert a screenshot of any text into a digital text-editable format or to .txt, or .doc format. If you are one of these people, then worry no more because we have the perfect solutions for you.

In this article, we will discuss different tools that will allow you to perform OCR, Optical Character Recognition, on screenshots.

There are many OCR tools out there but today we will be using IronOCR to extract text from screenshots.

1. IronOCR

IronOCR is a software library for the C# and VB.NET programming languages, designed to enable developers to add OCR (Optical Character Recognition) capabilities to their applications. The library can be used to recognize text in images and convert it into machine-readable text. The library is built on the Tesseract OCR engine, which is considered one of the most accurate OCR engines available.

IronOCR can be used to read text from images in many different file formats, including PNG, JPG, TIFF, and PDF. It also provides a range of advanced features for working with text recognition, such as the ability to recognize multiple languages, as well as the ability to recognize text from images that have been rotated or skewed. Additionally, developers can use IronOCR to quickly integrate OCR functionality into their applications, as it provides a simple, easy-to-use API that can be called from C# or VB.NET code. Using IronOCR, you can choose your OCR language, and perform OCR on images, digital PDF files, and scanned PDF files.

IronOCR is considered a good option for developers who want to add OCR functionality to their applications. It's open-source, easy to use and integrate, fast, accurate, and up-to-date with the latest OCR technologies.

2. IronOCR Features

IronOCR provides a wide range of features to help developers integrate OCR functionality into their applications. Some of the key features of IronOCR include:

  1. Multi-language support: IronOCR can recognize text in over 60 languages, including English, Spanish, German, French, Italian, and Chinese.
  2. Automatic detection of text orientation: IronOCR can automatically detect the orientation of text in an image, even if the image has been rotated or skewed.
  3. Support for a wide range of image formats: IronOCR can read text from images in many different file formats, including PNG, JPG, TIFF, and PDF.
  4. Customizable recognition settings: Developers can customize the recognition settings to improve recognition accuracy for specific types of images or use cases.
  5. Ability to recognize text from scanned documents and PDFs with multiple pages.
  6. Fast recognition and high accuracy: IronOCR uses the Tesseract OCR engine, which is one of the most accurate and widely used OCR engines available.
  7. Easy-to-use API: IronOCR provides a simple, easy-to-use API that can be called from C# or VB.NET code, which makes it easy to integrate OCR functionality into any application.

Overall, IronOCR is a powerful tool that provides a wide range of features to help developers add OCR functionality to their applications.

3. Creating a New Project in Visual Studio

Open Visual Studio and go to the File menu. Select "New Project" and then select Console Application.

Enter the project name and select the path in the appropriate text box. Then, click the Create button. Select the required .NET Framework, as in the screenshot below:

How to OCR Get Text From Screenshot in C#, Figure 1: Creating a New Project in Visual Studio Creating a New Project in Visual Studio

The Visual Studio project will now generate the structure for the console application. Once finished, it will open the program.cs file, in which you can write and execute source code.

How to OCR Get Text From Screenshot in C#, Figure 2: The program.cs file, generated from Visual Studio's New Project Wizard The program.cs file, generated from Visual Studio's New Project Wizard

Now we can add the IronOCR library and test the program.

4. Install IronOCR

In Visual Studio, you can easily integrate IronOCR with your C# project.

IronOCR offers multiple processes to integrate with a C# .NET project. Here, we'll discuss one of them: installing IronOCR using the NuGet Package Manager.

In Visual Studio go to Tools > NuGet Package Manager > Package Manager Console

How to OCR Get Text From Screenshot in C#, Figure 3: The NuGet Package Manager UI The NuGet Package Manager UI

After clicking, a new console will appear at the bottom of Visual Studio's window. Type the below command in the console and press enter.

Install-Package IronOcr

IronOCR will be installed in just a few seconds.

5. Using IronOCR to Perform OCR on a Screenshot

IronOCR is a powerful OCR library that can be used to recognize text from screenshots. With IronOCR, you can take a screenshot of text, and then use the library's OCR capabilities to convert the text in the screenshot into a digital, editable format. Here's an example of how you might use IronOCR to perform OCR on a screenshot in C#. To perform screenshot OCR, just capture a screenshot and run the below code to extract the text to any output format you want.

using IronOcr;
using System;

class Program
{
    static void Main()
    {
        // Create an instance of IronTesseract, the core OCR engine
        var ocr = new IronTesseract();

        // Perform OCR on the specified image file
        var result = ocr.Read("ocr.png");

        // Output the recognized text to the console
        Console.WriteLine(result.Text);
    }
}
using IronOcr;
using System;

class Program
{
    static void Main()
    {
        // Create an instance of IronTesseract, the core OCR engine
        var ocr = new IronTesseract();

        // Perform OCR on the specified image file
        var result = ocr.Read("ocr.png");

        // Output the recognized text to the console
        Console.WriteLine(result.Text);
    }
}
Imports IronOcr
Imports System

Friend Class Program
	Shared Sub Main()
		' Create an instance of IronTesseract, the core OCR engine
		Dim ocr = New IronTesseract()

		' Perform OCR on the specified image file
		Dim result = ocr.Read("ocr.png")

		' Output the recognized text to the console
		Console.WriteLine(result.Text)
	End Sub
End Class
$vbLabelText   $csharpLabel

Input Image file

How to OCR Get Text From Screenshot in C#, Figure 4: Sample Screenshot used for input Sample Screenshot used for input

Text Output

- IRONOCR for NET
- The C# OCR Library
- OCR for C# to scan and read images & PDFs
- NET OCR library with 127+ global language packs
- Output as text, structured data, or searchable PDFs
- Supports NET 6, 5, Core, Standard, Framework

6. Using IronOCR to Perform OCR on a Specific Zone

IronOCR allows you to perform OCR on specific zones within an image. This can be useful when the image contains multiple regions of text, and you only want to recognize the text within a specific region. An example code for this is shown below.

using IronOcr;
using IronSoftware.Drawing;
using System;

class Program
{
    static void Main()
    {
        var ocrTesseract = new IronTesseract();

        using (var ocrInput = new OcrInput())
        {
            // Define the rectangle to crop the image for OCR
            var contentArea = new CropRectangle(x: 0, y: 0, width: 350, height: 150);

            // Add the image with the specified cropping area
            ocrInput.AddImage("ocr.png", contentArea);

            // Perform the OCR operation on the defined area
            var ocrResult = ocrTesseract.Read(ocrInput);

            // Output the recognized text
            Console.WriteLine(ocrResult.Text);
        }
    }
}
using IronOcr;
using IronSoftware.Drawing;
using System;

class Program
{
    static void Main()
    {
        var ocrTesseract = new IronTesseract();

        using (var ocrInput = new OcrInput())
        {
            // Define the rectangle to crop the image for OCR
            var contentArea = new CropRectangle(x: 0, y: 0, width: 350, height: 150);

            // Add the image with the specified cropping area
            ocrInput.AddImage("ocr.png", contentArea);

            // Perform the OCR operation on the defined area
            var ocrResult = ocrTesseract.Read(ocrInput);

            // Output the recognized text
            Console.WriteLine(ocrResult.Text);
        }
    }
}
Imports IronOcr
Imports IronSoftware.Drawing
Imports System

Friend Class Program
	Shared Sub Main()
		Dim ocrTesseract = New IronTesseract()

		Using ocrInput As New OcrInput()
			' Define the rectangle to crop the image for OCR
			Dim contentArea = New CropRectangle(x:= 0, y:= 0, width:= 350, height:= 150)

			' Add the image with the specified cropping area
			ocrInput.AddImage("ocr.png", contentArea)

			' Perform the OCR operation on the defined area
			Dim ocrResult = ocrTesseract.Read(ocrInput)

			' Output the recognized text
			Console.WriteLine(ocrResult.Text)
		End Using
	End Sub
End Class
$vbLabelText   $csharpLabel

Output

- IRONOCR for NET
- The C# OCR Library
- OCR for C# to scan and read images & PDFs
- NET OCR library with 127+ global language packs

7. Using IronOCR to Perform OCR on an Image

To perform OCR on an image and save the recognized text in a .txt file, you can use the following code.

using IronOcr;
using System;

class Program
{
    static void Main()
    {
        var ocr = new IronTesseract();
        using (var input = new OcrInput("ocr.png"))
        {
            // Perform OCR on the image
            var result = ocr.Read(input);

            // Save the recognized text to a .txt file
            result.SaveAsTextFile("output.txt");
        }
    }
}
using IronOcr;
using System;

class Program
{
    static void Main()
    {
        var ocr = new IronTesseract();
        using (var input = new OcrInput("ocr.png"))
        {
            // Perform OCR on the image
            var result = ocr.Read(input);

            // Save the recognized text to a .txt file
            result.SaveAsTextFile("output.txt");
        }
    }
}
Imports IronOcr
Imports System

Friend Class Program
	Shared Sub Main()
		Dim ocr = New IronTesseract()
		Using input = New OcrInput("ocr.png")
			' Perform OCR on the image
			Dim result = ocr.Read(input)

			' Save the recognized text to a .txt file
			result.SaveAsTextFile("output.txt")
		End Using
	End Sub
End Class
$vbLabelText   $csharpLabel

The contents of the output file are shown below:

How to OCR Get Text From Screenshot in C#, Figure 5: Contents of the generated output.txt file Contents of the generated output.txt file

8. Learn More

Read the Image Text Extraction tutorial for more information about how to perform OCR on images.

IronOCR is part of a suite of five .NET libraries designed to work with different types of documents. You can purchase all five libraries for the price of just two licenses.

Frequently Asked Questions

What is an OCR screenshot?

An OCR screenshot refers to an image capture of text that can be converted into a digital text-editable format using Optical Character Recognition (OCR) technology.

What is IronOCR?

IronOCR is a software library for C# and VB.NET that enables developers to integrate Optical Character Recognition (OCR) into their applications, allowing them to extract text from images in various formats.

How does IronOCR integrate with C# projects?

IronOCR can be integrated into C# projects using the NuGet Package Manager in Visual Studio, allowing developers to install and use the library to perform OCR operations in their applications.

What image formats does IronOCR support?

IronOCR supports a wide range of image formats, including PNG, JPG, TIFF, and PDF, for text recognition.

Can IronOCR recognize text in multiple languages?

Yes, IronOCR can recognize text in over 60 languages, including English, Spanish, German, French, Italian, and Chinese.

How does IronOCR handle text orientation?

IronOCR has the capability to automatically detect and correct the orientation of text in an image, even if the image is rotated or skewed.

How can IronOCR be used to perform OCR on a screenshot?

IronOCR can be used to perform OCR on a screenshot by using its library to convert the text within the screenshot into a digital, editable format, using the provided C# code examples.

What are the key features of IronOCR?

Key features of IronOCR include multi-language support, automatic text orientation detection, support for various image formats, customizable recognition settings, and a simple API for easy integration.

Is IronOCR open source?

Yes, IronOCR is open source, making it accessible and easy to use and integrate with other applications.

How can developers perform OCR on a specific zone within an image using IronOCR?

Developers can perform OCR on a specific zone within an image using IronOCR by defining a rectangular area for text recognition, allowing for targeted text extraction.

Kannaopat Udonpant
Software Engineer
Before becoming a Software Engineer, Kannapat completed a Environmental Resources PhD from Hokkaido University in Japan. While pursuing his degree, Kannapat also became a member of the Vehicle Robotics Laboratory, which is part of the Department of Bioproduction Engineering. In 2022, he leveraged his C# skills to join Iron Software's engineering team, where he focuses on IronPDF. Kannapat values his job because he learns directly from the developer who writes most of the code used in IronPDF. In addition to peer learning, Kannapat enjoys the social aspect of working at Iron Software. When he's not writing code or documentation, Kannapat can usually be found gaming on his PS5 or rewatching The Last of Us.
< PREVIOUS
How to Get Text From Invoice in C# Tutorial
NEXT >
How to OCR Subtitles in C# (Tutorial)