diff --git a/Document-Processing-toc.html b/Document-Processing-toc.html index bc56d468ab..14f0ab14a3 100644 --- a/Document-Processing-toc.html +++ b/Document-Processing-toc.html @@ -9,7 +9,88 @@
  • System Requirements
  • -
  • AI Tools +
  • Installation +
  • +
  • Upgrade + +
  • +
  • Licensing + +
  • +
  • + NuGet Packages +
  • +
  • AI Tools @@ -8084,7 +8081,7 @@ Why aren't *.otf fonts embedded in Microsoft Office documents?
  • - What are the file and directory length limits in Compression? + What are the file and directory length limits in Compression?
  • diff --git a/Document-Processing/Data-Extraction/NET/Extract-Data-in-ASP-NET-Core.md b/Document-Processing/Data-Extraction/NET/Extract-Data-in-ASP-NET-Core.md index f73bc79aa8..b63ebc3ed4 100644 --- a/Document-Processing/Data-Extraction/NET/Extract-Data-in-ASP-NET-Core.md +++ b/Document-Processing/Data-Extraction/NET/Extract-Data-in-ASP-NET-Core.md @@ -1,5 +1,6 @@ --- title: Extract data in ASP.NET Core | Syncfusion +canonical_url: "https://www.syncfusioninternal.com/document-sdk/net-pdf-data-extraction" description: Learn how to extract data from PDF in ASP.NET Core with step‑by‑step guidance using Syncfusion .NET Core Data extraction library. platform: document-processing control: SmartDataExtractor @@ -13,7 +14,7 @@ The Syncfusion® Smart Data Extractor is a .NET library used to ex To quickly get started with extracting structured data from PDF and image files in ASP.NET Core using the Smart Data Extractor library, refer to this video tutorial: {% youtube "https://www.youtube.com/watch?v=fxijc3BgDTY" %} -To include the Smart Data Extractor library in your ASP.NET Core application, please refer to the [NuGet Packages Required](https://help.syncfusion.com/document-processing/data-extraction/smart-data-extractor/net/nuget-packages-required) or [Assemblies Required](https://help.syncfusion.com/document-processing/data-extraction/smart-data-extractor/net/assemblies-required) documentation. +To include the Smart Data Extractor library in your ASP.NET Core application, please refer to the [NuGet Packages Required](https://help.syncfusion.com/document-processing/data-extraction/net/nuget-packages-required#smart-data-extractor) or [Assemblies Required](https://help.syncfusion.com/document-processing/data-extraction/net/assemblies-required#smart-data-extractor) documentation. ## Steps to Extract Data from PDF in ASP.NET Core application @@ -101,7 +102,7 @@ Click the Start button (green arrow) or press F5 to run the applicati **Prerequisites**: * Install .NET SDK: Ensure that you have the .NET SDK installed on your system. You can download it from the [.NET Downloads page](https://dotnet.microsoft.com/en-us/download). -* Install Visual Studio Code: Download and install Visual Studio Code from the [official website](https://code.visualstudio.com/download). +* Install Visual Studio Code: Download and install Visual Studio Code from the [official website](https://code.visualstudio.com/download?_exp_download=fb315fc982). * Install C# Extension for VS Code: Open Visual Studio Code, go to the Extensions view (Ctrl+Shift+X), and search for 'C#'. Install the official [C# extension provided by Microsoft](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csharp). Step 1: Open the terminal (Ctrl+` ) and run the following command to create a C# ASP.NET Core Web Application project. diff --git a/Document-Processing/Data-Extraction/NET/Extract-Data-in-Console.md b/Document-Processing/Data-Extraction/NET/Extract-Data-in-Console.md index 9876cacf4c..a556984521 100644 --- a/Document-Processing/Data-Extraction/NET/Extract-Data-in-Console.md +++ b/Document-Processing/Data-Extraction/NET/Extract-Data-in-Console.md @@ -1,6 +1,6 @@ --- title: Extract Data in Console Application | Syncfusion -description: Learn how to extract data in a Console Application by using the Syncfusion Smart Data Extractor efficiently. +description: Learn how to extract data in a Console Application by using the .NET Smart Data Extractor Library efficiently. platform: document-processing control: SmartDataExtractor documentation: UG @@ -18,7 +18,7 @@ The Syncfusion® Smart Data Extractor is a .NET library used to ex **Prerequisites**: * Install .NET SDK: Ensure that you have the .NET SDK installed on your system. You can download it from the [.NET Downloads page](https://dotnet.microsoft.com/en-us/download). -* Install Visual Studio: Download and install Visual Studio from the [official website](https://code.visualstudio.com/download). +* Install Visual Studio: Download and install Visual Studio from the [official website](https://code.visualstudio.com/download?_exp_download=fb315fc982). Step 1: Create a new C# Console Application project. ![Console sample creation](GettingStarted_images/ConsoleCreation.png) @@ -74,7 +74,7 @@ Click the Start button (green arrow) or press F5 to run the app. **Prerequisites**: * Install .NET SDK: Ensure that you have the .NET SDK installed on your system. You can download it from the [.NET Downloads page](https://dotnet.microsoft.com/en-us/download). -* Install Visual Studio Code: Download and install Visual Studio Code from the [official website](https://code.visualstudio.com/download). +* Install Visual Studio Code: Download and install Visual Studio Code from the [official website](https://code.visualstudio.com/download?_exp_download=fb315fc982). * Install C# Extension for VS Code: Open Visual Studio Code, go to the Extensions view (Ctrl+Shift+X), and search for 'C#'. Install the official [C# extension provided by Microsoft](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csharp). @@ -156,7 +156,7 @@ The following steps illustrates Extracting Data from PDF document in console app **Prerequisites**: * Install .NET SDK: Ensure that you have the .NET SDK installed on your system. You can download it from the [.NET Downloads page](https://dotnet.microsoft.com/en-us/download). -* Install Visual Studio: Download and install Visual Studio from the [official website](https://code.visualstudio.com/download). +* Install Visual Studio: Download and install Visual Studio from the [official website](https://code.visualstudio.com/download?_exp_download=fb315fc982). **Steps to Extract Data from PDF using .NET Framework** diff --git a/Document-Processing/Data-Extraction/NET/Extract-Data-in-WPF.md b/Document-Processing/Data-Extraction/NET/Extract-Data-in-WPF.md index 1cf5f85df7..a2ea7f8f35 100644 --- a/Document-Processing/Data-Extraction/NET/Extract-Data-in-WPF.md +++ b/Document-Processing/Data-Extraction/NET/Extract-Data-in-WPF.md @@ -1,6 +1,6 @@ --- title: Extract Data in WPF Application | Syncfusion -description: Learn how to extract data in a WPF application with step‑by‑step guidance using the Syncfusion Smart Data Extractor library. +description: Learn how to extract data in a WPF application with step‑by‑step guidance using the .NET Smart Data Extractor Library. platform: document-processing control: SmartDataExtractor documentation: UG diff --git a/Document-Processing/Data-Extraction/NET/Extract-Data-in-Windows-Forms.md b/Document-Processing/Data-Extraction/NET/Extract-Data-in-Windows-Forms.md index 613b590592..3e507e02cb 100644 --- a/Document-Processing/Data-Extraction/NET/Extract-Data-in-Windows-Forms.md +++ b/Document-Processing/Data-Extraction/NET/Extract-Data-in-Windows-Forms.md @@ -1,6 +1,6 @@ --- title: Extract Data from PDF in Windows Forms | Syncfusion -description: Extract tables, text, and form fields from PDF documents in Windows Forms using the Syncfusion Smart Data Extractor library. +description: Extract tables, text, and form fields from PDF documents in Windows Forms using the .NET Smart Data Extractor Library. platform: document-processing control: SmartDataExtractor documentation: UG diff --git a/Document-Processing/Data-Extraction/NET/conversions/pdf-to-json.md b/Document-Processing/Data-Extraction/NET/conversions/pdf-to-json.md index 6129b51642..0af99d01d6 100644 --- a/Document-Processing/Data-Extraction/NET/conversions/pdf-to-json.md +++ b/Document-Processing/Data-Extraction/NET/conversions/pdf-to-json.md @@ -124,4 +124,4 @@ using (FileStream stream = new FileStream("Input.pdf", FileMode.Open, FileAccess ## JSON Output Structure and Attributes -The JSON output from the extraction contains structured attributes. For more details on the extracted JSON structure and attributes, refer to the [JSON Attributes](https://help.syncfusion.com/document-processing/data-extraction/smart-data-extractor/net/overview#json-output-structure-and-attributes) documentation. \ No newline at end of file +The JSON output from the extraction contains structured attributes. For more details on the extracted JSON structure and attributes, refer to the [JSON Attributes](https://help.syncfusion.com/document-processing/data-extraction/net/overview#json-output-structure-and-attributes) documentation. \ No newline at end of file diff --git a/Document-Processing/Data-Extraction/NET/data-extractor-overview.md b/Document-Processing/Data-Extraction/NET/data-extractor-overview.md index f293217708..29ae34de48 100644 --- a/Document-Processing/Data-Extraction/NET/data-extractor-overview.md +++ b/Document-Processing/Data-Extraction/NET/data-extractor-overview.md @@ -1,5 +1,6 @@ --- title: Data Extraction and Conversion in .NET | Syncfusion +canonical_url: "https://www.syncfusioninternal.com/document-sdk/net-pdf-data-extraction" description: Syncfusion Data Extraction is a .NET library that extracts tables, forms, text, and images from PDF or image files, and outputs JSON or Markdown. platform: document-processing control: DataExtraction @@ -7,6 +8,6 @@ documentation: UG keywords: Assemblies --- -# Welcome to Syncfusion Smart Data Extractor Library +# Welcome to .NET Smart Data Extractor Library -Syncfusion® **Smart Data Extractor** is a robust, deterministic C# library built to capture complete document structures from PDFs and images. Optimized for .NET workflows, it interprets visual layout patterns—lines, boxes, labels, and alignment—to accurately identify and extract *tables, text blocks, images, headers, footers, and form fields*. Each extracted element includes per‑field confidence scores, enabling precise validation, seamless export, and smooth integration into applications. \ No newline at end of file +The .NET **Smart Data Extractor** is a robust, deterministic C# library built to capture complete document structures from PDFs and images. Optimized for .NET workflows, it interprets visual layout patterns—lines, boxes, labels, and alignment—to accurately identify and extract *tables, text blocks, images, headers, footers, and form fields*. Each extracted element includes per‑field confidence scores, enabling precise validation, seamless export, and smooth integration into applications. \ No newline at end of file diff --git a/Document-Processing/Data-Extraction/NET/how-to-download-and-install.md b/Document-Processing/Data-Extraction/NET/how-to-download-and-install.md index 15fb57d637..87e7dabdb4 100644 --- a/Document-Processing/Data-Extraction/NET/how-to-download-and-install.md +++ b/Document-Processing/Data-Extraction/NET/how-to-download-and-install.md @@ -1,7 +1,7 @@ --- layout: post title: Installing Syncfusion Data Extraction - Syncfusion -description: Learn how to install the Syncfusion Smart Data Extractor library for extracting structured data from PDFs and images in .NET applications. +description: Learn how to install the .NET Smart Data Extractor Library for extracting structured data from PDFs and images in .NET applications. platform: document-processing control: Installation and Deployment documentation: ug diff --git a/Document-Processing/Data-Extraction/NET/ocr-overview.md b/Document-Processing/Data-Extraction/NET/ocr-overview.md index 90a46c93ec..2d884cd87c 100644 --- a/Document-Processing/Data-Extraction/NET/ocr-overview.md +++ b/Document-Processing/Data-Extraction/NET/ocr-overview.md @@ -1,5 +1,6 @@ --- title: Intro to OCR Processor | Syncfusion +canonical_url: "https://www.syncfusion.com/document-sdk/net-pdf-library/ocr-process" description: This page introduces the Syncfusion OCR Processor, highlighting its purpose, main features, and how to begin optical character recognition in .NET apps. platform: document-processing control: OCRProcessor diff --git a/Document-Processing/Data-Extraction/NET/ocr-processor/Console.md b/Document-Processing/Data-Extraction/NET/ocr-processor/Console.md index 3b0aefd6f7..f88b281037 100644 --- a/Document-Processing/Data-Extraction/NET/ocr-processor/Console.md +++ b/Document-Processing/Data-Extraction/NET/ocr-processor/Console.md @@ -19,7 +19,7 @@ The [Syncfusion® .NET OCR library](https://www.syncfusion.com/doc **Prerequisites**: * Install .NET SDK: Ensure that you have the .NET SDK installed on your system. You can download it from the [.NET Downloads page](https://dotnet.microsoft.com/en-us/download). -* Install Visual Studio: Download and install Visual Studio Code from the [official website](https://code.visualstudio.com/download). +* Install Visual Studio: Download and install Visual Studio Code from the [official website](https://code.visualstudio.com/download?_exp_download=d53503e735). Step 1: Create a new .NET Core console application project. ![Create Console application](OCR-Images/Console-1.png) @@ -82,8 +82,8 @@ Click the **Run** button (green arrow) in the toolbar or press F5 to **Prerequisites**: -* Install .NET SDK: Ensure that you have the .NET SDK installed on your system. You can download it from the [.NET Downloads page](https://dotnet.microsoft.com/en-us/download). -* Install Visual Studio Code: Download and install Visual Studio Code from the [official website](https://code.visualstudio.com/download). +* Install .NET SDK: Ensure that you have the .NET SDK installed on your system. You can download it from the [.NET Downloads page](https://code.visualstudio.com/download?_exp_download=d53503e735). +* Install Visual Studio Code: Download and install Visual Studio Code from the [official website](https://code.visualstudio.com/download?_exp_download=d53503e735). * Install C# Extension for VS Code: Open Visual Studio Code, go to the Extensions view (Ctrl+Shift+X), and search for 'C#'. Install the official [C# extension provided by Microsoft](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csharp). Step 1: Open the terminal (Ctrl+` ) and run the following command to create a new Console Application project. diff --git a/Document-Processing/Data-Extraction/NET/ocr-processor/Features.md b/Document-Processing/Data-Extraction/NET/ocr-processor/Features.md index 8f72decc53..576e9bf254 100644 --- a/Document-Processing/Data-Extraction/NET/ocr-processor/Features.md +++ b/Document-Processing/Data-Extraction/NET/ocr-processor/Features.md @@ -659,7 +659,7 @@ End Using ## Performing OCR on rotated page of PDF document -You can get the OCRed text from the rotated page of PDF document using the [PageSegment](https://help.syncfusion.com/cr/document-processing/Syncfusion.OCRProcessor.OCRSettings.html#Syncfusion_OCRProcessor_OCRSettings_PageSegment) property by specifying ``AutoOsd`` through [PageSegmentMode](https://help.syncfusion.com/cr/document-processing/Syncfusion.OCRProcessor.PageSegmentMode.html) Enum. For more details, refer to the following code sample. +You can get the OCRed text from the rotated page of PDF document using the [PageSegment](https://help.syncfusion.com/cr/document-processing/Syncfusion.OCRProcessor.OCRSettings.html#Syncfusion_OCRProcessor_OCRSettings_PageSegment) property by specifying ``AutoOsd`` through [PageSegmentMode](https://help.syncfusion.com/cr/document-processing/Syncfusion.OCRProcessor.PageSegMode.html) Enum. For more details, refer to the following code sample. {% tabs %} @@ -1930,6 +1930,34 @@ using (OCRProcessor processor = new OCRProcessor()) } {% endhighlight %} +{% highlight c# tabtitle="C# [Windows-specific]" %} + +using Syncfusion.OCRProcessor; +using Syncfusion.Pdf.Parsing; + +//Initialize the OCR processor. +using (OCRProcessor processor = new OCRProcessor()) +{ + //Get stream from an image file. + FileStream imageStream = new FileStream(@"Input.jpg", FileMode.Open); + //Set OCR language to process. + processor.Settings.Language = Languages.English; + //Sets Unicode font to preserve the Unicode characters in a PDF document. + FileStream fontStream = new FileStream(@"ARIALUNI.ttf", FileMode.Open); + //Set the unicode font. + processor.UnicodeFont = new PdfTrueTypeFont(fontStream, true, PdfFontStyle.Regular, 10); + //Set the PDF conformance level. + processor.Settings.Conformance = PdfConformanceLevel.Pdf_A1B; + //Process OCR by providing the bitmap image. + PdfDocument document = processor.PerformOCR(imageStream); + + //Save the PDF document to file stream. + document.Save("Output.pdf"); + //Close the document. + document.Close(true); +} +{% endhighlight %} + {% highlight vb.net tabtitle="VB.NET [Windows-specific]" %} Imports Syncfusion.OCRProcessor @@ -1996,10 +2024,16 @@ using (OCRProcessor processor = new OCRProcessor()) {% endhighlight %} -{% highlight vb.net tabtitle="VB.NET [Windows-specific]" %} +{% highlight c# tabtitle="C# [Windows-specific]" %} //By default unicode characters can be extracted from image file in .NET Framework applications like WF, WPF, ASP.NET and ASP.NET MVC. +{% endhighlight %} + +{% highlight vb.net tabtitle="VB.NET [Windows-specific]" %} + +'By default unicode characters can be extracted from image file in .NET Framework applications like WF, WPF, ASP.NET and ASP.NET MVC. + {% endhighlight %} {% endtabs %} @@ -2373,25 +2407,18 @@ using (OCRProcessor ocrProcessor = new OCRProcessor()) new FileStream("arialuni.ttf", FileMode.Open), // Path to the TrueType font file 12 // Font size ); - // Load the PDF document PdfLoadedDocument loadedDocument = new PdfLoadedDocument("Input.pdf"); - // Configure OCR settings OCRSettings ocrSettings = new OCRSettings(); - // Specify the languages to be used for OCR ocrSettings.Language = "eng+deu+ara+ell+fra"; // English, German, Arabic, Greek, French - // Apply the OCR settings to the OCR processor ocrProcessor.Settings = ocrSettings; - // Perform OCR on the loaded PDF document, providing the path to the tessdata directory ocrProcessor.PerformOCR(loadedDocument, "tessdata"); - // Save the OCR-processed document loadedDocument.Save("Output.pdf"); - // Close the loaded document loadedDocument.Close(true); } @@ -2408,22 +2435,16 @@ using (OCRProcessor ocrProcessor = new OCRProcessor()) { // Load the PDF document PdfLoadedDocument loadedDocument = new PdfLoadedDocument("Input.pdf"); - // Configure OCR settings OCRSettings ocrSettings = new OCRSettings(); - // Specify the languages to be used for OCR ocrSettings.Language = "eng+deu+ara+ell+fra"; // English, German, Arabic, Greek, French - // Apply the OCR settings to the OCR processor ocrProcessor.Settings = ocrSettings; - // Perform OCR on the loaded PDF document, providing the path to the tessdata directory ocrProcessor.PerformOCR(loadedDocument, "tessdata"); - // Save the OCR-processed document loadedDocument.Save("Output.pdf"); - // Close the loaded document loadedDocument.Close(true); } @@ -2444,22 +2465,16 @@ Using ocrProcessor As New OCRProcessor() ) ' Load the PDF document from the file stream Dim loadedDocument As New PdfLoadedDocument("Input.pdf") - ' Configure OCR settings Dim ocrSettings As New OCRSettings() - ' Specify the languages to be used for OCR ocrSettings.Language = "eng+deu+ara+ell+fra" ' English, German, Arabic, Greek, French - ' Apply the OCR settings to the OCR processor ocrProcessor.Settings = ocrSettings - ' Perform OCR on the loaded PDF document, providing the path to the tessdata directory ocrProcessor.PerformOCR(loadedDocument, "tessdata") - ' Save the OCR-processed document loadedDocument.Save("Output.pdf") - ' Close the loaded document and commit changes loadedDocument.Close(True) @@ -2489,24 +2504,18 @@ using (OCRProcessor processor = new OCRProcessor()) { // Load the PDF document from the file stream PdfLoadedDocument pdfLoadedDocument = new PdfLoadedDocument("Input.pdf"); - // Set OCR language to English processor.Settings.Language = Languages.English; - // Set the page segmentation mode to process sparse text with orientation and script detection processor.Settings.PageSegment = PageSegMode.SparseTextOsd; - // Perform OCR on the loaded PDF document to extract text processor.PerformOCR(pdfLoadedDocument, processor.TessDataPath, out OCRLayoutResult layoutResult); - // Extract the OCRed text from the first page and join lines with newline characters string ocrText = string.Join("\n", layoutResult.Pages[0].Lines.Select(line => line.Text)); - // Save the PDF document to the file stream pdfLoadedDocument.Save("Output.pdf"); // Close the PDF document pdfLoadedDocument.Close(true); - // Write the extracted OCR text to an output text file File.WriteAllText("Output.txt", ocrText); } @@ -2523,24 +2532,18 @@ using (OCRProcessor processor = new OCRProcessor()) { // Load the PDF document from the file stream PdfLoadedDocument pdfLoadedDocument = new PdfLoadedDocument("Input.pdf"); - // Set OCR language to English processor.Settings.Language = Languages.English; - // Set the page segmentation mode to process sparse text with orientation and script detection processor.Settings.PageSegment = PageSegmentMode.SparseTextOsd; - // Perform OCR on the loaded PDF document to extract text processor.PerformOCR(pdfLoadedDocument, processor.TessDataPath, out OCRLayoutResult layoutResult); - // Extract the OCRed text from the first page and join lines with newline characters string ocrText = string.Join("\n", layoutResult.Pages[0].Lines.Select(line => line.Text)); - // Save the PDF document to the file stream pdfLoadedDocument.Save("Output.pdf"); // Close the PDF document pdfLoadedDocument.Close(true); - // Write the extracted OCR text to an output text file File.WriteAllText("Output.txt", ocrText); } @@ -2556,23 +2559,17 @@ Imports Syncfusion.Pdf.Parsing Using processor As New OCRProcessor() ' Load the PDF document from the file stream Dim pdfLoadedDocument As New PdfLoadedDocument("Input.pdf") - ' Set OCR language to English processor.Settings.Language = Languages.English - ' Set the page segmentation mode to process sparse text with orientation and script detection processor.Settings.PageSegment = PageSegMode.SparseTextOsd - ' Perform OCR on the loaded PDF document to extract text Dim layoutResult As OCRLayoutResult processor.PerformOCR(pdfLoadedDocument, processor.TessDataPath, layoutResult) - ' Extract the OCRed text from the first page and join lines with newline characters Dim ocrText As String = String.Join(Environment.NewLine, layoutResult.Pages(0).Lines.Select(Function(line) line.Text)) - ' Save the PDF document to the file stream pdfLoadedDocument.Save("Output.pdf") - ' Close the PDF document pdfLoadedDocument.Close(True) @@ -2610,7 +2607,6 @@ using (OCRProcessor processor = new OCRProcessor()) processor.TessDataPath = "TessdataBest/"; processor.Settings.Language = Languages.English; processor.Settings.TesseractVersion = TesseractVersion.Version5_0; - // Determine how many frames/pages the TIFF contains. int frameCount = img.GetFrameCount(FrameDimension.Page); if (frameCount <= 1) @@ -2626,7 +2622,6 @@ using (OCRProcessor processor = new OCRProcessor()) // Prefer Page dimension try { img.SelectActiveFrame(FrameDimension.Page, i); } catch { /* fallback if needed */ } - // Clone the selected frame to a standalone Bitmap for OCR (important for some engines) using (Bitmap frameBmp = new Bitmap(img.Width, img.Height)) using (Graphics g = Graphics.FromImage(frameBmp)) @@ -2666,7 +2661,6 @@ using (OCRProcessor processor = new OCRProcessor()) processor.TessDataPath = "TessdataBest/"; processor.Settings.Language = Languages.English; processor.Settings.TesseractVersion = TesseractVersion.Version5_0; - // Determine how many frames/pages the TIFF contains. int frameCount = img.GetFrameCount(FrameDimension.Page); if (frameCount <= 1) @@ -2676,13 +2670,11 @@ using (OCRProcessor processor = new OCRProcessor()) frameCount = Math.Max(frameCount, img.GetFrameCount(FrameDimension.Resolution)); } if (frameCount < 1) frameCount = 1; - for (int i = 0; i < frameCount; i++) { // Prefer Page dimension try { img.SelectActiveFrame(FrameDimension.Page, i); } catch { /* fallback if needed */ } - // Clone the selected frame to a standalone Bitmap for OCR (important for some engines) using (Bitmap frameBmp = new Bitmap(img.Width, img.Height)) using (Graphics g = Graphics.FromImage(frameBmp)) @@ -2728,7 +2720,6 @@ Using processor As New OCRProcessor() frameCount = Math.Max(frameCount, img.GetFrameCount(FrameDimension.Resolution)) End If If frameCount < 1 Then frameCount = 1 - For i As Integer = 0 To frameCount - 1 ' Prefer Page dimension Try @@ -2742,7 +2733,6 @@ Using processor As New OCRProcessor() Using g As Graphics = Graphics.FromImage(frameBmp) g.DrawImage(img, 0, 0, img.Width, img.Height) End Using - Dim pageText As String = processor.PerformOCR(frameBmp, processor.TessDataPath) output.AppendLine($"--- Page {i + 1} ---") output.AppendLine(If(pageText, String.Empty)) @@ -2750,7 +2740,6 @@ Using processor As New OCRProcessor() End Using Next End Using - File.WriteAllText("Output.txt", output.ToString()) {% endhighlight %} diff --git a/Document-Processing/Data-Extraction/NET/ocr-processor/Getting-started-overview.md b/Document-Processing/Data-Extraction/NET/ocr-processor/Getting-started-overview.md index d023765b34..9f5913589b 100644 --- a/Document-Processing/Data-Extraction/NET/ocr-processor/Getting-started-overview.md +++ b/Document-Processing/Data-Extraction/NET/ocr-processor/Getting-started-overview.md @@ -1,5 +1,6 @@ --- title: Getting started with OCR processor | Syncfusion +canonical_url: "https://www.syncfusion.com/document-sdk/net-pdf-library/ocr-process" description: This section provides an introduction to getting started with the OCR processor and explains the basic concepts and workflow involved platform: document-processing control: PDF @@ -7,7 +8,7 @@ documentation: UG --- # Getting started with OCR processor -To quickly get started with extracting text from scanned PDF documents in .NET using the Syncfusion® OCR processor Library, refer to this video tutorial: +To quickly get started with extracting text from scanned PDF documents in .NET using the .NET OCR processor library, refer to this video tutorial: {% youtube "https://www.youtube.com/watch?v=VhN7ETn0vyA" %} ## Prerequisites @@ -15,19 +16,24 @@ To quickly get started with extracting text from scanned PDF documents in .NET u The Syncfusion® OCR processor internally uses Tesseract libraries to perform OCR, so please copy the necessary Tessdata and TesseractBinaries folders from the NuGet package folder to the project folder to use the OCR feature. ### Prerequisites for Windows + Please refer to the following code sample for windows. +{% tabs %} {% highlight c# tabtitle="C#" %} OCRProcessor processor = new OCRProcessor(); {% endhighlight %} +{% endtabs %} +{% tabs %} {% highlight c# tabtitle="C#" %} processor.PerformOCR(lDoc); {% endhighlight %} +{% endtabs %} Download the language packages from the following link. [https://github.com/tesseract-ocr/tessdata](https://github.com/tesseract-ocr/tessdata) @@ -39,27 +45,33 @@ N> From 16.1.0.24 OCR is not a part of Essential Studio® and is a Install the "libgdiplus" and "libc6-dev" packages. Please refer to the following commands to install the packages. -{% highlight c# tabtitle="C#" %} +{% tabs %} +{% highlight bash %} sudo apt-get update sudo apt-get install libgdiplus sudo apt-get install libc6-dev {% endhighlight %} +{% endtabs %} Please refer to the following code snippet for Linux. +{% tabs %} {% highlight c# tabtitle="C#" %} OCRProcessor processor = new OCRProcessor(); {% endhighlight %} +{% endtabs %} +{% tabs %} {% highlight c# tabtitle="C#" %} processor.PerformOCR(lDoc); {% endhighlight %} +{% endtabs %} Download the language packages from the following link. [https://github.com/tesseract-ocr/tessdata](https://github.com/tesseract-ocr/tessdata) @@ -68,25 +80,31 @@ Download the language packages from the following link. Install the "libgdiplus" and "tesseract" packages in the Mac machine where the OCR operations occur. Please refer to the following commands to install this package. -{% highlight c# tabtitle="C#" %} +{% tabs %} +{% highlight bash %} brew install mono-libgdiplus brew install tesseract {% endhighlight %} +{% endtabs %} Please refer to the following code sample for Mac. +{% tabs %} {% highlight c# tabtitle="C#" %} OCRProcessor processor = new OCRProcessor(); {% endhighlight %} +{% endtabs %} +{% tabs %} {% highlight c# tabtitle="C#" %} processor.PerformOCR(lDoc); {% endhighlight %} +{% endtabs %} ### Perform OCR using C# @@ -109,15 +127,18 @@ Step 3:Please use the OCR language data for other languages using the following Step 4: Include the following namespace in your class file. +{% tabs %} {% highlight c# tabtitle="C#" %} using Syncfusion.OCRProcessor; using Syncfusion.Pdf.Parsing; {% endhighlight %} +{% endtabs %} Step 5: Use the following code sample to perform OCR on the entire PDF document using PerformOCR method of the [OCRProcessor](https://help.syncfusion.com/cr/document-processing/Syncfusion.OCRProcessor.OCRProcessor.html) class in Program.cs file. +{% tabs %} {% highlight c# tabtitle="C#" %} //Initialize the OCR processor. @@ -136,6 +157,7 @@ using (OCRProcessor processor = new OCRProcessor()) } {% endhighlight %} +{% endtabs %} By executing the program, you will get the PDF document as follows. Output screenshot diff --git a/Document-Processing/Data-Extraction/NET/ocr-processor/MAC.md b/Document-Processing/Data-Extraction/NET/ocr-processor/MAC.md index 8d64405223..f4fcef732c 100644 --- a/Document-Processing/Data-Extraction/NET/ocr-processor/MAC.md +++ b/Document-Processing/Data-Extraction/NET/ocr-processor/MAC.md @@ -20,7 +20,7 @@ The [Syncfusion® .NET OCR library](https://www.syncfusion.com/doc **Prerequisites**: * Install .NET SDK: Ensure that you have the .NET SDK installed on your system. You can download it from the [.NET Downloads page](https://dotnet.microsoft.com/en-us/download). -* Install Visual Studio: Download and install Visual Studio Code from the [official website](https://code.visualstudio.com/download). +* Install Visual Studio: Download and install Visual Studio Code from the [official website](https://code.visualstudio.com/download?_exp_download=d53503e735). Step 1: Create a new .NET Core console application project. ![Mac OS console application](OCR-Images/Mac_OS_Console.png) @@ -90,7 +90,7 @@ Click the Start button (green arrow) or press F5 to run the app. **Prerequisites**: * Install .NET SDK: Ensure that you have the .NET SDK installed on your system. You can download it from the [.NET Downloads page](https://dotnet.microsoft.com/en-us/download). -* Install Visual Studio Code: Download and install Visual Studio Code from the [official website](https://code.visualstudio.com/download). +* Install Visual Studio Code: Download and install Visual Studio Code from the [official website](https://code.visualstudio.com/download?_exp_download=d53503e735). * Install C# Extension for VS Code: Open Visual Studio Code, go to the Extensions view (Ctrl+Shift+X), and search for 'C#'. Install the official [C# extension provided by Microsoft](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csharp). Step 1: Open the terminal (Ctrl+` ) and run the following command to create a new .NET Core console application project. @@ -98,7 +98,7 @@ Step 1: Open the terminal (Ctrl+` ) and run the following command to create a ne ``` dotnet new console -n CreatePdfMacOSApp ``` -Step 2: Replace ****CreatePdfMacOSApp** with your desired project name. +Step 2: Replace **CreatePdfMacOSApp** with your desired project name. Step 3: Navigate to the project directory using the following command diff --git a/Document-Processing/Data-Extraction/NET/ocr-processor/NuGet-Packages-Required.md b/Document-Processing/Data-Extraction/NET/ocr-processor/NuGet-Packages-Required.md index 08292135b6..ad6a495572 100644 --- a/Document-Processing/Data-Extraction/NET/ocr-processor/NuGet-Packages-Required.md +++ b/Document-Processing/Data-Extraction/NET/ocr-processor/NuGet-Packages-Required.md @@ -1,11 +1,11 @@ --- title: NuGet Packages for OCR | Syncfusion -description: This section illustrates the NuGet packages required to use Syncfusion OCR processor library in various platforms and frameworks +description: This section illustrates the NuGet packages required to use .NET OCR processor library in various platforms and frameworks platform: document-processing control: PDF documentation: UG --- -## NuGet Packages Required for OCR Processor +# NuGet Packages Required for OCR Processor To work with the OCR Processor, the following NuGet packages need to be installed in your application from [nuget.org](https://www.nuget.org/). diff --git a/Document-Processing/Data-Extraction/NET/ocr-processor/Troubleshooting.md b/Document-Processing/Data-Extraction/NET/ocr-processor/Troubleshooting.md index 8d61ccc87c..fbc7993145 100644 --- a/Document-Processing/Data-Extraction/NET/ocr-processor/Troubleshooting.md +++ b/Document-Processing/Data-Extraction/NET/ocr-processor/Troubleshooting.md @@ -26,7 +26,7 @@ keywords: Assemblies Set proper tesseract binaries and tessdata folder with all files and inner folders. The tessdata folder name is case-sensitive and should not change.

    {% tabs %} -{% highlight C# tabtitle="C# [Cross-platform]" %} +{% highlight C# %} //TesseractBinaries - path of the folder tesseract binaries. OCRProcessor processor = new OCRProcessor(@"TesseractBinaries/"); @@ -209,7 +209,7 @@ By using the best tessdata, we can improve the OCR results. For more information 1.Execute the following command to install Tesseract 5.
    {% tabs %} -{% highlight C# %} +{% highlight bash %} brew install tesseract @@ -219,7 +219,7 @@ brew install tesseract If the "brew" is not installed on your machine, you can install it using the following command.
    {% tabs %} -{% highlight C# %} +{% highlight bash %} /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" @@ -241,7 +241,7 @@ using (OCRProcessor processor = new OCRProcessor("/opt/homebrew/Cellar/tesseract 3.Add the TessDataPath from bin folder. Refer to the example code below:
    {% tabs %} -{% highlight C# tabtitle="C# [Cross-platform]" %} +{% highlight C# %} using (OCRProcessor processor = new OCRProcessor("/opt/homebrew/Cellar/tesseract/5.3.2/lib")) { @@ -287,7 +287,7 @@ using (OCRProcessor processor = new OCRProcessor("/opt/homebrew/Cellar/tesseract 1. Install the leptonica.
    {% tabs %} -{% highlight C# %} +{% highlight bash %} sudo apt-get install libleptonica-dev @@ -299,7 +299,7 @@ sudo apt-get install libleptonica-dev 2.Install the tesseract.
    {% tabs %} -{% highlight C# %} +{% highlight bash %} sudo apt-get install tesseract-ocr-eng @@ -311,7 +311,7 @@ sudo apt-get install tesseract-ocr-eng 3. Copy the binaries (liblept.so and libtesseract.so) to the missing files exception folder in the project location.
    {% tabs %} -{% highlight C# %} +{% highlight bash %} cp /usr/lib/x86_64-linux-gnu/liblept.so /home/syncfusion/linuxdockersample/linuxdockersample/bin/Debug/net7.0/liblept1753.so @@ -319,7 +319,7 @@ cp /usr/lib/x86_64-linux-gnu/liblept.so /home/syncfusion/linuxdockersample/linux {% endtabs %}
    {% tabs %} -{% highlight C# %} +{% highlight bash %} cp /usr/lib/x86_64-linux-gnu/libtesseract.so.4 /home/syncfusion/linuxdockersample/linuxdockersample/bin/Debug/net7.0/libSyncfusionTesseract.so @@ -349,7 +349,7 @@ To resolve this problem, you should install all required dependencies in your Li Step 1: Execute the following command in terminal window to check dependencies are installed properly. {% tabs %} -{% highlight C# %} +{% highlight bash %} ldd liblept1753.so ldd libSyncfusionTesseract.so @@ -359,7 +359,7 @@ ldd libSyncfusionTesseract.so Run the following commands in terminal
    Step 1: {% tabs %} -{% highlight C# %} +{% highlight bash %} sudo apt-get install libleptonica-dev libjpeg62 @@ -367,7 +367,7 @@ sudo apt-get install libleptonica-dev libjpeg62 {% endtabs %} Step 2: {% tabs %} -{% highlight C# %} +{% highlight bash %} ln -s /usr/lib/x86_64-linux-gnu/libtiff.so.6 /usr/lib/x86_64-linux-gnu/libtiff.so.5 @@ -375,7 +375,7 @@ ln -s /usr/lib/x86_64-linux-gnu/libtiff.so.6 /usr/lib/x86_64-linux-gnu/libtiff.s {% endtabs %} Step 3: {% tabs %} -{% highlight C# %} +{% highlight bash %} ln -s /lib/x86_64-linux-gnu/libdl.so.2 /usr/lib/x86_64-linux-gnu/libdl.so @@ -403,28 +403,18 @@ ln -s /lib/x86_64-linux-gnu/libdl.so.2 /usr/lib/x86_64-linux-gnu/libdl.so {% tabs %} -{% highlight C# %} +{% highlight bash %} FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base - RUN apt-get update && \ - apt-get install -yq --no-install-recommends \ - libgdiplus libc6-dev libleptonica-dev libjpeg62 - RUN ln -s /usr/lib/x86_64-linux-gnu/libtiff.so.6 /usr/lib/x86_64-linux-gnu/libtiff.so.5 - RUN ln -s /lib/x86_64-linux-gnu/libdl.so.2 /usr/lib/x86_64-linux-gnu/libdl.so - - USER app - WORKDIR /app - EXPOSE 8080 - EXPOSE 8081 {% endhighlight %} @@ -491,15 +481,15 @@ NuGet: Exception -The application failed to load Tesseract OCR DLLs when hosted on IIS, resulting in the error: -Could not find a part of the path 'C:\inetpub\wwwroot\VizarCore\x64'. +The application failed to load Tesseract OCR Binaries when hosted on IIS, resulting in the error: +Could not find a part of the path 'C:\inetpub\wwwroot\YourApp\x64'. Reason - * IIS couldn't load the required Tesseract and Leptonica DLLs because some system components were missing.
    + * IIS couldn't load the required Tesseract and Leptonica Binaries because some system components were missing.
    * The Visual C++ Redistributables for VS2015-VS2022 (x86 and x64) were not installed.
    * IIS on a 64-bit server needs both redistributables to load native libraries correctly.
    * The application's folder paths and permissions were not properly set up for OCR binaries.
    @@ -569,7 +559,7 @@ Update your deployment YAML to include a writable temporary directory with `empt

    {% tabs %} -{% highlight C# %} +{% highlight yaml %} spec: containers: @@ -594,7 +584,7 @@ To ensure your container has permission to write to mounted volumes, add:

    {% tabs %} -{% highlight C# %} +{% highlight yaml %} securityContext: runAsUser: 1000 # safer than root @@ -612,7 +602,7 @@ If persistent storage is required, configure Azure Files:

    {% tabs %} -{% highlight C# %} +{% highlight yaml %} volumes: - name: azurefile diff --git a/Document-Processing/Data-Extraction/NET/ocr-processor/WPF.md b/Document-Processing/Data-Extraction/NET/ocr-processor/WPF.md index 7b159d2dbc..972c249e63 100644 --- a/Document-Processing/Data-Extraction/NET/ocr-processor/WPF.md +++ b/Document-Processing/Data-Extraction/NET/ocr-processor/WPF.md @@ -28,7 +28,7 @@ N> 2. Starting with v16.2.0.x, if you reference Syncfusion® assem Step 3: Add a new button in **MainWindow.xaml** to perform OCR as follows. {% tabs %} -{% highlight CSHTML %} +{% highlight XAML %} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +{% endhighlight %} + +{% endtabs %} + +When the application is executed, the standard RichTextBox control is displayed as illustrated below. +![WPF Standard RichTextBox](../Getting-Started_images/wpf-standard-sfrichtextboxadv.png) + +N> [View Sample in GitHub](https://github.com/SyncfusionExamples/WPF-RichTextBox-Examples/tree/main/Samples/Standard%20RichTextBox). \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/FAQ-Section/Why-does-out-of-memory-exception-throw-on-opening-large-size-documents-in-SfRichTextBoxAdv.md b/Document-Processing/Word/Word-Processor/wpf/FAQ-Section/Why-does-out-of-memory-exception-throw-on-opening-large-size-documents-in-SfRichTextBoxAdv.md index d47168b63d..54a09153a7 100644 --- a/Document-Processing/Word/Word-Processor/wpf/FAQ-Section/Why-does-out-of-memory-exception-throw-on-opening-large-size-documents-in-SfRichTextBoxAdv.md +++ b/Document-Processing/Word/Word-Processor/wpf/FAQ-Section/Why-does-out-of-memory-exception-throw-on-opening-large-size-documents-in-SfRichTextBoxAdv.md @@ -9,7 +9,7 @@ keywords: out-of-memory-exception # Opening large size documents in WPF SfRichTextBoxAdv control -This page explains Why does out of memory exception throw on opening large size documents in WPF SfRichTextBoxAdv control and more details. +This page explains Why does out of memory exception throw on opening large size documents in [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) control and more details. ## Why does out of memory exception throw on opening large size documents in WPF RichTextBox (SfRichTextBoxAdv) diff --git a/Document-Processing/Word/Word-Processor/wpf/Find-and-Replace.md b/Document-Processing/Word/Word-Processor/wpf/Find-and-Replace.md index b7167c04f3..4c9a53bde3 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Find-and-Replace.md +++ b/Document-Processing/Word/Word-Processor/wpf/Find-and-Replace.md @@ -8,7 +8,7 @@ keywords: search,find,replace-text --- # Find and Replace in WPF RichTextBox (SfRichTextBoxAdv) -The SfRichTextBoxAdv control supports searching text contents in the document. This when used in combination with selection becomes a powerful tool enabling scenarios like highlighting specific parts of the document, applying formatting such as bold or replacing text. You can extend your search by using regular expression to find particular pattern of text in the document. +The [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) control supports searching text contents in the document. This when used in combination with selection becomes a powerful tool enabling scenarios like highlighting specific parts of the document, applying formatting such as bold or replacing text. You can extend your search by using regular expression to find particular pattern of text in the document. The following code example explains how to find the first occurrence of a particular text in the document and apply bold formatting. {% tabs %} {% highlight c# %} @@ -151,4 +151,4 @@ The following code example demonstrates how to show the options pane in SfRichTe {% endtabs %} ![WPF RichTextBox displays Find option](Find-and-Replace_images/wpf-richtextbox-find-option.jpeg) -N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/Getting-Started.md b/Document-Processing/Word/Word-Processor/wpf/Getting-Started.md index 5168e54804..83bc8f4d8e 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Getting-Started.md +++ b/Document-Processing/Word/Word-Processor/wpf/Getting-Started.md @@ -9,7 +9,7 @@ keywords: getting started # Getting started with Syncfusion® WPF RichTextBox -Syncfusion ® [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) enables you to create, edit, view, and print Word documents in WPF applications. This section guides you through the steps to get started and create a RichTextBox in a WPF application. +[WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) enables you to create, edit, view, and print Word documents in WPF applications. This section guides you through the steps to get started and create a RichTextBox in a WPF application. ## Create a RichTextBox in WPF using SfRichTextBoxAdv @@ -19,12 +19,22 @@ The steps below cover the essential tasks required to add and use the SfRichText ### Create a New WPF Project -1. Open **Visual Studio**. -2. Click **Create a new project**. -3. Select **WPF App (.NET Framework)** or **WPF App (.NET Core)**. -4. Click **Next**. -5. Enter the **project name** and other required details. -6. Click **Create**. +- Open **Visual Studio**. +- Click **Create a new project**. +- In the **Create a new project** window, search for **WPF App**, and select a template based on your requirement: + - **WPF Application (.NET)** + - **WPF App (.NET Framework)** +- Click **Next**, and enter the following details: + - **Project name**: `DocumentEditor` + - **Location**: Choose your preferred location + - **Solution name**: `DocumentEditor` + +N> The **project name** is used as the default namespace (for example, in `x:Class`). It is recommended to use **DocumentEditor** to match the code examples provided. + +- Select the **target framework**: + - For **.NET** → Click **Next** and choose the **latest supported .NET version** + - For **.NET Framework** → Select the required version in the same window +- Click **Create** ### Add SfRichTextBoxAdv dependencies @@ -36,7 +46,7 @@ The steps below cover the essential tasks required to add and use the SfRichText 1. In Solution Explorer, right-click the project and choose **Manage NuGet Packages**. 2. Search for [Syncfusion.SfRichTextBoxAdv.Wpf](https://www.nuget.org/packages/Syncfusion.SfRichTextBoxAdv.WPF) and install the latest version. -3. Ensure the necessary dependencies are installed correctly, and the project is restored. +3. Ensure the [necessary dependencies](https://help.syncfusion.com/wpf/control-dependencies#sfrichtextboxadv) are installed correctly, and the project is restored. **Using Package Manager Console:** @@ -83,7 +93,7 @@ Open the Toolbox window and drag the **SfRichTextBoxAdv** control onto the Desig To add the control manually in XAML, follow these steps: -1. Import Syncfusion® WPF schema http://schemas.syncfusion.com/wpf or SfRichTextBoxAdv control namespace Syncfusion.Windows.Controls.RichTextBoxAdv in the XAML page. +1. **Import** the **Syncfusion® WPF schema** `http://schemas.syncfusion.com/wpf` or the **SfRichTextBoxAdv** control namespace `Syncfusion.Windows.Controls.RichTextBoxAdv` in the **XAML page**. 2. Declare SfRichTextBoxAdv control in the XAML page. @@ -108,24 +118,35 @@ To add the control manually in XAML, follow these steps: {% tabcontent Via C# %} -To add the control manually in C#, add the following code in *.xaml.cs +To add the control manually in C#, add the following code in MainWindow.xaml.cs {% tabs %} {% highlight c# tabtitle="MainWindow.xaml.cs" %} using Syncfusion.Windows.Controls.RichTextBoxAdv; +using System.Windows; +using System.Windows.Controls; -public partial class MainWindow : Window +namespace DocumentEditor { - public MainWindow() + public partial class MainWindow : Window { - InitializeComponent(); + public MainWindow() + { + InitializeComponent(); + + // Create a Grid container to use as the layout root + Grid rootGrid = new Grid(); + + // Create an instance of the SfRichTextBoxAdv control + SfRichTextBoxAdv richTextBoxAdv = new SfRichTextBoxAdv(); - // Create an instance of SfRichTextBoxAdv control - SfRichTextBoxAdv richTextBoxAdv = new SfRichTextBoxAdv(); + // Add the SfRichTextBoxAdv control to the Grid + rootGrid.Children.Add(richTextBoxAdv); - // Add the SfRichTextBoxAdv control to the container (Grid) - Root_Grid.Children.Add(richTextBoxAdv); + // Set the Grid as the content of the Window + this.Content = rootGrid; + } } } {% endhighlight %} @@ -136,7 +157,7 @@ public partial class MainWindow : Window ### Run the Application -1. Press **F5** or click **Start** in Visual Studio. +1. Press **F5** or click **Debug → Start Debugging** in Visual Studio. 2. The application launches and displays the **SfRichTextBoxAdv** control. 3. Press Ctrl+O to open an existing document. The selected document will be displayed within the SfRichTextBoxAdv control, as shown below. @@ -158,7 +179,7 @@ If you need a ribbon-based user interface, you can add **SfRichTextRibbon** with 1. In Solution Explorer, right-click the project and choose **Manage NuGet Packages**. 2. Search for [Syncfusion.SfRichTextRibbon.Wpf](https://www.nuget.org/packages/Syncfusion.SfRichTextRibbon.WPF) and install the latest version. -3. Ensure the necessary dependencies are installed correctly, and the project is restored. +3. Ensure the [necessary dependencies](https://help.syncfusion.com/wpf/control-dependencies#sfrichtextribbon) are installed correctly, and the project is restored. **Using Package Manager Console** @@ -191,6 +212,16 @@ The following assembly references are required to use the **SfRichTextRibbon** c {% endtabcontents %} +### Configure RibbonWindow for SfRichTextRibbon + +To use the **SfRichTextRibbon** control in a WPF application, the application must use **Syncfusion® RibbonWindow** instead of the default **Window**. + +1. Import the **Syncfusion® WPF schema** `http://schemas.syncfusion.com/wpf` in the **MainWindow.xaml** file. + +2. Replace the root element **Window** with **syncfusion:RibbonWindow** in the **MainWindow.xaml** file. + +3. Additionally, in the *MainWindow.xaml.cs* file, change the base class of `MainWindow` from **Window** to **RibbonWindow** to enable full support for the **SfRichTextRibbon** control. + ### Add SfRichTextRibbon to the application {% tabcontents %} @@ -206,10 +237,11 @@ Open the Toolbox window and drag the **SfRichTextRibbon** and **SfRichTextBoxAdv {% tabcontent Via XAML %} To add the control manually in XAML, follow these steps: -1. Import the Syncfusion® WPF schema http://schemas.syncfusion.com/wpf or SfRichTextRibbon control namespace Syncfusion.Windows.Controls.RichTextBoxAdv in XAML page. -2. To use the SfRichTextRibbon use the Syncfusion® RibbonWindow instead of Window. -3. Declare the SfRichTextRibbon and SfRichTextBoxAdv controls in XAML page. -4. To make an interaction between SfRichTextRibbon and SfRichTextBoxAdv, bind the SfRichTextBoxAdv as DataContext to the SfRichTextRibbon. +1. Import the **Syncfusion® WPF schema** `http://schemas.syncfusion.com/wpf` or the **SfRichTextRibbon** control namespace `Syncfusion.Windows.Controls.RichTextBoxAdv` in the **XAML page**. + +2. Declare the **SfRichTextRibbon** and **SfRichTextBoxAdv** controls in the **XAML page**. + +3. To establish interaction between **SfRichTextRibbon** and **SfRichTextBoxAdv**, bind the **SfRichTextBoxAdv** as the **DataContext** to the **SfRichTextRibbon**. {% tabs %} {% highlight xaml tabtitle="MainWindow.xaml" %} @@ -236,63 +268,69 @@ To add the control manually in XAML, follow these steps: {% endtabcontent %} {% tabcontent Via C# %} -To add the control manually in C#, add the below code in *.xaml.cs +To add the control manually in C#, add the below code in MainWindow.xaml.cs {% tabs %} {% highlight c# tabtitle="MainWindow.xaml.cs" %} using Syncfusion.Windows.Controls.RichTextBoxAdv; using Syncfusion.Windows.Tools.Controls; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Media; -public partial class MainWindow : RibbonWindow +namespace DocumentEditor { - public MainWindow() + public partial class MainWindow : RibbonWindow { - InitializeComponent(); + public MainWindow() + { + InitializeComponent(); - // Create the root Grid container for layout - Grid rootGrid = new Grid(); + // Create the root Grid container for layout + Grid rootGrid = new Grid(); - // Define the first row (auto-sized for ribbon) - RowDefinition row1 = new RowDefinition(); - row1.Height = GridLength.Auto; + // Define the first row (auto-sized for ribbon) + RowDefinition row1 = new RowDefinition(); + row1.Height = GridLength.Auto; - // Define the second row (fills remaining space for editor) - RowDefinition row2 = new RowDefinition(); - row2.Height = new GridLength(1, GridUnitType.Star); + // Define the second row (fills remaining space for editor) + RowDefinition row2 = new RowDefinition(); + row2.Height = new GridLength(1, GridUnitType.Star); - // Add row definitions to the grid - rootGrid.RowDefinitions.Add(row1); - rootGrid.RowDefinitions.Add(row2); + // Add row definitions to the grid + rootGrid.RowDefinitions.Add(row1); + rootGrid.RowDefinitions.Add(row2); - // Instantiate the rich text editor control - SfRichTextBoxAdv richTextBoxAdv = new SfRichTextBoxAdv(); + // Instantiate the rich text editor control + SfRichTextBoxAdv richTextBoxAdv = new SfRichTextBoxAdv(); - // Set background color for better UI appearance - richTextBoxAdv.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#F1F1F1")); + // Set background color for better UI appearance + richTextBoxAdv.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#F1F1F1")); - // Instantiate the ribbon control - SfRichTextRibbon richTextRibbon = new SfRichTextRibbon(); + // Instantiate the ribbon control + SfRichTextRibbon richTextRibbon = new SfRichTextRibbon(); - // Enable pixel snapping for sharper rendering - richTextRibbon.SnapsToDevicePixels = true; + // Enable pixel snapping for sharper rendering + richTextRibbon.SnapsToDevicePixels = true; - // Set the DataContext of the ribbon to the editor - // This allows the ribbon to interact with the editor (binding commands) - richTextRibbon.DataContext = richTextBoxAdv; + // Set the DataContext of the ribbon to the editor + // This allows the ribbon to interact with the editor (binding commands) + richTextRibbon.DataContext = richTextBoxAdv; - // Position the ribbon in the first row - Grid.SetRow(richTextRibbon, 0); + // Position the ribbon in the first row + Grid.SetRow(richTextRibbon, 0); - // Position the editor in the second row - Grid.SetRow(richTextBoxAdv, 1); + // Position the editor in the second row + Grid.SetRow(richTextBoxAdv, 1); - // Add controls to the grid - rootGrid.Children.Add(richTextRibbon); - rootGrid.Children.Add(richTextBoxAdv); + // Add controls to the grid + rootGrid.Children.Add(richTextRibbon); + rootGrid.Children.Add(richTextBoxAdv); - // Set the constructed grid as the content of the UserControl - this.Content = rootGrid; + // Set the constructed grid as the content of the UserControl + this.Content = rootGrid; + } } } @@ -306,7 +344,7 @@ N> Prefer using `SfRichTextRibbon` within `RibbonWindow` in your application, si ### Run the Application with Ribbon UI -1. Press **F5** or click **Start** in Visual Studio. +1. Press **F5** or click **Debug → Start Debugging** in Visual Studio. 2. The application will launch with the **SfRichTextRibbon** and **SfRichTextBoxAdv** controls. 3. Press **Ctrl + O** or use the **Open** option in the **SfRichTextRibbon** to open a document, which will be displayed in the **SfRichTextBoxAdv** control, with ribbon options available for editing and formatting, as shown below @@ -314,116 +352,9 @@ N> Prefer using `SfRichTextRibbon` within `RibbonWindow` in your application, si N> [View Sample in GitHub](https://github.com/SyncfusionExamples/WPF-RichTextBox-Examples/tree/main/Samples/SfRichTextBoxAdv%20with%20SfRichTextRibbon). -## Use SfRichTextBoxAdv as a standard RichTextBox - -Use the following code to configure the SfRichTextBoxAdv control as a standard RichTextBox with rich text formatting options. - -{% tabs %} -{% highlight xaml tabtitle="MainWindow.xaml" %} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -{% endhighlight %} - -{% endtabs %} - -When the application is executed, the standard RichTextBox control is displayed as illustrated below. -![WPF Standard RichTextBox](Getting-Started_images/wpf-standard-sfrichtextboxadv.png) - -N> [View Sample in GitHub](https://github.com/SyncfusionExamples/WPF-RichTextBox-Examples/tree/main/Samples/Standard%20RichTextBox). - ## Theme -In this walkthrough, you will apply a theme to the Syncfusion® WPF **SfRichTextBoxAdv** and **SfRichTextRibbon** controls. +In this walkthrough, you will apply a theme to the WPF **SfRichTextBoxAdv** and **SfRichTextRibbon** controls. The steps below outline the essential tasks required to configure and apply themes in a WPF application. @@ -496,10 +427,9 @@ To add the controls and apply a theme manually in XAML, follow these steps: **Add SfRichTextBoxAdv and SfRichTextRibbon in XAML** -1. Import the Syncfusion® WPF schema http://schemas.syncfusion.com/wpf or SfRichTextBoxAdv control namespace Syncfusion.Windows.Controls.RichTextBoxAdv in XAML page. -2. To use the SfRichTextRibbon use the Syncfusion® RibbonWindow instead of Window. -3. Declare the SfRichTextRibbon and SfRichTextBoxAdv controls in XAML page. -4. To make an interaction between SfRichTextRibbon and SfRichTextBoxAdv, bind the SfRichTextBoxAdv as DataContext to SfRichTextRibbon. +Refer to the following link for detailed instructions: + +[Add SfRichTextBoxAdv and SfRichTextRibbon in XAML](https://help.syncfusion.com/document-processing/word/word-processor/wpf/getting-started?tabcontent=via-xaml#add-ribbon-ui-to-sfrichtextboxadv) **Apply Theme in XAML** @@ -514,7 +444,7 @@ To add the controls and apply a theme manually in XAML, follow these steps: @@ -538,67 +468,73 @@ N> - The applied theme is automatically inherited by all child controls. {% endtabcontent %} {% tabcontent Via C# %} -To apply a theme programmatically in C#, add the below code in *.xaml.cs +To apply a theme programmatically in C#, add the below code in MainWindow.xaml.cs {% tabs %} {% highlight c# tabtitle="MainWindow.xaml.cs" %} +using Syncfusion.SfSkinManager; using Syncfusion.Windows.Controls.RichTextBoxAdv; using Syncfusion.Windows.Tools.Controls; -using Syncfusion.SfSkinManager; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Media; -public partial class MainWindow : RibbonWindow +namespace DocumentEditor { - public MainWindow() + public partial class MainWindow : RibbonWindow { - InitializeComponent(); + public MainWindow() + { + InitializeComponent(); - // Create the root Grid container for layout - Grid rootGrid = new Grid(); + // Create the root Grid container for layout + Grid rootGrid = new Grid(); - // Define the first row (auto-sized for ribbon) - RowDefinition row1 = new RowDefinition(); - row1.Height = GridLength.Auto; + // Define the first row (auto-sized for ribbon) + RowDefinition row1 = new RowDefinition(); + row1.Height = GridLength.Auto; - // Define the second row (fills remaining space for editor) - RowDefinition row2 = new RowDefinition(); - row2.Height = new GridLength(1, GridUnitType.Star); + // Define the second row (fills remaining space for editor) + RowDefinition row2 = new RowDefinition(); + row2.Height = new GridLength(1, GridUnitType.Star); - // Add row definitions to the grid - rootGrid.RowDefinitions.Add(row1); - rootGrid.RowDefinitions.Add(row2); + // Add row definitions to the grid + rootGrid.RowDefinitions.Add(row1); + rootGrid.RowDefinitions.Add(row2); - // Instantiate the rich text editor control - SfRichTextBoxAdv richTextBoxAdv = new SfRichTextBoxAdv(); + // Instantiate the rich text editor control + SfRichTextBoxAdv richTextBoxAdv = new SfRichTextBoxAdv(); - // Set background color for better UI appearance - richTextBoxAdv.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#F1F1F1")); + // Set background color for better UI appearance + richTextBoxAdv.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#F1F1F1")); - // Instantiate the ribbon control - SfRichTextRibbon richTextRibbon = new SfRichTextRibbon(); + // Instantiate the ribbon control + SfRichTextRibbon richTextRibbon = new SfRichTextRibbon(); - // Enable pixel snapping for sharper rendering - richTextRibbon.SnapsToDevicePixels = true; + // Enable pixel snapping for sharper rendering + richTextRibbon.SnapsToDevicePixels = true; - // Set the DataContext of the ribbon to the editor - // This allows the ribbon to interact with the editor (binding commands) - richTextRibbon.DataContext = richTextBoxAdv; + // Set the DataContext of the ribbon to the editor + // This allows the ribbon to interact with the editor (binding commands) + richTextRibbon.DataContext = richTextBoxAdv; - // Position the ribbon in the first row - Grid.SetRow(richTextRibbon, 0); + // Position the ribbon in the first row + Grid.SetRow(richTextRibbon, 0); - // Position the editor in the second row - Grid.SetRow(richTextBoxAdv, 1); + // Position the editor in the second row + Grid.SetRow(richTextBoxAdv, 1); - // Add controls to the grid - rootGrid.Children.Add(richTextRibbon); - rootGrid.Children.Add(richTextBoxAdv); + // Add controls to the grid + rootGrid.Children.Add(richTextRibbon); + rootGrid.Children.Add(richTextBoxAdv); - // Set the constructed grid as the content of the UserControl - this.Content = rootGrid; + // Set the constructed grid as the content of the UserControl + this.Content = rootGrid; - // Applies the Windows 11 Light theme to the window - SfSkinManager.SetTheme(this, new Theme() { ThemeName = "Windows11Light" }); + // Applies the Windows 11 Light theme to the window + SfSkinManager.SetTheme(this, new Theme() { ThemeName = "Windows11Light" }); + } } } @@ -610,7 +546,7 @@ public partial class MainWindow : RibbonWindow ### Run the Application with Theme Applied -1. Press **F5** or click **Start** in Visual Studio. +1. Press **F5** or click **Debug → Start Debugging** in Visual Studio. 2. The application will launch with the **SfRichTextRibbon** and **SfRichTextBoxAdv** controls using the **Windows 11 Light theme**. 3. Press **Ctrl + O** or use the **Open** option in the **SfRichTextRibbon** to open a document. 4. The document is displayed in the editor, along with the themed ribbon and editor interface, as shown below. @@ -621,6 +557,6 @@ N> [View Sample in GitHub](https://github.com/SyncfusionExamples/WPF-RichTextBox ## See also -- [Import and Export](./Import-and-Export) -- [Selection](./Selection) -- [Commands](./Commands) \ No newline at end of file +- [Import and Export](https://help.syncfusion.com/document-processing/word/word-processor/wpf/import-and-export) +- [Selection](https://help.syncfusion.com/document-processing/word/word-processor/wpf/selection) +- [Commands](https://help.syncfusion.com/document-processing/word/word-processor/wpf/commands) \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/Hyperlink.md b/Document-Processing/Word/Word-Processor/wpf/Hyperlink.md index a8e7843518..ebf4e64752 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Hyperlink.md +++ b/Document-Processing/Word/Word-Processor/wpf/Hyperlink.md @@ -8,7 +8,7 @@ keywords: hyperlink --- # Hyperlink in WPF RichTextBox (SfRichTextBoxAdv) -The SfRichTextBoxAdv supports hyperlink field similar to the Microsoft Word. You can link part of the document content to Internet or file location, mail address or any text. +The [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) supports hyperlink field similar to the Microsoft Word. You can link part of the document content to Internet or file location, mail address or any text. The following code example illustrates how to insert a hyperlink field. {% tabs %} {% highlight xaml %} @@ -254,4 +254,4 @@ RemoveHandler richTextBoxAdv.RequestNavigate, AddressOf RichTextBoxAdv_RequestNa {% endhighlight %} {% endtabs %} -N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/Image.md b/Document-Processing/Word/Word-Processor/wpf/Image.md index d1de5564ac..4bcc75b1f3 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Image.md +++ b/Document-Processing/Word/Word-Processor/wpf/Image.md @@ -8,7 +8,7 @@ keywords: image --- # Image in WPF RichTextBox (SfRichTextBoxAdv) -The SfRichTextBoxAdv allows you to insert images of various formats such as bitmap images (.bmp), JPEG (.jpg, .jpeg), PNG (.png) except Metafile images. +The [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) allows you to insert images of various formats such as bitmap images (.bmp), JPEG (.jpg, .jpeg), PNG (.png) except Metafile images. The following code example illustrates how to insert picture into the SfRichTextBoxAdv document through UI Command. {% tabs %} {% highlight xaml %} @@ -31,4 +31,4 @@ Text wrapping refers to how images are fit with surrounding text in a document. Starting from v19.1.0.x, RichTextBox preserves the position properties of the image and displays the image based on position properties. It does not support modifying the position properties. Whereas the image will be automatically moved along with text edited if it is positioned relative to the line or paragraph. N> At present, the image with text wrapping style `In-Line with Text` can only be dragged and dropped anywhere in the document. -You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/Import-and-Export.md b/Document-Processing/Word/Word-Processor/wpf/Import-and-Export.md index f4e7a6fd42..4355770482 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Import-and-Export.md +++ b/Document-Processing/Word/Word-Processor/wpf/Import-and-Export.md @@ -8,7 +8,7 @@ keywords: import, export, load, save --- # Import and Export in WPF RichTextBox (SfRichTextBoxAdv) -The SfRichTextBoxAdv allows you to import/export word documents (.docx, .doc), rich text format documents (.rtf), HTML documents (.htm, .html), XAML documents (.xaml) and text documents (.txt). +The [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) allows you to import/export word documents (.docx, .doc), rich text format documents (.rtf), HTML documents (.htm, .html), XAML documents (.xaml) and text documents (.txt). The following sample code demonstrates how to import contents from a file into SfRichTextBoxAdv. {% tabs %} {% highlight c# %} @@ -188,4 +188,4 @@ This event is triggered after the document is successfully saved. N> This API is supported starting from release version v18.2.0.X. -You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/Layout-Types.md b/Document-Processing/Word/Word-Processor/wpf/Layout-Types.md index 76728928b5..4c91a63cb4 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Layout-Types.md +++ b/Document-Processing/Word/Word-Processor/wpf/Layout-Types.md @@ -8,7 +8,7 @@ keywords: layout-types --- # Layout Types in WPF RichTextBox (SfRichTextBoxAdv) -The SfRichTextBoxAdv control allows you to choose between the following layout types. +The [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) control allows you to choose between the following layout types. * Pages @@ -107,4 +107,4 @@ richTextBoxAdv.LayoutType = LayoutType.Block ![WPF RichTextBox with Box Layout](Layout-Types_images/wpf-richtextbox-box-layout.jpeg) -N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/List.md b/Document-Processing/Word/Word-Processor/wpf/List.md index 08fb660154..2f7a18ddc6 100644 --- a/Document-Processing/Word/Word-Processor/wpf/List.md +++ b/Document-Processing/Word/Word-Processor/wpf/List.md @@ -8,7 +8,7 @@ keywords: list --- # List in WPF RichTextBox (SfRichTextBoxAdv) -The SfRichTextBoxAdv supports both the single-level and multilevel lists similar to the Microsoft Word. Lists are used to organize data as step-by-step instructions in documents for easy understanding of key points. +The [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) supports both the single-level and multilevel lists similar to the Microsoft Word. Lists are used to organize data as step-by-step instructions in documents for easy understanding of key points. ## Single Level List @@ -333,4 +333,4 @@ richTextBoxAdv.Selection.ParagraphFormat.ListLevelNumber = 0 {% endhighlight %} {% endtabs %} -N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/Localization.md b/Document-Processing/Word/Word-Processor/wpf/Localization.md index b0cb7f904c..56a9501c3f 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Localization.md +++ b/Document-Processing/Word/Word-Processor/wpf/Localization.md @@ -9,7 +9,7 @@ keywords: localization --- # Localization in WPF RichTextBox (SfRichTextBoxAdv) -Localization is the process of configuring the application to a specific language. SfRichTextBoxAdv provides support to localize all the static text in ribbon and all its dialogs. Localization can be done by adding resource file (Resx) and setting the specific culture in the application. +Localization is the process of configuring the application to a specific language. [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) provides support to localize all the static text in ribbon and all its dialogs. Localization can be done by adding resource file (Resx) and setting the specific culture in the application. ## Setting Current UI Culture @@ -60,4 +60,4 @@ The following screenshot shows the localization in SfRichTextBoxAdv and SfRichTe ![Displaying Localized Text in WPF RichTextBoxAdv and RichTextRibbon](Localization_images/wpf-richtextbox-localized-text.jpeg) -N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/MVVM.md b/Document-Processing/Word/Word-Processor/wpf/MVVM.md index b15a0b6186..d5eb481185 100644 --- a/Document-Processing/Word/Word-Processor/wpf/MVVM.md +++ b/Document-Processing/Word/Word-Processor/wpf/MVVM.md @@ -8,7 +8,7 @@ keywords: mvvm --- # MVVM in WPF RichTextBox (SfRichTextBoxAdv) -The SfRichTextBoxAdv control can be used with Model-View-View Model (MVVM) pattern. This section will demonstrate how to use the SfRichTextBoxAdv control with MVVM pattern. +The [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) control can be used with Model-View-View Model (MVVM) pattern. This section will demonstrate how to use the SfRichTextBoxAdv control with MVVM pattern. ## Creating a View Model @@ -517,4 +517,4 @@ The following code example demonstrates how to create XAML view with SfRichTextB {% endtabs %} -N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/Mini-Toolbar.md b/Document-Processing/Word/Word-Processor/wpf/Mini-Toolbar.md index 1b3f77746e..216b2860fc 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Mini-Toolbar.md +++ b/Document-Processing/Word/Word-Processor/wpf/Mini-Toolbar.md @@ -8,7 +8,7 @@ keywords: mini-toolbar --- # Mini Toolbar in WPF RichTextBox (SfRichTextBoxAdv) -The SfRichTextBoxAdv supports built-in mini toolbar to provide rich text formatting options such as Bold, Italic etc. The following screenshot shows built-in mini toolbar of SfRichTextBoxAdv control. +The [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) supports built-in mini toolbar to provide rich text formatting options such as Bold, Italic etc. The following screenshot shows built-in mini toolbar of SfRichTextBoxAdv control. ![WPF RichTextBox displays Mini Toolbar](Mini-Toolbar_images/wpf-richtextbox-mini-toolbar.jpeg) ## Enable/Disable Mini Toolbar @@ -38,4 +38,4 @@ richTextBoxAdv.EnableMiniToolBar = False {% endhighlight %} {% endtabs %} -N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/Overview.md b/Document-Processing/Word/Word-Processor/wpf/Overview.md index 27d50c7a9d..c348b9d713 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Overview.md +++ b/Document-Processing/Word/Word-Processor/wpf/Overview.md @@ -8,7 +8,7 @@ keywords: overview, richtextboxadv, sfrichtextboxadv --- # Overview of the Syncfusion® WPF RichTextBox -The Syncfusion ® [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) is a feature-rich, user-interactive control that enables viewing, editing, and printing rich text content with advanced formatting and layout capabilities, supporting elements such as text, images, tables, paragraphs, and comments. +The [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) is a feature-rich, user-interactive control that enables viewing, editing, and printing rich text content with advanced formatting and layout capabilities, supporting elements such as text, images, tables, paragraphs, and comments. ![Output of WPF RichTextBox](./Overview_images/wpf-richtextbox.png) diff --git a/Document-Processing/Word/Word-Processor/wpf/Printing-Contents.md b/Document-Processing/Word/Word-Processor/wpf/Printing-Contents.md index 87f53ca269..e4de1e5cea 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Printing-Contents.md +++ b/Document-Processing/Word/Word-Processor/wpf/Printing-Contents.md @@ -8,7 +8,7 @@ keywords: printing --- # Printing Contents in WPF RichTextBox (SfRichTextBoxAdv) -The SfRichTextBoxAdv supports API to print the rich text content rendered as pages using the print dialog. +The [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) supports API to print the rich text content rendered as pages using the print dialog. The following sample code demonstrates how to print the document content as pages. {% tabs %} {% highlight c# %} @@ -96,4 +96,4 @@ richTextBoxAdv.EditorSettings.PrintComments = False N> In order to invoke printing, the standard keyboard shortcut CTRL + P can also be used. -You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/Selection.md b/Document-Processing/Word/Word-Processor/wpf/Selection.md index fcf25bbbd9..9ba6e24362 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Selection.md +++ b/Document-Processing/Word/Word-Processor/wpf/Selection.md @@ -8,7 +8,7 @@ keywords: selection --- # Selection in WPF RichTextBox (SfRichTextBoxAdv) -The SfRichTextBoxAdv supports selecting a portion of the document either through UI interactions by using mouse, touch, keyboard or through supported APIs. +The [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) supports selecting a portion of the document either through UI interactions by using mouse, touch, keyboard or through supported APIs. The following sample code demonstrates how to retrieve text position from document using paragraph instance and offset value. {% tabs %} {% highlight c# %} @@ -447,4 +447,4 @@ Dim isDeleted As Boolean = richTextBoxAdv.Selection.Delete() {% endtabs %} N> This API is supported starting from release version v18.2.0.X. -You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/Shapes.md b/Document-Processing/Word/Word-Processor/wpf/Shapes.md index 0d9853dbce..54647ede8b 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Shapes.md +++ b/Document-Processing/Word/Word-Processor/wpf/Shapes.md @@ -7,7 +7,7 @@ documentation: ug keywords: shapes, text-box --- # Shapes in WPF RichTextBox (SfRichTextBoxAdv) -Shapes are drawing objects that include a text box, rectangles, lines, curves, circles, etc. It can be preset or custom geometry. At present, RichTextBox does not have support to insert shapes. however, if the document contains a shape while importing, it will be preserved properly. +Shapes are drawing objects that include a text box, rectangles, lines, curves, circles, etc. It can be preset or custom geometry. At present, [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) does not have support to insert shapes. however, if the document contains a shape while importing, it will be preserved properly. N> Starting from v18.3.0.x, the shape preservation is supported. @@ -34,7 +34,7 @@ Starting from v19.1.0.x, RichTextBox preserves the position properties of the sh N> At present, the shape with text wrapping style `In-Line with Text` can only be dragged and dropped anywhere in the document. -You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. +You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. diff --git a/Document-Processing/Word/Word-Processor/wpf/Spell-Check.md b/Document-Processing/Word/Word-Processor/wpf/Spell-Check.md index bb48281b50..b4c0c422ae 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Spell-Check.md +++ b/Document-Processing/Word/Word-Processor/wpf/Spell-Check.md @@ -8,7 +8,7 @@ keywords: spell-check --- # Spell Check in WPF RichTextBox (SfRichTextBoxAdv) -The SfRichTextBoxAdv provides support for checking spelling mistakes in the rich text document content. It also supports enabling the following spell checking options. +The [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) provides support for checking spelling mistakes in the rich text document content. It also supports enabling the following spell checking options. * Ignore words in UPPERCASE. @@ -119,4 +119,4 @@ The following code example demonstrates how to show the spelling pane in SfRichT ![WPF RichTextBox displays spellcheck option](SpellCheck_images/wpf-richtextbox-spellcheck-option.PNG) N> In order to enable spell checking functionality based on particular language, language pack for .NET Framework should be installed in the machine. -You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. +You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. diff --git a/Document-Processing/Word/Word-Processor/wpf/Styles-and-Templates.md b/Document-Processing/Word/Word-Processor/wpf/Styles-and-Templates.md index e1b39eb380..6d0fc7fae1 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Styles-and-Templates.md +++ b/Document-Processing/Word/Word-Processor/wpf/Styles-and-Templates.md @@ -8,7 +8,7 @@ keywords: styles-and-templates, custom-style --- # Styles and Templates in WPF RichTextBox (SfRichTextBoxAdv) -This section describes the styles and templates for the SfRichTextBoxAdv control. The Template defines the structure of the SfRichTextBoxAdv control and the Style defines its visual appearance. You can modify the default Control template to define a unique appearance for the control. +This section describes the styles and templates for the [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) control. The Template defines the structure of the SfRichTextBoxAdv control and the Style defines its visual appearance. You can modify the default Control template to define a unique appearance for the control. The following XAML shows the default style and template for the SfRichTextBoxAdv control. {% tabs %} {% highlight xaml %} @@ -831,4 +831,4 @@ The following code example demonstrates how to apply the custom style for SfRich {% endtabs %} -N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/Table.md b/Document-Processing/Word/Word-Processor/wpf/Table.md index 58932c6654..a46c525c25 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Table.md +++ b/Document-Processing/Word/Word-Processor/wpf/Table.md @@ -8,7 +8,7 @@ keywords: table --- # Table in WPF RichTextBox (SfRichTextBoxAdv) -The SfRichTextBoxAdv allows you to add tables into the rich text document. You can insert any rows or columns to the existing table and also can delete existing rows and columns. The SfRichTextBoxAdv also allows you to merge the selected cells into one (both vertically and horizontally). +The [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) allows you to add tables into the rich text document. You can insert any rows or columns to the existing table and also can delete existing rows and columns. The SfRichTextBoxAdv also allows you to merge the selected cells into one (both vertically and horizontally). The following code example illustrates how to add tables into the rich text document. {% tabs %} @@ -247,4 +247,4 @@ The following code example illustrates how to Button UI Command for deleting a r {% endtabs %} -N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/Text-Wrapping-Style.md b/Document-Processing/Word/Word-Processor/wpf/Text-Wrapping-Style.md index 3e8dbd1679..ddbcbda7c5 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Text-Wrapping-Style.md +++ b/Document-Processing/Word/Word-Processor/wpf/Text-Wrapping-Style.md @@ -7,7 +7,7 @@ documentation: ug keywords: text-wrapping, text-wrapping-style --- # Text Wrapping Style in WPF RichTextBox (SfRichTextBoxAdv) -Text wrapping refers to how images and shapes are fit with surrounding text in a document. Currently, RichTextBox has only preservation support for image and textbox shape with below wrapping styles. +Text wrapping refers to how images and shapes are fit with surrounding text in a document. Currently, [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) has only preservation support for image and textbox shape with below wrapping styles. ## In-Line with Text In this option, the image or shape is placed on the same line surrounding with text like any other word or letter. This image or shape will be automatically moved along with the text while editing, whereas the other options denote that the image or shape stays in a fixed position while the text shifts and wraps around it. @@ -40,4 +40,4 @@ N> Tight and Through styles are also displayed like square wrapping style in Ric ![view of shape with square wrapping style in RichTextBox](Text-Wrapping-Style_images/square-textwrapping.PNG) -N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/Undo-Redo.md b/Document-Processing/Word/Word-Processor/wpf/Undo-Redo.md index 25fcbfbebf..e188cbe13f 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Undo-Redo.md +++ b/Document-Processing/Word/Word-Processor/wpf/Undo-Redo.md @@ -8,7 +8,7 @@ keywords: undo-redo --- # Undo Redo in WPF RichTextBox (SfRichTextBoxAdv) -The SfRichTextBoxAdv provides history preservation support, which means each editing operation performed against its document content will be preserved in history. You can easily undo any editing action with ease. The undone actions will also be preserved in a separate stack enabling you to redo the action again. +The [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) provides history preservation support, which means each editing operation performed against its document content will be preserved in history. You can easily undo any editing action with ease. The undone actions will also be preserved in a separate stack enabling you to redo the action again. N> Currently, the number of actions that can be preserved in both undo and redo stacks is limited to 500. @@ -98,4 +98,4 @@ richTextBoxAdv.EditorSettings.CanUndoStyle = false {% endtabs %} N> This API is supported starting from release version v18.1.0.X. -You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/Virtualization.md b/Document-Processing/Word/Word-Processor/wpf/Virtualization.md index c897708a81..4762936905 100644 --- a/Document-Processing/Word/Word-Processor/wpf/Virtualization.md +++ b/Document-Processing/Word/Word-Processor/wpf/Virtualization.md @@ -8,6 +8,6 @@ keywords: virtualization --- # Virtualization in WPF RichTextBox (SfRichTextBoxAdv) -The SfRichTextBoxAdv control supports UI Virtualization. UI elements are created only for the contents that are visible in the viewer. The UI elements are created for the contents that become visible while scrolling the viewer. This reduces the main memory utilization and also improves UI performance. +The [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) (SfRichTextBoxAdv) control supports UI Virtualization. UI elements are created only for the contents that are visible in the viewer. The UI elements are created for the contents that become visible while scrolling the viewer. This reduces the main memory utilization and also improves UI performance. -N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/wpf-controls/richtextbox) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file +N> You can refer to our [WPF RichTextBox](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) feature tour page for its groundbreaking feature representations.You can also explore our [WPF RichTextBox example](https://github.com/syncfusion/docx-editor-sdk-wpf-demos) to knows how to render and configure the editing tools. \ No newline at end of file diff --git a/Document-Processing/Word/Word-Processor/wpf/ui-builder-skill.md b/Document-Processing/Word/Word-Processor/wpf/ui-builder-skill.md index 4e07a8c37d..e74a40c227 100644 --- a/Document-Processing/Word/Word-Processor/wpf/ui-builder-skill.md +++ b/Document-Processing/Word/Word-Processor/wpf/ui-builder-skill.md @@ -10,9 +10,9 @@ keywords: WPF UI Builder, Skills, AI Assistants, DOCX Editor SDK, Agent Skills # WPF UI Builder Skill with DOCX Editor for AI Assistants -**Syncfusion® WPF UI Builder Skill** is an AI-powered agent skill that accelerates WPF DOCX Editor development by transforming natural-language UI requirements into production-ready code using Syncfusion® WPF components. +**Syncfusion® WPF UI Builder Skill** is an AI-powered agent skill that accelerates [WPF DOCX Editor](https://www.syncfusion.com/docx-editor-sdk/wpf-docx-editor) development by transforming natural-language UI requirements into production-ready code using Syncfusion® WPF components. -Integrated with your AI-powered IDE, it leverages deep knowledge of **Syncfusion® DOCX Editor** and other WPF components to deliver accurate and ready-to-use code. +Integrated with your AI-powered IDE, it leverages deep knowledge of **WPF DOCX Editor** and other WPF components to deliver accurate and ready-to-use code. By combining intelligent code generation with best practices, accessibility standards, and design-system consistency, WPF UI Builder helps you rapidly build scalable Document editing applications and user interfaces without leaving your development workflow. ## Prerequisites diff --git a/Document-Processing/ai-tools/ai-powered-development.md b/Document-Processing/ai-tools/ai-powered-development.md new file mode 100644 index 0000000000..bd27c48547 --- /dev/null +++ b/Document-Processing/ai-tools/ai-powered-development.md @@ -0,0 +1,64 @@ +--- +layout: post +title: AI Powered Development | AI Tools | Syncfusion +description: Syncfusion Document SDK AI Tools simplify document processing, editing, and integration, helping you to build smarter applications easily. +platform: document-processing +control: AI Tools +documentation: ug +--- + +# AI-Powered Development with Syncfusion Document Processing Components + +Syncfusion AI Tools accelerate development by generating accurate code, providing contextual guidance, automating document workflows, and creating production-ready UIs from natural-language prompts. By reducing research, coding, debugging, and manual effort, developers can build and deliver document-centric applications faster with greater efficiency. + +## AI Solutions + +The following AI tools are available to help you process documents efficiently. + +- [Agent Skills](#agent-skills) +- [Agentic UI Builder](#agentic-ui-builder) +- [AI Agent Tools](#ai-agent-tools) +- [AI Coding Assistant](#ai-coding-assistant) + +### Agent Skills + +Enhance your AI assistant (GitHub Copilot, Cursor, Claude, and more) with real Syncfusion API knowledge-eliminating hallucinated methods. Install one with pre-built document and code skills and generate accurate, production-ready document code directly within your IDE. Document SDK skills allows executing document operations directly via CSX scripts. + +Learn more about: + +- [Document SDK Skills](https://help.syncfusion.com/document-processing/skills/document-sdk) +- [PDF Viewer SDK Skills](https://help.syncfusion.com/document-processing/skills/pdf-viewer-sdk/component-skills) +- [DOCX Editor SDK Skills](https://help.syncfusion.com/document-processing/skills/docx-editor-sdk/component-skills) +- [Spreadsheet Editor SDK Skills](https://help.syncfusion.com/document-processing/skills/spreadsheet-editor-sdk/component-skills) + +### Agentic UI Builder + +Transforms natural-language prompts into production-ready UIs using real Syncfusion® components. Generates structured, responsive layouts with maintainable architecture. Integrates with AI-powered IDEs to produce accurate code following best practices, accessibility guidelines, and enterprise UI standards-helping developers move quickly from idea to fully functional interfaces within their workflow. + +Learn more about: + +- [PDF Viewer UI Builder](https://help.syncfusion.com/document-processing/skills/pdf-viewer-sdk/ui-builder-skills) +- [DOCX Editor UI Builder](https://help.syncfusion.com/document-processing/skills/docx-editor-sdk/ui-builder-skills) +- [Spreadsheet UI Builder](https://help.syncfusion.com/document-processing/skills/spreadsheet-editor-sdk/ui-builder-skills) + +### AI Agent Tools + +Enable AI agents to autonomously handle document tasks at runtime-such as creating reports, converting files, and extracting form data-without requiring you to write complex processing logic. When building an application with AI agents, simply add the [Syncfusion.DocumentSDK.AI.AgentTools](https://www.nuget.org/packages/Syncfusion.DocumentSDK.AI.AgentTools) NuGet package and let your agent manage document workflows seamlessly. + +Learn more about [AI Agent Tools](https://help.syncfusion.com/document-processing/ai-agent-tools/overview). + +### AI Coding Assistant + +Integrates with Visual Studio, VS Code, and JetBrains Rider and more to accelerate development. Ask how to implement any feature and instantly receive documentation-backed, copy‑paste‑ready C# code tailored to Syncfusion APIs. + +Learn more about [AI Coding Assistant](https://help.syncfusion.com/document-processing/mcp-server/ai-coding-assistant/overview). + +## Choosing the Right AI Tool + + +| **AI Tool** | **When to Use** | **Best For** | +|-------------|-----------------|--------------| +| **Agent Skills** | Use when AI-generated code is incomplete, incorrect, or missing required configurations. | Producing reliable component implementations, reducing debugging effort, and ensuring proper API usage. | +| **Agentic UI Builder** | Use when creating a new UI, page, or dashboard from scratch. | Rapid UI development, enterprise-grade layouts, and quick prototyping. | +| **AI Agent Tools (Document SDK)** | Use when your .NET application needs to handle and process documents dynamically using AI. | Automating workflows for PDF, Word, Excel, PowerPoint, and Markdown including extraction, redaction, and format conversion. | +| **AI Coding Assistants (MCP Server)** | Use during active development when writing code, debugging issues, or learning APIs. | Feature implementation, troubleshooting, and obtaining instant, accurate coding help through online server. | diff --git a/Document-Processing/introduction.md b/Document-Processing/introduction.md index 992fedccef..336dbe8e09 100644 --- a/Document-Processing/introduction.md +++ b/Document-Processing/introduction.md @@ -68,7 +68,7 @@ The
    -AI Agent Tools +Agent Skills -Enables AI agents to autonomously execute document tasks at runtime - generate reports, convert files, and extract form data - without requiring manual processing logic. Integrate the Syncfusion.DocumentSDK.AIAgentTools NuGet package to extend your agent’s document processing capabilities. -

    Learn more about AI Agent Tools. +Ground your AI coding assistant (GitHub Copilot, Cursor, Claude, and others) in verified Syncfusion APIs - eliminating hallucinated methods. Install one with pre-built document and code skills and generate production-ready document code without leaving your IDE. It also allows executing document operations directly via CSX scripts. +

    Learn more about:

    + -AI Coding Assistant +Agentic UI Builder -Integrates with Visual Studio, VS Code, and JetBrains Rider through MCP Server. Describe your document processing requirement and receive documentation-backed, production-ready C# code instantly. -

    Learn more about AI Coding Assistant. +Transforms natural-language prompts into production-ready UIs using real Syncfusion® components. Generates structured, responsive layouts with maintainable architecture by default. Integrates with AI-powered IDEs to produce accurate code while following best practices, accessibility guidelines, and enterprise UI standards. Helps developers quickly move from idea to fully functional interfaces within their workflow. +

    Learn more about:

    + -Agent Skills +AI Agent Tools (Document SDK) -Ground your AI coding assistant (GitHub Copilot, Cursor, Claude, and others) in verified Syncfusion APIs - eliminating hallucinated methods. Install one with pre-built document and code skills and generate production-ready document code without leaving your IDE. It also allows executing document operations directly via CSX scripts. -

    Learn more about Agent Skills. +Enables AI agents to autonomously execute document tasks at runtime - generate reports, convert files, and extract form data - without requiring manual processing logic. Integrate the Syncfusion.DocumentSDK.AIAgentTools NuGet package to extend your agent’s document processing capabilities. +

    Learn more about AI Agent Tools. -Agentic UI Builder +AI Coding Assistant (MCP Server) -Transforms natural-language prompts into production-ready UIs using real Syncfusion® components. Generates structured, responsive layouts with maintainable architecture by default. Integrates with AI-powered IDEs to produce accurate code while following best practices, accessibility guidelines, and enterprise UI standards. Helps developers quickly move from idea to fully functional interfaces within their workflow. -

    Learn more about: - +Integrates with Visual Studio, VS Code, and JetBrains Rider through MCP Server. Describe your document processing requirement and receive documentation-backed, production-ready C# code instantly. +

    Learn more about AI Coding Assistant. diff --git a/Document-Processing/mcp-server/ai-coding-assistant/getting-started/documentsdk.md b/Document-Processing/mcp-server/ai-coding-assistant/getting-started/documentsdk.md index baf82dbe74..c30b7b3cd1 100644 --- a/Document-Processing/mcp-server/ai-coding-assistant/getting-started/documentsdk.md +++ b/Document-Processing/mcp-server/ai-coding-assistant/getting-started/documentsdk.md @@ -43,19 +43,7 @@ Syncfusion® offers unlimited access to this MCP server. There are This ensures users can fully leverage Syncfusion® components to enhance their development experience without limitations. -## Installation and setup - -Before you can invoke the ```SyncfusionDocumentSDKAssistant``` MCP server, you need to configure your MCP client with these core settings. The **Generic MCP Server Settings** shown below are identical across all clients: - -### Generic MCP Server Settings - - * **npm package name**: ```@syncfusion/documentsdk-assistant``` - * **Type**: stdio (standard input/output transport) - * **Command**: npx - * **Arguments**: -y - * **Server name**: syncfusionDocumentSDKAssistant - -#### API Key Configuration +## API Key Configuration Login to your [Syncfusion account](http://syncfusion.com/account/) and generate an API Key from the [API Key page](https://www.syncfusion.com/account/api-key). Replace `YOUR_API_KEY_FILE_PATH` or `YOUR_API_KEY` in the configuration files with your generated key. @@ -84,21 +72,18 @@ There are two options: SyncfusionDocumentSDKAssistant can be configured in various MCP clients. Below are setup instructions for popular environments: -### Syncfusion® Code Studio +## Setting up in MCP Clients - * In [Code Studio](https://www.syncfusion.com/code-studio/), open MCP Marketplace and navigate to the ```Custom Servers``` tab. - * Enter the Server Name as ```documentsdk-mcp```, choose Server Type as npm package, and set the NPM Package name to ```@syncfusion/documentsdk-assistant```. - * Add an environment variable as ```Syncfusion_API_Key``` and value as your [Syncfusion API key](https://syncfusion.com/account/api-key), then click **Install Server**. - * Once installed, the server will appear in the User Installed Server list and will be added to the **config.yaml** file. - * The server is now ready for use in Code Studio. For more details, refer to the Code Studio [documentation](https://help.syncfusion.com/code-studio/reference/configure-properties/mcp/customservers). +Create a configuration file in your project folder to install the server for your workspace as shown below: -For additional details, see the Code Studio [documentation](https://help.syncfusion.com/code-studio/reference/configure-properties/mcp/customservers). +**Important:** Replace `YOUR_API_KEY_FILE_PATH` with the path to your API key file. -### VS Code (GitHub Copilot MCP) - * To configure an MCP server for a specific workspace, you can create a ```.vscode/mcp.json``` file in your workspace folder. +{% tabs %} -~~~json - { +{% highlight json tabtitle="VS Code" %} +// Create a `.vscode/mcp.json` file in your workspace with the MCP server configuration: + +{ "servers": { "syncfusion-documentsdk-assistant": { "type": "stdio", @@ -115,21 +100,34 @@ For additional details, see the Code Studio [documentation](https://help.syncfus } } } -~~~ - - * After updating the configuration in mcp.json, you’ll notice a “Start” option at the top of the config. This allows you to easily start the SyncfusionDocumentSDKAssistant server directly from the settings interface without additional commands. +{% endhighlight %} - * Confirm that SyncfusionDocumentSDKAssistant is being used (this does not happen automatically). Look for a statement in the output, which is similar to: +{% highlight json tabtitle="Syncfusion Code Studio" %} +// Create a `.codestudio/mcp.json` file in your workspace with the MCP server configuration: - * ```SyncfusionDocumentSDKAssistant is running...``` (in VS Code) - * For more details, refer to the official Visual Studio documentation. - -### Cursor +{ + "servers": { + "syncfusion-documentsdk-assistant": { + "type": "stdio", + "command": "npx", + "args": [ + "-y", + "@syncfusion/documentsdk-assistant@latest" + ], + "env": { + "Syncfusion_API_Key_Path": "YOUR_API_KEY_FILE_PATH", + // or + "Syncfusion_API_Key": "YOUR_API_KEY" + } + } + } + } +{% endhighlight %} -To configure an MCP server for a specific workspace, you can create a .cursor/mcp.json file in your workspace folder. +{% highlight json tabtitle="Cursor" %} +// Create a `.cursor/mcp.json` file in your workspace with the MCP server configuration: -~~~json - { +{ "mcpServers": { "syncfusion-documentsdk-assistant": { "type": "stdio", @@ -146,17 +144,14 @@ To configure an MCP server for a specific workspace, you can create a .cursor/mc } } } -~~~ -For more details, refer to the Cursor documentation. - -### JetBrains IDEs +{% endhighlight %} - * Go to Settings -> Tools -> AI Assistant -> Model Context Protocol (MCP). - * Click + Add to add a new MCP server configuration. - * In the New MCP Server dialog, switch the dropdown as ```As JSON``` and add the following config: +{% highlight json tabtitle="JetBrains IDEs" %} +// Go to Settings -> Tools -> AI Assistant -> Model Context Protocol (MCP). +// Click + Add to add a new MCP server configuration. +// In the New MCP Server dialog, switch the dropdown as `As JSON` and add the following config: -~~~json - { +{ "mcpServers": { "syncfusion-documentsdk-assistant": { "command": "npx", @@ -172,13 +167,11 @@ For more details, refer to the JetBrains documentation. +{% endtabs %} -> For more detailed information about configuring MCP servers in various clients, refer to the official documentations, e.g., [Windsurf](https://docs.windsurf.com/windsurf/cascade/mcp#mcp-config-json) +**Verify Installation:** Check your editor's MCP Server list for `syncfusion-documentsdk-assistant` with "Connected" status to confirm successful installation. ## Usage @@ -198,7 +191,7 @@ To activate the SyncfusionDocumentSDKAssistant MCP server: ### Mode availability -Syncfusion® MCP Servers provide full access to all AI interaction modes — Ask/Chat, Edit, and Agent — across supported MCP clients. +Syncfusion® MCP Servers provide full access to all AI interaction modes - Ask/Chat, Edit, and Agent - across supported MCP clients. ### Best Practices for Effective Usage @@ -219,21 +212,24 @@ Here are some effective ways to use