Skip to content

Commit 3833492

Browse files
Addressed_Feedbacks
1 parent 0650e6e commit 3833492

7 files changed

Lines changed: 97 additions & 96 deletions

File tree

Document-Processing/SmartDataExtractor/NET/SmartFormRecognizer/assemblies-required.md

Lines changed: 0 additions & 40 deletions
This file was deleted.
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
---
2+
title: Assemblies required for SmartFormRecognizer| Syncfusion®
3+
description: Learn the assemblies required to use Syncfusion® SmartFormRecognizer library in various platforms and frameworks.
4+
platform: document-processing
5+
control: SmartFormRecognizer
6+
documentation: UG
7+
---
8+
9+
# Assemblies Required to work with SmartFormRecognizer
10+
The following assemblies need to be referenced in your application based on the platform.
11+
12+
<table>
13+
<thead>
14+
<tr>
15+
<th><b>Platform(s)</b></th>
16+
<th><b>Assembly</b></th>
17+
<th><b>Dependent Assemblies</b></th>
18+
</tr>
19+
</thead>
20+
21+
<!-- BASE -->
22+
<tr>
23+
<td>Windows Forms, WPF and ASP.NET MVC5</td>
24+
<td>Syncfusion.SmartFormRecognizer.Base</td>
25+
<td>
26+
<ul>
27+
<li>Syncfusion.Pdf.Base</li>
28+
<li>Syncfusion.Compression.Base</li>
29+
<li>Syncfusion.PdfToImageConverter.Base</li>
30+
<li>Microsoft.ML.OnnxRuntime – Version="1.18.0"</li>
31+
<li>Newtonsoft.Json – Version="13.0"</li>
32+
</ul>
33+
</td>
34+
</tr>
35+
36+
<!-- PORTABLE -->
37+
<tr>
38+
<td rowspan="2">Blazor, .NET Core and .NET Platforms</td>
39+
<td>Syncfusion.SmartFormRecognizer.Portable</td>
40+
<td>
41+
<ul>
42+
<li>Syncfusion.Pdf.Portable</li>
43+
<li>Syncfusion.Compression.Portable</li>
44+
<li>Syncfusion.PdfToImageConverter.Portable</li>
45+
<li>Microsoft.ML.OnnxRuntime – Version="1.18.0"</li>
46+
<li>Newtonsoft.Json – Version="13.0.2"</li>
47+
</ul>
48+
</td>
49+
</tr>
50+
51+
<!-- .NET -->
52+
<tr>
53+
<td>Syncfusion.SmartFormRecognizer.NET</td>
54+
<td>
55+
<ul>
56+
<li>Syncfusion.Pdf.NET</li>
57+
<li>Syncfusion.Compression.NET</li>
58+
<li>Syncfusion.PdfToImageConverter.NET</li>
59+
<li>Microsoft.ML.OnnxRuntime – Version="1.18.0"</li>
60+
<li>Newtonsoft.Json – Version="13.0.2"</li>
61+
</ul>
62+
</td>
63+
</tr>
64+
</table>
65+

Document-Processing/SmartDataExtractor/NET/SmartFormRecognizer/nuGet-packages-required.md renamed to Document-Processing/SmartDataExtractor/SmartFormRecognizer/NET/nuGet-packages-required.md

File renamed without changes.

Document-Processing/SmartDataExtractor/NET/SmartFormRecognizer/overview.md renamed to Document-Processing/SmartDataExtractor/SmartFormRecognizer/NET/overview.md

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,8 @@ keywords: Assemblies
99

1010
# Smart Form Recognizer
1111

12-
Smart Form Recognizer is a deterministic, on premise C# library for .NET designed to reliably detect and extract form data from PDFs and scanned images. Unlike AI/ML‑based approaches, this library uses visual layout heuristicsincluding lines, boxes, and circular markersto identify form structures with high consistency and predictability. It supports extraction of common form controls such as text fields, checkboxes, radio buttons, and signature regions, producing clean, structured JSON that can be fed directly into review and workflow systems.
12+
Smart Form Recognizer is a deterministic, on premise C# library for .NET designed to reliably detect and extract form data from PDFs and scanned images. Unlike AI‑based approaches, this library uses visual layout heuristics including lines, boxes, and circular markers to identify form structures with high consistency and predictability. It supports It supports to identify the common form controls such as text fields, checkboxes, radio buttons, and signature regions, producing clean, structured JSON that can be fed directly into review and workflow systems.
1313

14-
In addition to extraction, the library can also generate fillable PDFs, automatically placing form fields where they were detected, enabling instant integration into digital form processing pipelines.
1514

1615
Core Capabilities
1716

@@ -81,18 +80,14 @@ The following code snippet illustrates how to detects form data from PDFs using
8180
{% tabs %}
8281
{% highlight c# tabtitle="C#" %}
8382

84-
//Initialize the Form Recognizer
85-
FormRecognizer smartFormRecognizer = new FormRecognizer();
86-
//Read the input PDF file as stream
87-
FileStream inputStream = new FileStream("Input.pdf", FileMode.Open, FileAccess.ReadWrite);
88-
//Recognize the form and get the output as PDF stream
89-
Stream outputStream = smartFormRecognizer.RecognizeFormAsPdfStream(inputStream);
90-
//Save the output PDF stream to file
91-
using (FileStream fileStream = File.Create("Output.pdf"))
92-
{
93-
outputStream.Seek(0, SeekOrigin.Begin);
94-
outputStream.CopyTo(fileStream);
95-
}
83+
//Initialize the Form Recognizer
84+
FormRecognizer smartFormRecognizer = new FormRecognizer();
85+
//Read the input PDF file as stream
86+
FileStream inputStream = new FileStream("Input.pdf", FileMode.Open, FileAccess.ReadWrite);
87+
//Recognize the form and get the output as PDF stream
88+
PdfLoadedDocument pdfLoadedDocument =recognizer.RecognizeFormAsPdfDocument(inputStream);
89+
//Save the loadeddocument
90+
pdfLoadedDocument.Save(Output.pdf);
9691

9792
{% endhighlight %}
9893
{% endtabs %}

Document-Processing/SmartDataExtractor/NET/SmartFormRecognizer/recognize-forms.md renamed to Document-Processing/SmartDataExtractor/SmartFormRecognizer/NET/recognize-forms.md

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: Working with Recognize methods in SmartFormRecognizer| Syncfusion&reg;
3-
description: Learn how to effectively use the Recognize methods in the Syncfusion&reg; SmartFormRecognizer library to process and extract data from forms with ease.
3+
description: Learn how to effectively use the Recognize methods in the Syncfusion&reg; SmartFormRecognizer library to process and detects from forms with ease.
44
platform: document-processing
55
control: SmartFormRecognizer
66
documentation: UG
@@ -13,7 +13,7 @@ The `FormRecognizer` exposes several convenience methods to recognize forms from
1313
Below each method signature you'll find a explanation and corrected example usage (both synchronous and asynchronous where applicable).
1414

1515
## Recognize forms using PdfLoadedDocument
16-
Using `PdfLoadedDocument` this operation analyzes the form content supplied through the inputStream whether it contains a PDF or an image and produces a fully enriched PdfLoadedDocument that includes recognized form elements such as checkboxes, radio buttons, textboxes, and signatures, according to the options defined in `FormRecognizeOptions`. This recognition process supports both execution patterns: the synchronous `RecognizeFormAsPdfDocument` method for immediate, blocking processing, and the asynchronous `RecognizeFormAsPdfDocumentAsync` method for non‑blocking, await processing ideal for responsive UI applications or scalable serverside workflows.
16+
Using `PdfLoadedDocument` this operation analyzes the form content supplied through the inputStream whether it contains a PDF or an image and produces a fully enriched PdfLoadedDocument that includes recognized form elements such as checkboxes, radio buttons, textboxes, and signatures, according to the options defined in `FormRecognizeOptions`. This recognition process supports both execution patterns: the synchronous `RecognizeFormAsPdfDocument` method for immediate, blocking processing, and the asynchronous `RecognizeFormAsPdfDocumentAsync` method for non‑blocking, await processing ideal for responsive UI applications or scalable server side workflows.
1717

1818
Example (synchronous):
1919

@@ -55,7 +55,7 @@ public async void Button_Click(object sender, RoutedEventArgs e)
5555

5656

5757
## Recognize forms using Stream
58-
Using `Stream`this operation processes the form content provided through the inputStreamwhether it contains a PDF or an imageand returns the fully recognized PDF as a Stream.This functionality is available through both the synchronous `RecognizeFormAsPdfStream` method for immediate, blocking execution and the asynchronous `RecognizeFormAsPdfStreamAsync` method for non‑blocking, await processing suitable for responsive UI applications, background services, and scalable server‑side workflows.
58+
Using `Stream`this operation processes the form content provided through the inputStream whether it contains a PDF or an image and returns the fully recognized PDF as a Stream.This functionality is available through both the synchronous `RecognizeFormAsPdfStream` method for immediate, blocking execution and the asynchronous `RecognizeFormAsPdfStreamAsync` method for non‑blocking, await processing suitable for responsive UI applications, background services, and scalable server‑side workflows.
5959

6060
Example (synchronous):
6161

@@ -105,7 +105,7 @@ public async void Button_Click(object sender, RoutedEventArgs e)
105105

106106
## Recognize forms using JSON
107107

108-
Using `JSON`this operation recognizes the form contained in the inputStream whether the source document is a PDF or an imageand returns the complete recognition output serialized as a JSON string. This functionality is accessible through both the synchronous `RecognizeFormAsJson` method, which performs immediate, blocking processing, and the asynchronous `RecognizeFormAsJsonAsync` method, which provides non‑blocking, await execution suitable for UI applications, background workers, and scalable cloud or server‑side workflows.
108+
Using `JSON`this operation recognizes the form contained in the inputStream whether the source document is a PDF or an image and returns the complete recognition output serialized as a JSON string. This functionality is accessible through both the synchronous `RecognizeFormAsJson` method, which performs immediate, blocking processing, and the asynchronous `RecognizeFormAsJsonAsync` method, which provides non‑blocking, await execution suitable for UI applications, background workers, and scalable cloud or server‑side workflows.
109109

110110
Example (synchronous):
111111

@@ -150,11 +150,8 @@ public async void Button_Click(object sender, RoutedEventArgs e)
150150

151151
## Async variants with CancellationToken
152152

153-
The async overloads accept an optional `CancellationToken` to cancel long-running operations.Initially cancellationToken value in default.Based on our requirement we can optimize the cancellationToken value.
153+
The async overloads accept an optional `CancellationToken` to cancel long running operations. Initially, the cancellationToken uses its default value, and based on our requirements, we can optimize or supply a custom token as needed. This behavior is supported across all async methods, including PDF, JSON, and PdfLoadedDocument asynchronous operations
154154

155-
- `Task<PdfLoadedDocument> RecognizeFormAsPdfDocumentAsync(Stream inputStream, CancellationToken cancellationToken = default)`
156-
- `Task<Stream> RecognizeFormAsPdfStreamAsync(Stream inputStream, CancellationToken cancellationToken = default)`
157-
- `Task<string> RecognizeFormAsJsonAsync(Stream inputStream, CancellationToken cancellationToken = default)`
158155

159156
Example with cancellation token (PDF stream):
160157

Document-Processing/SmartDataExtractor/NET/SmartFormRecognizer/smart-form-recognizer.md renamed to Document-Processing/SmartDataExtractor/SmartFormRecognizer/NET/smart-form-recognizer.md

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,8 @@ keywords: Assemblies
99

1010
# Smart Form Recognizer
1111

12-
Smart Form Recognizer is a deterministic, on premise C# library for .NET designed to reliably detect and extract form data from PDFs and scanned images. Unlike AI/ML‑based approaches, this library uses visual layout heuristicsincluding lines, boxes, and circular markersto identify form structures with high consistency and predictability. It supports extraction of common form controls such as text fields, checkboxes, radio buttons, and signature regions, producing clean, structured JSON that can be fed directly into review and workflow systems.
12+
Smart Form Recognizer is a deterministic, on premise C# library for .NET designed to reliably detect and extract form data from PDFs and scanned images. Unlike AI‑based approaches, this library uses visual layout heuristics including lines, boxes, and circular markers to identify form structures with high consistency and predictability. It supports It supports to identify the common form controls such as text fields, checkboxes, radio buttons, and signature regions, producing clean, structured JSON that can be fed directly into review and workflow systems.
1313

14-
In addition to extraction, the library can also generate fillable PDFs, automatically placing form fields where they were detected, enabling instant integration into digital form processing pipelines.
1514

1615
Core Capabilities
1716

@@ -32,18 +31,14 @@ The following code snippet illustrates how to detects form data from PDFs using
3231
{% tabs %}
3332
{% highlight c# tabtitle="C#" %}
3433

35-
//Initialize the Form Recognizer
36-
FormRecognizer smartFormRecognizer = new FormRecognizer();
37-
//Read the input PDF file as stream
38-
FileStream inputStream = new FileStream("Input.pdf", FileMode.Open, FileAccess.ReadWrite);
39-
//Recognize the form and get the output as PDF stream
40-
Stream outputStream = smartFormRecognizer.RecognizeFormAsPdfStream(inputStream);
41-
//Save the output PDF stream to file
42-
using (FileStream fileStream = File.Create("Output.pdf"))
43-
{
44-
outputStream.Seek(0, SeekOrigin.Begin);
45-
outputStream.CopyTo(fileStream);
46-
}
34+
//Initialize the Form Recognizer
35+
FormRecognizer smartFormRecognizer = new FormRecognizer();
36+
//Read the input PDF file as stream
37+
FileStream inputStream = new FileStream("Input.pdf", FileMode.Open, FileAccess.ReadWrite);
38+
//Recognize the form and get the output as PDF stream
39+
PdfLoadedDocument pdfLoadedDocument =recognizer.RecognizeFormAsPdfDocument(inputStream);
40+
//Save the loadeddocument
41+
pdfLoadedDocument.Save(Output.pdf);
4742

4843
{% endhighlight %}
4944
{% endtabs %}

Document-Processing/SmartDataExtractor/NET/SmartFormRecognizer/working-with-recognize-option.md renamed to Document-Processing/SmartDataExtractor/SmartFormRecognizer/NET/working-with-recognize-option.md

Lines changed: 9 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@ documentation: UG
88

99
# Working with FormRecognizeOptions
1010

11-
`FormRecognizeOptions` provides configurable settings that control how the SmartFormRecognizer detects and extracts elements from a document. It allows you to enable or disable the detection of specific form controlssuch as checkboxes, radio buttons, textboxes, and signatures—while also letting you finetune the recognition results using a confidence threshold.
11+
`FormRecognizeOptions` provides configurable settings that control how the SmartFormRecognizer detects elements from a document. It allows you to enable or disable the detection of specific form controls such as checkboxes, radio buttons, textboxes, and signatures—while also letting you fine tune the recognition results using a confidence threshold.
1212
Additionally, it supports restricting processing to specific pages through an optional 1‑based inclusive PageRange. By adjusting these options, developers can optimize performance, reduce noise in results, and tailor form extraction precisely to the needs of their application
1313

1414
## Properties
1515

1616
### DetectTextboxes
17-
`DetectTextboxes` is a boolean property in FormRecognizeOptions that determines whether the form recognizer should detect and extract textbox fields from the document layout. When enabled (default: true), it identifies rectangular input areassuch as printed boxes, form entry fields, or bordered regions intended for user-written textand includes them in the recognition output.
17+
`DetectTextboxes` is a boolean property in FormRecognizeOptions that determines whether the form recognizer should detect textbox fields from the document layout. When enabled (default: true), it identifies rectangular input areas such as printed boxes,Rounded boxes, lines, boxes and line inside the table cell, or bordered regions intended for user written text and includes them in the recognition output.
1818

1919
{% tabs %}
2020
{% highlight c# tabtitle="C#" %}
@@ -24,14 +24,12 @@ FormRecognizer recognizer = new FormRecognizer();
2424
// Disable textbox detection
2525
recognizer.FormRecognizeOptions.DetectTextboxes = false;
2626

27-
// Or explicitly enable it (default behavior)
28-
recognizer.FormRecognizeOptions.DetectTextboxes = true;
2927

3028
{% endhighlight %}
3129
{% endtabs %}
3230

3331
### DetectCheckboxes
34-
`DetectCheckboxes` is a boolean option in FormRecognizeOptions that controls whether the form recognizer should identify checkbox elements during document processing. When enabled (default: true), the recognizer scans the page layout for checkbox shapes, determines their positions.
32+
`DetectCheckboxes` is a boolean option in FormRecognizeOptions that controls whether the form recognizer should identify checkbox elements during document processing. When enabled (default: true), the recognizer scans the page layout for checkbox shapes,Rounded square,determines their positions.
3533

3634
{% tabs %}
3735
{% highlight c# tabtitle="C#" %}
@@ -42,15 +40,12 @@ FormRecognizer recognizer = new FormRecognizer();
4240
// Disable checkbox detection
4341
recognizer.FormRecognizeOptions.DetectCheckboxes = false;
4442

45-
// Or explicitly enable it (default behavior)
46-
recognizer.FormRecognizeOptions.DetectCheckboxes = true;
47-
4843

4944
{% endhighlight %}
5045
{% endtabs %}
5146

5247
### DetectRadioButtons
53-
`DetectRadioButtons` is a boolean property in FormRecognizeOptions that specifies whether the form recognizer should detect radio button elements in the document. When enabled (default: true), the recognizer identifies circular objects in images or in the PDF documents then add radio buttons in that identified locations.
48+
`DetectRadioButtons` is a boolean property in FormRecognizeOptions that specifies whether the form recognizer should detect radio button elements in the document. When enabled (default: true), the recognizer identifies circular and oval objects in images or in the PDF documents then add radio buttons in that identified locations.
5449

5550
{% tabs %}
5651
{% highlight c# tabtitle="C#" %}
@@ -60,15 +55,12 @@ FormRecognizer recognizer = new FormRecognizer();
6055
// Disable radio button detection
6156
recognizer.FormRecognizeOptions.DetectRadioButtons = false;
6257

63-
// Or explicitly enable it (default behavior)
64-
recognizer.FormRecognizeOptions.DetectRadioButtons = true;
65-
6658

6759
{% endhighlight %}
6860
{% endtabs %}
6961

7062
### DetectSignatures
71-
`DetectSignatures` is a boolean property in FormRecognizeOptions that controls whether the form recognizer should identify signature fields within a document. When enabled (default: true), the recognizer scans for handwritten-style areas, signature lines, or regions typically used for signing, and includes these detected signature blocks in the output.
63+
`DetectSignatures` is a boolean property in FormRecognizeOptions that controls whether the form recognizer should identify signature fields within a document. When enabled (default: true), the recognizer scans for handwritten style areas, signature lines, or regions typically used for signing, and includes these detected signature bounds in the output.
7264

7365
{% tabs %}
7466
{% highlight c# tabtitle="C#" %}
@@ -78,10 +70,6 @@ FormRecognizer recognizer = new FormRecognizer();
7870
// Disable signature detection
7971
recognizer.FormRecognizeOptions.DetectSignatures = false;
8072

81-
// Or explicitly enable it (default behavior)
82-
recognizer.FormRecognizeOptions.DetectSignatures = true;
83-
84-
8573
{% endhighlight %}
8674
{% endtabs %}
8775

@@ -108,11 +96,12 @@ recognizer.FormRecognizeOptions.ConfidenceThreshold = 0.9;
10896

10997
FormRecognizer recognizer = new FormRecognizer();
11098

111-
// Set a page range single
99+
// Set a single page range – detects only the specified page
112100
recognizer.FormRecognizeOptions.PageRange = new int[,] { { 3 } };
101+
recognizer.FormRecognizeOptions.PageRange = new int[,] { { 8 } };
113102

114-
// Set a page range 2D
115-
recognizer.FormRecognizeOptions.PageRange = new int[,] { { 3, 3 } };
103+
// Set a page range – detects content between the specified start and end page
104+
recognizer.FormRecognizeOptions.PageRange = new int[,] { { 3, 8 } };
116105

117106
{% endhighlight %}
118107
{% endtabs %}

0 commit comments

Comments
 (0)