diff --git a/ai-tools/agent-tools/getting-started.md b/ai-tools/agent-tools/getting-started.md index 074639c7..a0bcc2c5 100644 --- a/ai-tools/agent-tools/getting-started.md +++ b/ai-tools/agent-tools/getting-started.md @@ -62,7 +62,7 @@ Below is a comprehensive example demonstrating the entire workflow from setup to >warning If you are building a multi-user application, see the [Multi-User AI Agent Sessions]({%slug agent-tools-multi-user-scenario%}) article for patterns on isolating document repositories per user and managing concurrent sessions safely. - + ## Security Considerations diff --git a/common-information/clear-output-stream-on-export.md b/common-information/clear-output-stream-on-export.md index 1a54770a..e67f8b67 100644 --- a/common-information/clear-output-stream-on-export.md +++ b/common-information/clear-output-stream-on-export.md @@ -35,13 +35,13 @@ No code changes are required on the consumer side. The clearing happens automati **Example 1: Reusing a MemoryStream for Multiple Exports** - + When reusing a stream, the second `Export()` call truncates the stream to zero length before writing, so only the new document data is present. **Example 2: Exporting to a FileStream** - + Even when opening the file with `FileMode.OpenOrCreate`, the stream is cleared automatically so no leftover data from a previous file remains. diff --git a/common-information/fileformatdetector.md b/common-information/fileformatdetector.md index b89c25fe..9e41da0a 100644 --- a/common-information/fileformatdetector.md +++ b/common-information/fileformatdetector.md @@ -48,7 +48,7 @@ Represents the result of a file format detection operation. The following example demonstrates how to detect the format of a document from a file stream: - + ## See Also diff --git a/getting-started/first-steps.md b/getting-started/first-steps.md index 4f928185..987c3f0f 100644 --- a/getting-started/first-steps.md +++ b/getting-started/first-steps.md @@ -77,7 +77,7 @@ Use the following snippet to create the `RadFlowDocument` instance that the samp #### **Example 1: Create a RadFlowDocument** - + ## Step 5: Import an Existing DOCX File @@ -85,7 +85,7 @@ Use this optional step if you want to start from an existing DOCX file instead o ### Example 2: Import a DOCX File - + ## Step 6: Export the Generated Document @@ -96,7 +96,7 @@ Use [DocxFormatProvider]({%slug radwordsprocessing-formats-and-conversion-docx-d ### Example 3: Export a RadFlowDocument to DOCX - + ### Export the RadFlowDocument to PDF @@ -104,7 +104,7 @@ Use [PdfFormatProvider]({%slug radpdfprocessing-formats-and-conversion-pdf-pdffo ### Example 4: Export a RadFlowDocument to PDF - + ## Step 7: Run the Project and Verify the Output diff --git a/libraries/radpdfprocessing/concepts/clipping.md b/libraries/radpdfprocessing/concepts/clipping.md index 770d7574..29b8ab13 100644 --- a/libraries/radpdfprocessing/concepts/clipping.md +++ b/libraries/radpdfprocessing/concepts/clipping.md @@ -22,7 +22,7 @@ The `Clipping` element exposes a single property: #### __Example 1: Create Clipping__ - + ## Using Clipping @@ -32,7 +32,7 @@ All inheritors of the `ContentElementBase` class expose a `Clipping` property. S #### __Example 2: Use Clipping__ - + diff --git a/libraries/radpdfprocessing/concepts/cmaps.md b/libraries/radpdfprocessing/concepts/cmaps.md index a5febf65..bac6f4a1 100644 --- a/libraries/radpdfprocessing/concepts/cmaps.md +++ b/libraries/radpdfprocessing/concepts/cmaps.md @@ -25,7 +25,7 @@ The **Telerik[.Windows].Documents.CMapUtils** package provides a default impleme >To use this feature, you must add a reference to the **Telerik[.Windows].Documents.CMapUtils package**. #### Example 1: Register Default CMapsProvider - + After you register the `PredefinedCMapsProvider` class, you can import any document containing a predefined CMap table. diff --git a/libraries/radpdfprocessing/concepts/colors-and-color-spaces.md b/libraries/radpdfprocessing/concepts/colors-and-color-spaces.md index 4239d89e..6c6560c1 100644 --- a/libraries/radpdfprocessing/concepts/colors-and-color-spaces.md +++ b/libraries/radpdfprocessing/concepts/colors-and-color-spaces.md @@ -32,7 +32,7 @@ The following example shows how to create an `RgbColor` and assign it as Fill of #### **Create RgbColor** - + ### GrayColor @@ -48,7 +48,7 @@ The following example covers the most common `GrayColor` scenarios: default and #### Create GrayColor - + ### CmykColor @@ -63,7 +63,7 @@ Represents a CMYK (cyan, magenta, yellow, key) color. The `CmykColor` class was #### Create CmykColor - + ![CMYK Color](images/cmyk-color.png) @@ -94,7 +94,7 @@ The `Gradient` class is inherited by the following classes: #### **Example 2: Create LinearGradient** - + The gradient created in **Example 2** is shown in **Figure 1**. @@ -113,7 +113,7 @@ The gradient created in **Example 2** is shown in **Figure 1**. #### **Example 3: Create RadialGradient** - + The result from **Example 3** is shown in **Figure 2**. @@ -146,7 +146,7 @@ Because the `TilingBase` class implements the `IContentRootElement` interface li #### __Example 4: Create Tiling__ - + The tiling created in **Example 4** is shown in **Figure 3**. @@ -159,7 +159,7 @@ The **LAB** color space is device-independent. **L** represents lightness or bri #### **Create LabColor** - + ## See Also diff --git a/libraries/radpdfprocessing/concepts/comply-with-pdfa-standard.md b/libraries/radpdfprocessing/concepts/comply-with-pdfa-standard.md index 13d63b42..61b8fbee 100644 --- a/libraries/radpdfprocessing/concepts/comply-with-pdfa-standard.md +++ b/libraries/radpdfprocessing/concepts/comply-with-pdfa-standard.md @@ -54,13 +54,13 @@ The `PdfFormatProvider` class exports a `RadFixedDocument` to PDF and allows you To comply with any of the standards, set the `ComplianceLevel` property to a value different than `None`: - + ### Accessibility Compliance To comply with the [accessibility]({%slug create-accessible-pdf-documents%}) requirements of the PDF/A-1a, PDF/A-2a, PDF/A-3a, or PDF/UA-1 standards, you must also set the [TaggingStrategy]({%slug radpdfprocessing-model-tagged-pdf%}) property of the `PdfFormatProvider` `PdfExportSettings`. - + This ensures that the exported PDF document is properly tagged, which is essential for meeting these standards' requirements. @@ -72,11 +72,11 @@ This ensures that the exported PDF document is properly tagged, which is essenti When you work with PDF/A-compliant documents, you can specify fallback fonts for the standard fonts to ensure proper rendering when the standard font is unavailable or needs to be replaced: - + If you need to remove all configured fallback fonts, use the `ClearStandardFontFallbacks()` method: - + ## See Also diff --git a/libraries/radpdfprocessing/concepts/fonts.md b/libraries/radpdfprocessing/concepts/fonts.md index 6519231f..1072cc46 100644 --- a/libraries/radpdfprocessing/concepts/fonts.md +++ b/libraries/radpdfprocessing/concepts/fonts.md @@ -79,7 +79,7 @@ There are 14 *Type 1* fonts, known as the standard 14 fonts, that are not embedd | Symbol| | ZapfDingbats| - + >tip These fonts, or their font metrics and suitable substitution fonts, must be available to the consumer application. @@ -87,7 +87,7 @@ RadPdfProcessing introduced a suitable API for replacing the predefined Standard #### Replace a Standard Font - + #### Set a Fallback Font @@ -95,11 +95,11 @@ You can configure fallback fonts for the standard fonts to ensure proper renderi The following example demonstrates how to set a fallback font for a specific standard font: - + To remove all configured fallback fonts, use the `ClearStandardFontFallbacks()` method: - + ## Embedded Fonts @@ -115,23 +115,23 @@ If you want to use a font that is not part of the standard ones, register it usi #### __Example 1: Register font in .NET Framework application__ - + #### __Example 1: Register font in .NET Standard application__ - + ### Creating a Font >tip Each registered font can be obtained from the font repository as a `FontBase` object and applied to a [TextFragment]({%slug radpdfprocessing-model-textfragment%}) through its `Font` property. - + **Example 2** shows how to create a font using `FontsRepository`. #### __Example 2: Create FontBase__ - + You can create fonts that are not explicitly registered. Creating a font that is not registered in the repository with the code from **Example 2** tries to find the font from the ones installed on the machine. diff --git a/libraries/radpdfprocessing/concepts/geometry.md b/libraries/radpdfprocessing/concepts/geometry.md index 7ef6f03d..18ae5c15 100644 --- a/libraries/radpdfprocessing/concepts/geometry.md +++ b/libraries/radpdfprocessing/concepts/geometry.md @@ -41,7 +41,7 @@ This article covers the supported geometry types: #### __Example 1: Create RectangleGeometry__ - + @@ -60,7 +60,7 @@ This article covers the supported geometry types: #### __Example 2: Create PathGeometry__ - + diff --git a/libraries/radpdfprocessing/concepts/imagequality.md b/libraries/radpdfprocessing/concepts/imagequality.md index db964870..4ad0adef 100644 --- a/libraries/radpdfprocessing/concepts/imagequality.md +++ b/libraries/radpdfprocessing/concepts/imagequality.md @@ -34,7 +34,7 @@ To specify the default `ImageQuality` value when exporting to PDF, use the [PdfE #### __Example 1: Set a default value for all images in a document__ - + > The `PdfExportSettings.ImageQuality` property does not affect the quality of images imported from a PDF document. Such images are preserved using `EncodedImageData` (see [ImageQuality and EncodedImageData Class](#imagequality-and-encodedimagedata-class)). `PdfExportSettings.ImageQuality` only affects the export quality of images created using an image stream or a `BitmapSource`. @@ -44,7 +44,7 @@ If you need a particular image to be exported with a different `ImageQuality` va #### __Example 2: Set the image quality of an image__ - + ### ImageQuality and EncodedImageData Class diff --git a/libraries/radpdfprocessing/concepts/position.md b/libraries/radpdfprocessing/concepts/position.md index f862b17a..da440a80 100644 --- a/libraries/radpdfprocessing/concepts/position.md +++ b/libraries/radpdfprocessing/concepts/position.md @@ -50,7 +50,7 @@ The `MatrixPosition` class exposes a static `Default` property, which represents #### __Example 1: Transform MatrixPosition__ - + The resulting matrix position is translated both horizontally and vertically by 50. @@ -68,7 +68,7 @@ The `SimplePosition` class exposes a static `Default` property which represents #### __Example 2: Transform SimplePosition__ - + The resulting simple position is translated both horizontally and vertically by 30, because of the transformation overwriting. diff --git a/libraries/radpdfprocessing/cross-platform/images.md b/libraries/radpdfprocessing/cross-platform/images.md index a22b809a..f82770d6 100644 --- a/libraries/radpdfprocessing/cross-platform/images.md +++ b/libraries/radpdfprocessing/cross-platform/images.md @@ -43,7 +43,7 @@ PdfProcessing provides a default implementation called `ImagePropertiesResolver` #### **Example 1: Set the default implementation of the ImagePropertiesResolver class** - + ### Custom Implementation for ImagePropertiesResolver @@ -67,7 +67,7 @@ The **Telerik.Documents.ImageUtils** package provides a default implementation o #### **Example 2: Set the default implementation of the JpegImageConverter class** - + ### Custom Implementation for JpegImageConverter @@ -88,11 +88,11 @@ The following `using`/`imports` statements are required in the project: #### **Example 3: Create a custom implementation inheriting the JpegImageConverterBase abstract class** - + #### **Example 4: Set the custom implementation to the JpegImageConverter property of the FixedExtensibilityManager** - + >note A complete SDK example of a custom `JpegImageConverterBase` implementation is available on the [GitHub repository](https://github.com/telerik/document-processing-sdk/tree/master/PdfProcessing/CustomJpegImageConverter). diff --git a/libraries/radpdfprocessing/editing/block.md b/libraries/radpdfprocessing/editing/block.md index 68d3b51a..afd6b2af 100644 --- a/libraries/radpdfprocessing/editing/block.md +++ b/libraries/radpdfprocessing/editing/block.md @@ -26,7 +26,7 @@ Insert [TextFragments]({%slug radpdfprocessing-model-textfragment%}) with one of #### **Example 1: Insert text** - + >The '\r' and '\n' characters do not have the usual meaning of "go to next line" when inserted into a PDF document, and you cannot insert text containing these characters to produce multiline text. Instead, insert a line break. @@ -39,7 +39,7 @@ Inserting a line break results in the next element starting on a new line. Use t #### **Example 2: Break the line** - + ### Inserting Image @@ -54,7 +54,7 @@ Inserting a line break results in the next element starting on a new line. Use t #### **Example 3: Inserting an image** - + Information on images in the context of the library is available in the [ImageSource]({%slug radpdfprocessing-model-imagesource%}) and [Image]({%slug radpdfprocessing-model-image%}) articles. @@ -71,7 +71,7 @@ Information on images in the context of the library is available in the [ImageSo #### **Example 4: Inserting a geometry** - + ### Inserting Form-XObject Elements @@ -79,7 +79,7 @@ The Form (also known as Form-XObject) is an object that can contain PDF content #### **Example 5: Insert a form** - + There are two more overloads of `InsertForm()` that allow you to pass the size that should be used for the form. @@ -92,7 +92,7 @@ The following example shows how to insert a link inside the text: #### **Example: Insert a text link** - + ### Changing Current Styles @@ -163,7 +163,7 @@ The `Block` class has properties and methods that affect how it is rendered: #### **Example 6: Change Block properties** - + ![Block Properties Result](images/radpdfprocessing-editing-block_5_result.png) @@ -173,7 +173,7 @@ A Block can be drawn to the content using the `Draw()` method. The method accept #### **Example 7: Draw block** - + >important Every block can be drawn only once. Otherwise, an exception is thrown. @@ -209,7 +209,7 @@ The code in **Example 10** splits a block in two. The first contains text "Hello #### **Example 10: Split block** - + ## See Also diff --git a/libraries/radpdfprocessing/editing/fixedcontenteditor.md b/libraries/radpdfprocessing/editing/fixedcontenteditor.md index 15bd212e..06cdca63 100644 --- a/libraries/radpdfprocessing/editing/fixedcontenteditor.md +++ b/libraries/radpdfprocessing/editing/fixedcontenteditor.md @@ -64,7 +64,7 @@ Insert a [TextFragment]({%slug radpdfprocessing-model-textfragment%}) with the ` #### **Example 3: Insert TextFragment** - + **Figure 1** shows the result of **Example 3**. @@ -80,7 +80,7 @@ Insert a [TextFragment]({%slug radpdfprocessing-model-textfragment%}) with the ` #### **Example 4: Insert paragraph** - + **Figure 2** shows the result of **Example 4**. @@ -105,7 +105,7 @@ Insert a [TextFragment]({%slug radpdfprocessing-model-textfragment%}) with the ` #### **Example 5: Insert image** - + #### Figure 3: Image result ![Rad Pdf Processing Editing Fixed Content Editor 04](images/RadPdfProcessing_Editing_FixedContentEditor_04.png) @@ -124,7 +124,7 @@ The following methods can be used to insert different [Geometries]({%slug radpdf #### **Example 6: Insert ellipse** - + ### Inserting Clipping @@ -155,7 +155,7 @@ When a new clipping is pushed, it is set as a clipping to the current clipping i #### **Example 8: Insert table** - + #### The Table Created in Example 8 @@ -168,7 +168,7 @@ More detailed information about tables is available in the [Table]({%slug radpdf With the `FixedContentEditor` class you can insert a Form (Form-XObject) element. #### **Example 9: Insert a form** - + There are two more overloads of `DrawForm()` that allow you to pass the size that should be used for the form. @@ -182,13 +182,13 @@ The Widget annotations allow you to visualize the content of a FormField. With t #### **Example 10: Insert PushButtonField with PushButtonWidget using DrawWidget** - + * **DrawWidget(RadioButtonField parentField, RadioOption option, Size annotationSize)**: Creates a new [RadioButtonWidget]({%slug radpdfprocessing-model-annotations-widgets%}#radiobuttonwidget-class) and draws the widget with the specified annotation size. This method adds a widget only in cases when the root of the FixedContentEditor supports annotations. The second parameter represents the option that the widget visualizes. #### **Example 11: Insert RadioButtonField with RadioButtonWidget using DrawWidget** - + ## Positioning @@ -198,7 +198,7 @@ The code in **Example 12** shows how to manipulate the position of the inserted #### **Example 12: Scale and rotate content** - + #### Figure 5: Positioning result diff --git a/libraries/radpdfprocessing/editing/list.md b/libraries/radpdfprocessing/editing/list.md index fb663951..719fbae1 100644 --- a/libraries/radpdfprocessing/editing/list.md +++ b/libraries/radpdfprocessing/editing/list.md @@ -37,7 +37,7 @@ The code snippet from **Example 1** shows how to create a list with the Numbered #### **Example 1: Create numbered parentheses list template type** - + The following image shows the available list template types and their appearance: @@ -68,7 +68,7 @@ When you need to create a custom `List`, define the presentation of each list le #### **Example 2: Create custom list levels** - + The image in **Figure 3** shows how the list created in **Example 2** looks when used. @@ -85,7 +85,7 @@ The following code snippet shows how to create the bullets of a numbered hierarc #### **Example 3: Create custom text numbering bullet** - + When using the list created in **Example 3**, its bullets look as shown in **Figure 4**. @@ -101,7 +101,7 @@ To use lists with `RadFixedDocumentEditor`, first add them to the editor `ListCo #### **Example 4: Using lists with RadFixedDocumentEditor** - + The resulting document looks like the image in **Figure 5**. @@ -118,7 +118,7 @@ The following code snippet shows how to create a `List` with `BulletDefault` tem #### **Example 5: Using lists with Block class** - + >The list style is applied for the whole Block element. To generate a list consisting of several paragraphs in different list items, use the same count of Block instances as the number of the different list items. diff --git a/libraries/radpdfprocessing/editing/radfixeddocumenteditor.md b/libraries/radpdfprocessing/editing/radfixeddocumenteditor.md index cd2545a8..18c6ec5d 100644 --- a/libraries/radpdfprocessing/editing/radfixeddocumenteditor.md +++ b/libraries/radpdfprocessing/editing/radfixeddocumenteditor.md @@ -35,7 +35,7 @@ position: 6 #### **Example 1: Create RadFixedDocumentEditor** - + >`RadFixedDocumentEditor` inherits from `IDisposable` so you must properly dispose it when the document is created. Otherwise, some of the content may not be finished, that is, it might not appear on the PDF document. @@ -62,7 +62,7 @@ The section properties control the page size, margins, and orientation of `RadFi #### **Example 2: Setting section properties** - + ### Starting New Section @@ -72,7 +72,7 @@ Add an additional section with the `InsertSectionBreak()` method as demonstrated #### **Example 3: Start a section** - + >To change the properties of the next section, ensure you do it **before** you insert the section break. New properties are only used for newly created sections. @@ -82,7 +82,7 @@ All pages that have the same `SectionProperties` are part of the current section #### **Example 4: Start new page** - + ## Paragraphs @@ -118,7 +118,7 @@ Similar to the section properties, a paragraph has its own properties that contr #### **Example 5: Setting paragraph properties** - + ### Starting New Paragraph @@ -128,7 +128,7 @@ To start a new paragraph, use the code in **Example 4**. #### **Example 6: Start a paragraph** - + The result of this method is that a new paragraph starts and uses the current paragraph properties. Until a new paragraph starts, changes in the paragraph properties are not applied. @@ -173,7 +173,7 @@ The following character properties control the appearance of runs: #### **Example 7: Setting CharacterProperties** - + >For the character properties to take effect, set them **before** inserting the run. @@ -185,7 +185,7 @@ Several overloads insert a run. The code snippet in **Example 8** inserts new ru #### **Example 8: Insert run** - + Several overloads insert a run. The code snippet in **Example 8** inserts a couple of new runs, one of which with a specific font family. @@ -196,7 +196,7 @@ The code in **Example 9** inserts a new run and a line break after it. #### **Example 9: Insert run and line break** - + ### Images @@ -208,7 +208,7 @@ You can insert an image inline using one of the following methods: #### **Example 10: Insert image** - + ## Tables @@ -217,7 +217,7 @@ The `Table` class implements the `IBlockElement` interface and you can insert an #### **Example 11: Insert table** - + For more detailed information on tables, see the [Table]({%slug radpdfprocessing-editing-table-overview%}) documentation article. @@ -227,7 +227,7 @@ The [IBlockElement](https://docs.telerik.com/devtools/document-processing/api/Te #### **Example 12: Insert Block element** - + ## Lists @@ -237,7 +237,7 @@ The following code snippet shows how to add a new list to the `RadFixedDocumentE #### **Example 13: Insert list** - + More detailed information about lists is available in the [List documentation article]({%slug radpdfprocessing-editing-list%}). @@ -246,7 +246,7 @@ More detailed information about lists is available in the [List documentation ar With the `RadFixedDocumentEditor` class you can insert a Form (Form-XObject) element. #### **Example 14: Insert a form** - + There is an additional overload of `InsertFormInline()` that allows you to pass the size that should be used for the form. diff --git a/libraries/radpdfprocessing/editing/text-and-graphic-properties.md b/libraries/radpdfprocessing/editing/text-and-graphic-properties.md index 2854287c..d67825d2 100644 --- a/libraries/radpdfprocessing/editing/text-and-graphic-properties.md +++ b/libraries/radpdfprocessing/editing/text-and-graphic-properties.md @@ -40,7 +40,7 @@ These properties hold the current graphics control parameters. You can modify th #### **Example 1: Using GraphicProperties with FixedContentEditor** - + ## TextProperties @@ -82,7 +82,7 @@ These properties hold the parameters for text fragments. You can modify the foll #### **Example 2: Using TextProperties with Block** - + `TextProperties` also exposes the following methods for changing the current font: diff --git a/libraries/radpdfprocessing/features/accessibility-support/create-accessible-pdf-documents.md b/libraries/radpdfprocessing/features/accessibility-support/create-accessible-pdf-documents.md index e5873b33..50aff68e 100644 --- a/libraries/radpdfprocessing/features/accessibility-support/create-accessible-pdf-documents.md +++ b/libraries/radpdfprocessing/features/accessibility-support/create-accessible-pdf-documents.md @@ -28,7 +28,7 @@ To take advantage of the accessibility feature, the document must be **PDF/A-1a* When exporting the document, specify the [TaggingStrategy]({%slug radpdfprocessing-model-tagged-pdf%}#tagging-strategy) so the document is not tagged automatically and uses the existing StructureTree: - + @@ -43,7 +43,7 @@ When exporting the document, specify the [TaggingStrategy]({%slug radpdfprocessi The following example shows how to add content to a PDF document and leave the PdfProcessing engine to build the [StructureTree]({%slug radpdfprocessing-model-structure-tree%}) automatically: - + ## See Also diff --git a/libraries/radpdfprocessing/features/bookmarks.md b/libraries/radpdfprocessing/features/bookmarks.md index 08223886..1db9a2b3 100644 --- a/libraries/radpdfprocessing/features/bookmarks.md +++ b/libraries/radpdfprocessing/features/bookmarks.md @@ -37,7 +37,7 @@ The `BookmarkItem` class exposes several constructor overloads that enable you t - + ## Bookmarks Collection @@ -45,15 +45,15 @@ The `Bookmarks` property exposed through the `RadFixedDocument` class allows you To insert a bookmark in a document, add it to the `Bookmarks` collection. The following example shows how to add the `BookmarkItem` created in the previous example: - + To remove a bookmark, use the same collection. In the following example, the second bookmark inside the document is removed: - + If you need to iterate all bookmarks in a document, note that each `BookmarkItem` can contain other bookmarks in its `Children` collection. In such cases, you need to iterate the `Bookmarks` collection recursively. - + ## See Also diff --git a/libraries/radpdfprocessing/features/digital-signature/external-digital-signing.md b/libraries/radpdfprocessing/features/digital-signature/external-digital-signing.md index efedf5b0..170b79f3 100644 --- a/libraries/radpdfprocessing/features/digital-signature/external-digital-signing.md +++ b/libraries/radpdfprocessing/features/digital-signature/external-digital-signing.md @@ -28,11 +28,11 @@ The following example demonstrates how to implement the `IExternalSigner` interf ### CMS External Signer - + Then, initialize a `Signature` instance using the CMS External Signer: - + ## Using ExternalSignerBase @@ -43,11 +43,11 @@ The following example implements external RSA-based digital signing for PDF docu ### RSA External Signer - + Now, create a `Signature` that uses the above implementation: - + ## See Also diff --git a/libraries/radpdfprocessing/features/digital-signature/getting-started.md b/libraries/radpdfprocessing/features/digital-signature/getting-started.md index e36e9d8c..6ba45bb1 100644 --- a/libraries/radpdfprocessing/features/digital-signature/getting-started.md +++ b/libraries/radpdfprocessing/features/digital-signature/getting-started.md @@ -1,4 +1,4 @@ ---- +--- title: Getting Started with Digital Signature description: Learn how to add, configure, and validate digital signatures in PDF documents with RadPdfProcessing by using certificates, widgets, and signature settings. page_title: Digital Signatures in RadPdfProcessing Getting Started @@ -41,7 +41,7 @@ The following example signs a newly created document: ### Example: Sign a document - + >important In **.NET Standard**, use `Telerik.Documents.Primitives.Rect` instead of `System.Windows.Rect`. @@ -79,7 +79,7 @@ The signature flags were introduced in R2 2022 SP1. The following example shows ### Example: Set signature flags - + Use these values: diff --git a/libraries/radpdfprocessing/features/digital-signature/pdf-sign-timestamp-server.md b/libraries/radpdfprocessing/features/digital-signature/pdf-sign-timestamp-server.md index 133f2d47..c9cbb52e 100644 --- a/libraries/radpdfprocessing/features/digital-signature/pdf-sign-timestamp-server.md +++ b/libraries/radpdfprocessing/features/digital-signature/pdf-sign-timestamp-server.md @@ -18,7 +18,7 @@ The `TimeStampServer` class encapsulates the details needed to communicate with >note [PdfProcessing Add Digital Signature External Demo](https://demos.telerik.com/document-processing/pdfprocessing/external_digitally_sign_document) - + The produced result document indicates a valid embedded timestamp: @@ -28,7 +28,7 @@ The produced result document indicates a valid embedded timestamp: The following example shows how to initialize a new instance of the `TimeStampServer` class with the specified URL, credentials, and timeout: - + ## See Also diff --git a/libraries/radpdfprocessing/features/digital-signature/signature-validation.md b/libraries/radpdfprocessing/features/digital-signature/signature-validation.md index 2151da05..c3f55c5a 100644 --- a/libraries/radpdfprocessing/features/digital-signature/signature-validation.md +++ b/libraries/radpdfprocessing/features/digital-signature/signature-validation.md @@ -50,7 +50,7 @@ The following example shows how to validate a signature field: #### __Example 1: Validate a Field__ - + >tip To evaluate a certificate as trusted, add it to the [trusted certificates on your machine](https://learn.microsoft.com/en-us/dotnet/framework/wcf/feature-details/how-to-view-certificates-with-the-mmc-snap-in). diff --git a/libraries/radpdfprocessing/features/digital-signature/signing-existing-signature-fields.md b/libraries/radpdfprocessing/features/digital-signature/signing-existing-signature-fields.md index 13f63d33..23176c78 100644 --- a/libraries/radpdfprocessing/features/digital-signature/signing-existing-signature-fields.md +++ b/libraries/radpdfprocessing/features/digital-signature/signing-existing-signature-fields.md @@ -48,7 +48,7 @@ To sign multiple existing signature fields in a PDF document: The following example imports an existing PDF that contains unsigned signature fields and signs each field sequentially using incremental updates. - + The code first imports the document to discover the names of all unsigned `SignatureField` instances. It then iterates over the field names and calls `SignExistingField` for each one. Because each call produces an incremental update, previously applied signatures remain valid in the final output. @@ -60,11 +60,11 @@ When a PDF contains empty (unsigned) signature fields, you can generate and appl The following example signs two signature fields and applies a custom visual appearance to each widget at signing time. - + The helper method below builds a visual appearance that displays the signer name, role, and signing date: - + Each call to `SignExistingField` with a `FormSource` replaces the widget appearance of the target field. Pass `null` for the `appearance` parameter to preserve the existing widget appearance. diff --git a/libraries/radpdfprocessing/features/embedded-file-streams/embedded-file-streams.md b/libraries/radpdfprocessing/features/embedded-file-streams/embedded-file-streams.md index f1d333db..15fd1d50 100644 --- a/libraries/radpdfprocessing/features/embedded-file-streams/embedded-file-streams.md +++ b/libraries/radpdfprocessing/features/embedded-file-streams/embedded-file-streams.md @@ -37,7 +37,7 @@ RadPdfProcessing allows you to embed file streams into the document. The content #### Creating an Embedded File Stream - + >important `DuplicatedEmbeddedFileNameException` is thrown when you add an embedded file with a name that already exists in the collection. @@ -52,7 +52,7 @@ RadPdfProcessing allows you to embed file streams into the document. The content RadPdfProcessing allows you to set the correct MIME type when embedding the file into the PDF. This is especially important for standards like PDF/A-3 and Factur-X, which require strict metadata and MIME type declarations for embedded files. - + ### Creating an Embedded Electronic (ZUGFeRD) Invoice @@ -70,7 +70,7 @@ The `MergedEmbeddedFileNameResolving` event occurs when trying to resolve confli #### Resolving Duplicated Names - + #### Resolved Duplicated Names ![Resolving duplicated Names in Embedded Files](images/embedded_files_1.png) diff --git a/libraries/radpdfprocessing/features/embedded-file-streams/zugferd-invoices.md b/libraries/radpdfprocessing/features/embedded-file-streams/zugferd-invoices.md index 20d3a031..80dd4317 100644 --- a/libraries/radpdfprocessing/features/embedded-file-streams/zugferd-invoices.md +++ b/libraries/radpdfprocessing/features/embedded-file-streams/zugferd-invoices.md @@ -18,7 +18,7 @@ position: 1 ### Add ZUGFeRD Invoice - + >note Only a single XML invoice attachment is allowed according to the ZUGFeRD standard. @@ -26,7 +26,7 @@ position: 1 ### Remove ZUGFeRD Invoice - + ## ZugferdConformanceLevel @@ -42,7 +42,7 @@ RadPdfProcessing allows you to set the `ZugferdConformanceLevel` when embedding | `Extended` | The most comprehensive profile including extended data elements to cover advanced or industry-specific scenarios beyond the comfort profile. | | `XRechnung` | The German CIUS (Core Invoice Usage Specification) reference profile based on EN 16931. Used for public-sector electronic invoicing in Germany. Exports with `XRECHNUNG` conformance metadata and embeds the invoice XML as `xrechnung.xml`. | - + ### XRechnung Profile diff --git a/libraries/radpdfprocessing/features/flatten-form-fields.md b/libraries/radpdfprocessing/features/flatten-form-fields.md index b8a6c3a3..37a22ecb 100644 --- a/libraries/radpdfprocessing/features/flatten-form-fields.md +++ b/libraries/radpdfprocessing/features/flatten-form-fields.md @@ -19,7 +19,7 @@ The `FlattenFormFields` method does not take any parameters and flattens all fie **Example 1: Flatten All Fields** - + ## Using the FlattenFormField Method @@ -27,7 +27,7 @@ The `FlattenFormField` method takes the field that you want to flatten as a para **Example 2: Flatten a Single Field** - + ## See Also diff --git a/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/complete-context-question-processor.md b/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/complete-context-question-processor.md index fa9a54ba..6c41e95a 100644 --- a/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/complete-context-question-processor.md +++ b/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/complete-context-question-processor.md @@ -60,7 +60,7 @@ The following example demonstrates how to use the `CompleteContextQuestionProces #### **Example 1: Using CompleteContextQuestionProcessor** - + ## See Also diff --git a/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/custom-partialcontextquestionprocessor.md b/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/custom-partialcontextquestionprocessor.md index 48371962..fe518586 100644 --- a/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/custom-partialcontextquestionprocessor.md +++ b/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/custom-partialcontextquestionprocessor.md @@ -51,7 +51,7 @@ The example below constructs a custom `PartialContextQuestionProcessor` by suppl >note `DefaultEmbedder` is only available on **net8-windows** and higher. On other target frameworks you must supply your own `IEmbedder` (as shown with the [CustomOpenAIEmbedder]({%slug radpdfprocessing-features-gen-ai-powered-document-insights-partial-context-question-processor%}#implementing-custom-iembedder)). - + ## See Also diff --git a/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/getting-started.md b/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/getting-started.md index 1efdc505..cee1fb63 100644 --- a/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/getting-started.md +++ b/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/getting-started.md @@ -18,7 +18,7 @@ The following example demonstrates how to use the GenAI-powered Document Insight #### **Example 1: Using GenAI-powered Document Insights** - + When you run this code, the AI processes your document, generates a summary, and answers your questions. diff --git a/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/partial-context-question-processor.md b/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/partial-context-question-processor.md index 0703ed70..21d736e7 100644 --- a/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/partial-context-question-processor.md +++ b/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/partial-context-question-processor.md @@ -63,7 +63,7 @@ The settings are created only through the `EmbeddingSettingsFactory` `CreateSett | `MaxNumberOfEmbeddingsSent` | Maximum number of context chunks sent. Default is `null`. | | `EmbeddingTokenSize` | Size in tokens of each context chunk. Default is `null`. | - + ## Usage Examples @@ -71,13 +71,13 @@ The settings are created only through the `EmbeddingSettingsFactory` `CreateSett This example demonstrates how to use the `PartialContextQuestionProcessor` with the built-in embedding on .NET {{site.mindotnetversion}}+ (Target OS Windows) + [Packages for .NET {{site.mindotnetversion}} and .NET {{site.maxdotnetversion}} for Windows]({%slug available-nuget-packages%}#packages-for-net-framework-and-net-{{site.mindotnetversion}}-and-net-{{site.maxdotnetversion}}-for-windows). To set up the AI client, see the [AI Provider Setup]({%slug radpdfprocessing-features-gen-ai-powered-document-insights-prerequisites%}#ai-provider-setup) section: - + #### **Example 2: Using PartialContextQuestionProcessor with Custom IEmbedder** This example demonstrates how to use the `PartialContextQuestionProcessor` with a custom `IEmbedder` implementation as described in the [Implementing Custom IEmbedder]({%slug radpdfprocessing-features-gen-ai-powered-document-insights-partial-context-question-processor%}#implementing-custom-iembedder) section: - + ### Implementing Custom IEmbedder @@ -89,11 +89,11 @@ The following code snippet shows a sample custom `CustomOpenAIEmbedder` implemen > * `Telerik.Windows.Documents.AIConnector` > * `Telerik.Windows.Documents.Fixed` - + #### **Example 3: Processing Specific Pages** - + ## See Also diff --git a/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/prerequisites.md b/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/prerequisites.md index f98ac59c..7b901e9b 100644 --- a/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/prerequisites.md +++ b/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/prerequisites.md @@ -58,7 +58,7 @@ Before using the GenAI-powered Document Insights functionality, set up an AI pro #### **Example 1: Setting Up Azure OpenAI** - + ### OpenAI Setup @@ -67,7 +67,7 @@ Before using the GenAI-powered Document Insights functionality, set up an AI pro #### **Example 2: Setting Up OpenAI** - + ### Ollama Setup (Local AI) @@ -79,7 +79,7 @@ Ollama allows you to run AI models locally on your machine. This is useful for d #### **Example 3: Setting Up Ollama** - + ## See Also diff --git a/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/summarization-processor.md b/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/summarization-processor.md index b72c2d6e..7695007b 100644 --- a/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/summarization-processor.md +++ b/libraries/radpdfprocessing/features/gen-ai-powered-document-insights/summarization-processor.md @@ -39,7 +39,7 @@ The `SummarizationProcessorSettings` class defines configuration options for the #### **Example 1: Configuring SummarizationProcessorSettings** - + ## Usage Example @@ -57,7 +57,7 @@ This approach allows the processor to handle documents of any size, but it incre #### **Example 2: Using SummarizationProcessor** - + ## See Also diff --git a/libraries/radpdfprocessing/features/handling-document-exceptions.md b/libraries/radpdfprocessing/features/handling-document-exceptions.md index d864da17..a09e2bd5 100644 --- a/libraries/radpdfprocessing/features/handling-document-exceptions.md +++ b/libraries/radpdfprocessing/features/handling-document-exceptions.md @@ -33,7 +33,7 @@ When the events are raised, the `DocumentUnhandledExceptionEventArgs` argument i To use this functionality, handle the `PdfImportSettings.DocumentUnhandledException` event. The `Handled` property in the event arguments indicates whether the exception is handled by the code in the event handler or the exception is thrown. - + ## Using RadFixedDocument.DocumentUnhandledException @@ -41,7 +41,7 @@ When you use the **OnDemand** reading mode, handle the `RadFixedDocument.Documen **Example 2: Using the DocumentUnhandledException Event While Loading on Demand** - + ## Using ExportSettings.DocumentUnhandledException @@ -49,7 +49,7 @@ Starting with **Q1 2025**, the [PdfExportSettings]({%slug radpdfprocessing-forma **Example 3: Using the DocumentUnhandledException Event While Exporting** - + ## Exceptions diff --git a/libraries/radpdfprocessing/features/merge-pdf-documents.md b/libraries/radpdfprocessing/features/merge-pdf-documents.md index a68e54aa..490f9284 100644 --- a/libraries/radpdfprocessing/features/merge-pdf-documents.md +++ b/libraries/radpdfprocessing/features/merge-pdf-documents.md @@ -17,13 +17,13 @@ position: 5 You can merge PDF documents with the `Merge` method of [RadFixedDocument]({%slug radpdfprocessing-model-radfixeddocument%}). This method clones the source document and appends it to the current instance of `RadFixedDocument`: - + ## Using the PdfStreamWriter An alternative approach is to use the [PdfStreamWriter]({%slug radpdfprocessing-formats-and-conversion-pdf-pdfstreamwriter-overview%}) to merge pages from different PDF documents: - + >note The following SDK example demonstrates this topic: [Manipulate Pages SDK Demo](https://github.com/telerik/document-processing-sdk/tree/master/PdfProcessing/ManipulatePages). diff --git a/libraries/radpdfprocessing/features/search.md b/libraries/radpdfprocessing/features/search.md index 019146f4..d4f5897f 100644 --- a/libraries/radpdfprocessing/features/search.md +++ b/libraries/radpdfprocessing/features/search.md @@ -18,7 +18,7 @@ The `TextSearch` class exposes methods for searching. Pass an instance of [RadFi **Example 1: Create a TextSearch Instance** - + ### Search Methods @@ -43,7 +43,7 @@ All of the listed methods return one or more instances of the `SearchResult` cla **Example 2: Searching in a Document** - + ### TextSearchOptions diff --git a/libraries/radpdfprocessing/features/viewer-preferences.md b/libraries/radpdfprocessing/features/viewer-preferences.md index 31431234..198235a3 100644 --- a/libraries/radpdfprocessing/features/viewer-preferences.md +++ b/libraries/radpdfprocessing/features/viewer-preferences.md @@ -41,7 +41,7 @@ The `ViewerPreferences` class provides the following properties: You can access and modify viewer preferences through the `ViewerPreferences` property of the `RadFixedDocument` class. - + >note Viewer preferences are suggestions to the PDF viewer application. Not all viewers support all preferences, and some may ignore certain settings based on their own configuration or capabilities. diff --git a/libraries/radpdfprocessing/formats-and-conversion/convert-to-image/settings.md b/libraries/radpdfprocessing/formats-and-conversion/convert-to-image/settings.md index f509fc83..350ee9d0 100644 --- a/libraries/radpdfprocessing/formats-and-conversion/convert-to-image/settings.md +++ b/libraries/radpdfprocessing/formats-and-conversion/convert-to-image/settings.md @@ -27,11 +27,11 @@ Starting with **Q3 2025**, `SkiaImageExportSettings` exposes the `DocumentUnhand The following example demonstrates how to create a `SkiaImageExportSettings` object with custom settings and handle unexpected errors while exporting a PDF page (built from scratch) that is not associated with a document: - + The next example shows how to import an existing PDF document, iterate all of its pages, and export each page to an image: - + ## See Also diff --git a/libraries/radpdfprocessing/formats-and-conversion/convert-to-image/using-image-format-provider.md b/libraries/radpdfprocessing/formats-and-conversion/convert-to-image/using-image-format-provider.md index 34d623a7..9566a968 100644 --- a/libraries/radpdfprocessing/formats-and-conversion/convert-to-image/using-image-format-provider.md +++ b/libraries/radpdfprocessing/formats-and-conversion/convert-to-image/using-image-format-provider.md @@ -37,7 +37,7 @@ To convert document pages to images, use the `Export` method. The `Export` metho #### __Example 1: Export RadFixedDocument to Image__ - + ## Exporting Asynchronously @@ -45,7 +45,7 @@ The `ExportAsync` method allows you to perform the conversion asynchronously. #### __Example 2: Export RadFixedDocument to Image Async__ - + ## Export Settings diff --git a/libraries/radpdfprocessing/formats-and-conversion/ocr/custom-ocr-provider.md b/libraries/radpdfprocessing/formats-and-conversion/ocr/custom-ocr-provider.md index 6861f631..d0baeaa9 100644 --- a/libraries/radpdfprocessing/formats-and-conversion/ocr/custom-ocr-provider.md +++ b/libraries/radpdfprocessing/formats-and-conversion/ocr/custom-ocr-provider.md @@ -32,11 +32,11 @@ The [Azure AI Vision](https://learn.microsoft.com/en-us/azure/ai-services/comput 3\. Create the custom `AzureAIOcrProvider` class that implements the `IOcrProvider` interface: - + 4\. Use the custom implementation with the [OcrFormatProvider]({%slug radpdfprocessing-formats-and-conversion-ocr-ocrformatprovider%}) that RadPdfProcessing offers: - + After iterating all images in the specified folder (which contain content in different languages), the provider generates a PDF document with the respective content recognized as text fragments: diff --git a/libraries/radpdfprocessing/formats-and-conversion/ocr/ocrformatprovider.md b/libraries/radpdfprocessing/formats-and-conversion/ocr/ocrformatprovider.md index 91b7167d..ea2c5ec0 100644 --- a/libraries/radpdfprocessing/formats-and-conversion/ocr/ocrformatprovider.md +++ b/libraries/radpdfprocessing/formats-and-conversion/ocr/ocrformatprovider.md @@ -1,4 +1,4 @@ ---- +--- title: Using OcrFormatProvider description: Learn how to convert scanned images to searchable PDF content with OcrFormatProvider, including setup, Tesseract usage, platform constraints, and troubleshooting. page_title: RadPdfProcessing OcrFormatProvider Overview @@ -57,7 +57,7 @@ This flow gives you a PDF page that contains the recognized text in a searchable The following example shows the usual setup for `OcrFormatProvider` and `TesseractOcrProvider`. - + After the import completes, the provider returns a [RadFixedPage]({%slug radpdfprocessing-model-radfixedpage%}) that you can add to a document, inspect, or export. diff --git a/libraries/radpdfprocessing/formats-and-conversion/pdf/expandablememorystream.md b/libraries/radpdfprocessing/formats-and-conversion/pdf/expandablememorystream.md index ddb90977..c4fa893a 100644 --- a/libraries/radpdfprocessing/formats-and-conversion/pdf/expandablememorystream.md +++ b/libraries/radpdfprocessing/formats-and-conversion/pdf/expandablememorystream.md @@ -33,7 +33,7 @@ Use `ExpandableMemoryStream` when you need to: The following example shows two common ways to load a large PDF document into memory before further processing. The first approach constructs the stream directly from a byte array and passes an explicit segment size (`bufferSize`). The second approach creates an empty instance and copies a file stream into it. The constructor's second parameter (`bufferSize`) is optional and defaults to 1,000,000 bytes (1 MB). You can omit it unless you want a different segment size. - + In both cases, the segmented internal structure avoids reallocating a single large contiguous buffer. This helps performance and memory stability for very large PDF files. diff --git a/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfformatprovider/pdfformatprovider.md b/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfformatprovider/pdfformatprovider.md index 7aa45ab7..ab4af8d2 100644 --- a/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfformatprovider/pdfformatprovider.md +++ b/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfformatprovider/pdfformatprovider.md @@ -50,7 +50,7 @@ Before you call `Import()`, verify these requirements: ### Example 1: Import a PDF File - + The result of `Import()` is a [RadFixedDocument]({%slug radpdfprocessing-model-radfixeddocument%}) that you can inspect, modify, render, or export again. @@ -74,7 +74,7 @@ Before you call `Export()`, verify these points: ### Example 2: Export a PDF File - + >important > diff --git a/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfformatprovider/settings.md b/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfformatprovider/settings.md index 75319297..4876b4ae 100644 --- a/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfformatprovider/settings.md +++ b/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfformatprovider/settings.md @@ -41,7 +41,7 @@ The `PdfFormatProvider` class exposes the `ImportSettings` property, which allow The following example shows how to create a `PdfImportSettings` object with the desired settings and handle the offered events: - + ## Export Settings @@ -78,7 +78,7 @@ Starting with **Q1 2025**, the `PdfExportSettings` class exposes the `DocumentUn The following example shows how to create a `PdfExportSettings` object with custom settings and handle unexpected errors while exporting the PDF document: - + ## See Also diff --git a/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdffilesource.md b/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdffilesource.md index 0742c5b2..1f71b10a 100644 --- a/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdffilesource.md +++ b/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdffilesource.md @@ -19,14 +19,14 @@ The `PdfFileSource` class represents the content of an existing PDF file. To create an instance of `PdfFileSource`, pass a `FileStream` object containing the PDF document to the constructor of the class. #### **Example 1: Create a PdfFileSource** - + `PdfFileSource` also exposes an additional overload that allows you to keep the stream open after disposing the `PdfFileSource` instance. Pass **true** as the value for the second constructor parameter (`leaveStreamOpen`). You can also use the overload that accepts a parameter of type [`PdfImportSettings`]({%slug radpdfprocessing-formats-and-conversion-pdf-settings%}#import-settings). This overload enables you to handle password-encrypted documents. #### **Example 2: Open encrypted document** - + >`PdfFileSource` inherits from [IDisposable](https://learn.microsoft.com/en-us/dotnet/api/system.idisposable). Ensure the object is disposed when you are done with it. The best way to handle this is to wrap it in a `using` statement. @@ -35,7 +35,7 @@ You can also use the overload that accepts a parameter of type [`PdfImportSettin `PdfFileSource` exposes the `Pages` property, which is of type [`PdfPageSource`]({%slug radpdfprocessing-formats-and-conversion-pdf-pdfstreamwriter-pdfpagesource%})[] and allows you to access the pages of the imported document. #### **Example 3: Iterate the pages of a document** - + >You can use the indexer of the `Pages` property to obtain a specific page of the document and split it. Then, save the separated page with [`PdfStreamWriter`]({%slug radpdfprocessing-formats-and-conversion-pdf-pdfstreamwriter-pdfstreamwriter%}). diff --git a/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdfpagesource.md b/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdfpagesource.md index b0022f55..9a0b84f9 100644 --- a/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdfpagesource.md +++ b/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdfpagesource.md @@ -1,4 +1,4 @@ ---- +--- title: PdfPageSource description: Learn how to use the PdfPageSource class in RadPdfProcessing to represent and work with individual pages from an existing PDF file. page_title: PdfPageSource @@ -20,7 +20,7 @@ Obtain an instance of the `PdfPageSource` class by using the `Pages` property of #### **Example 1: Obtain an instance of PdfPageSource** - + ### Members @@ -37,7 +37,7 @@ Obtain an instance of the `PdfPageSource` class by using the `Pages` property of #### **Example 2: Merge the pages of several documents** - + ## See Also diff --git a/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdfpagestreamwriter.md b/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdfpagestreamwriter.md index 8a0bd263..522ddb9a 100644 --- a/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdfpagestreamwriter.md +++ b/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdfpagestreamwriter.md @@ -21,7 +21,7 @@ Obtain an instance of the `PdfPageStreamWriter` class by using the `BeginPage()` #### **Example 1: Instantiate PdfPageStreamWriter** - + >You can find an example of how to use the `PdfPageStreamWriter` class in the [Manipulate Pages](https://github.com/telerik/document-processing-sdk/tree/master/PdfProcessing/ManipulatePages) example in the XAML SDK repository on GitHub. diff --git a/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdfstreamwriter.md b/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdfstreamwriter.md index 346488b4..375e3972 100644 --- a/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdfstreamwriter.md +++ b/libraries/radpdfprocessing/formats-and-conversion/pdf/pdfstreamwriter/pdfstreamwriter.md @@ -30,7 +30,7 @@ To create a `PdfStreamWriter` instance, pass the stream of the file you want to #### **Example 1: Instantiate PdfStreamWriter** - + `PdfStreamWriter` also exposes an additional overload that allows you to keep the stream open after disposing the writer instance. Pass **true** as the value for the second constructor parameter (`leaveStreamOpen`). @@ -48,7 +48,7 @@ The constructor of `PdfStreamWriter` accepts any class inheriting from `Stream`. #### **Example 2: Instantiate PdfStreamWriter with MemoryStream** - + ## PdfStreamWriter Members @@ -58,13 +58,13 @@ The members of the class allow you to set several properties of the document and #### **Example 3: Insert a new page into a document** - + * `WritePage()`: Enables you to pass an already constructed page object. With the different overloads, you can pass an instance of [`RadFixedPage`]({%slug radpdfprocessing-model-radfixedpage%}) or [`PdfPageStreamWriter`]({%slug radpdfprocessing-formats-and-conversion-pdf-pdfstreamwriter-pdfpagestreamwriter%}). #### **Example 4: Insert an already generated page into a document** - + ### Settings of PdfStreamWriter @@ -80,7 +80,7 @@ Through the `Settings` property of `PdfStreamWriter`, you can control how the do When merging document pages with `PdfStreamWriter`, the form fields may be duplicated. Starting with **Q2 2025**, the `PdfStreamWriterSettings` class offers the `MergedFieldNameResolving` event. This event occurs when resolving conflicts between field names while merging instances with duplicated names: - + > The XAML SDK repository on GitHub contains examples showing the capabilities of `PdfStreamWriter`: > diff --git a/libraries/radpdfprocessing/formats-and-conversion/plain-text/settings.md b/libraries/radpdfprocessing/formats-and-conversion/plain-text/settings.md index 72226cbe..aa7480b0 100644 --- a/libraries/radpdfprocessing/formats-and-conversion/plain-text/settings.md +++ b/libraries/radpdfprocessing/formats-and-conversion/plain-text/settings.md @@ -33,7 +33,7 @@ The constructor of the `TextFormatProviderSettings` class has two overloads: **Example 1** shows how to create and specify a particular setting. #### **Example 1: Create TextFormatProviderSettings** - + ## Using TextFormatProviderSettings @@ -43,7 +43,7 @@ The `Export()` method of `TextFormatProvider` accepts a `TextFormatProviderSetti #### **Example 2: Apply TextFormatProviderSettings** - + ## See Also diff --git a/libraries/radpdfprocessing/formats-and-conversion/plain-text/textformatprovider.md b/libraries/radpdfprocessing/formats-and-conversion/plain-text/textformatprovider.md index 3aa69005..715b1700 100644 --- a/libraries/radpdfprocessing/formats-and-conversion/plain-text/textformatprovider.md +++ b/libraries/radpdfprocessing/formats-and-conversion/plain-text/textformatprovider.md @@ -25,7 +25,7 @@ To export a document to plain text, use the `Export()` method of `TextFormatProv #### **Example 1: Export RadFixedDocument to string** - + ## See Also diff --git a/libraries/radpdfprocessing/getting-started.md b/libraries/radpdfprocessing/getting-started.md index 52525de3..8c8ae9ed 100644 --- a/libraries/radpdfprocessing/getting-started.md +++ b/libraries/radpdfprocessing/getting-started.md @@ -24,13 +24,13 @@ You can find the required references in the [PdfProcessing NuGet packages]({%slu #### **Example 1: Create RadFixedDocument** - + The page can then be edited through a [FixedContentEditor]({%slug radpdfprocessing-editing-fixedcontenteditor%}) instance. **Example 2** creates an editor and adds a [TextFragment]({%slug radpdfprocessing-model-textfragment%}) to the page object created in **Example 1**. #### **Example 2: Add text** - + ## Exporting to PDF @@ -39,7 +39,7 @@ Exporting to PDF format can be achieved with the `PdfFormatProvider` class. **Ex #### **Example 3: Export to PDF** - + For more complete examples head to the [Developer Focused Examples]({%slug radpdfprocessing-sdk-examples%}) section of the library. diff --git a/libraries/radpdfprocessing/model/actions/js-actions/action-collections.md b/libraries/radpdfprocessing/model/actions/js-actions/action-collections.md index bd20b19a..90b2e382 100644 --- a/libraries/radpdfprocessing/model/actions/js-actions/action-collections.md +++ b/libraries/radpdfprocessing/model/actions/js-actions/action-collections.md @@ -69,7 +69,7 @@ Use this collection when a calculation must run after the user enters values. A A common case is restricting the user input, for example, when entering a date in a specific format: - + The following image shows the result: @@ -86,7 +86,7 @@ Represents a collection of `Action` objects associated with a [RadFixedPage]({%s The following example shows how to use the JavaScript Actions feature to show an alert when the second page in a document is closed: - + ![JS Action Page result showing an alert on page close](images/js-action-page.gif) diff --git a/libraries/radpdfprocessing/model/actions/js-actions/javascript-actions.md b/libraries/radpdfprocessing/model/actions/js-actions/javascript-actions.md index a18e4647..2f0ed027 100644 --- a/libraries/radpdfprocessing/model/actions/js-actions/javascript-actions.md +++ b/libraries/radpdfprocessing/model/actions/js-actions/javascript-actions.md @@ -41,13 +41,13 @@ The following example demonstrates how to create a PDF document with three `Text ![JS Action Sum FormField result showing automatic calculation](images/js-action-sum-form-field.gif) - + ### Using the MergedJavaScriptNameResolving Event The `MergedJavaScriptNameResolving` event fires when resolving conflicts between JavaScript names while merging `RadFixedDocument` instances. - + ## See Also diff --git a/libraries/radpdfprocessing/model/actions/named-actions.md b/libraries/radpdfprocessing/model/actions/named-actions.md index 7faa83ed..f4c4796a 100644 --- a/libraries/radpdfprocessing/model/actions/named-actions.md +++ b/libraries/radpdfprocessing/model/actions/named-actions.md @@ -74,7 +74,7 @@ RadPdfProcessing also supports the following *NonStandard* `NamedAction` types: The following example demonstrates how to create a PDF document with a [PushButtonField]({%slug radpdfprocessing-model-interactive-forms-form-fields-pushbuttonfield%}) that triggers a printing action when displayed in a viewer and the user presses the button: - + ![Print Named Action result showing a button that triggers the print dialog](images/print-named-action.gif) diff --git a/libraries/radpdfprocessing/model/annotations/line.md b/libraries/radpdfprocessing/model/annotations/line.md index bcea5417..0719db96 100644 --- a/libraries/radpdfprocessing/model/annotations/line.md +++ b/libraries/radpdfprocessing/model/annotations/line.md @@ -27,7 +27,7 @@ The `LineAnnotation` class is a derivative of `MarkupAnnotation` (descendent of ## Creating a LineAnnotation - + ![Create LineAnnotation](images/pdf-processing-create-lineannotation.png) @@ -35,7 +35,7 @@ The `LineAnnotation` class is a derivative of `MarkupAnnotation` (descendent of The [FixedContentEditor]({%slug radpdfprocessing-editing-fixedcontenteditor%}) offers the public `DrawLineAnnotation` method which creates a new `LineAnnotation` with a starting point at the current position of the editor and an end point at the current position of the editor plus the given distances. - + ![Create LineAnnotation with FixedContentEditor](images/pdf-processing-create-lineannotation-with-fixedcontenteditor.png) diff --git a/libraries/radpdfprocessing/model/annotations/links.md b/libraries/radpdfprocessing/model/annotations/links.md index 833b473d..ef74f775 100644 --- a/libraries/radpdfprocessing/model/annotations/links.md +++ b/libraries/radpdfprocessing/model/annotations/links.md @@ -22,11 +22,11 @@ The `Link` class inherits the abstract `Annotation` class. Link annotations repr **Example 1: Add link to destination** - + **Example 2: Add link with action** - + >important In **Example 2**, the *action* object must be from the `Telerik.Windows.Documents.Fixed.Model.Actions.Action` type. @@ -55,7 +55,7 @@ The `Destination` class itself only exposes a `Page` property specifying the pag **Example 3: Add link with location** - + ## Action @@ -63,7 +63,7 @@ The `Destination` class itself only exposes a `Page` property specifying the pag **Example 4: Add link with action** - + ## See Also diff --git a/libraries/radpdfprocessing/model/annotations/stamp.md b/libraries/radpdfprocessing/model/annotations/stamp.md index a46af784..fd117b34 100644 --- a/libraries/radpdfprocessing/model/annotations/stamp.md +++ b/libraries/radpdfprocessing/model/annotations/stamp.md @@ -24,7 +24,7 @@ The `StampAnnotation` class is a derivative of `MarkupAnnotation` (descendent of ## Creating a StampAnnotation - + ![Create StampAnnotation](images/pdf-processing-create-stampannotation.png) @@ -32,7 +32,7 @@ The `StampAnnotation` class is a derivative of `MarkupAnnotation` (descendent of The [FixedContentEditor]({%slug radpdfprocessing-editing-fixedcontenteditor%}) offers the public `DrawStampAnnotation` method which creates a new `StampAnnotation` and draws it with a specified annotation size and name. - + ![Create StampAnnotation with FixedContentEditor](images/pdf-processing-create-stampannotation-with-fixedcontenteditor.png) @@ -44,7 +44,7 @@ The `AnnotationContentSource` class, accessed by the `Content` property of the a >important When you create appearance for an annotation, create it with the same size as the rectangle of the annotation. Otherwise, unexpected behavior can occur when the annotation is moved in Adobe. - + ![Create StampAnnotation with Appearance](images/pdf-processing-create-stampannotation-with-appearance.png) diff --git a/libraries/radpdfprocessing/model/annotations/text-markup.md b/libraries/radpdfprocessing/model/annotations/text-markup.md index a02b136d..8c2636be 100644 --- a/libraries/radpdfprocessing/model/annotations/text-markup.md +++ b/libraries/radpdfprocessing/model/annotations/text-markup.md @@ -30,13 +30,13 @@ Depending on the `TextMarkupAnnotationType`, you can add the respective type of ### Creating a Highlight Annotation - + ![Create Highlight Annotation](images/pdf-processing-create-highlight-annotation.png) ### Creating a Highlight Annotation with Appearance - + ![Create Highlight Annotation with Appearance](images/pdf-processing-create-highlight-annotation-with-appearance.gif) @@ -44,19 +44,19 @@ Depending on the `TextMarkupAnnotationType`, you can add the respective type of ## Underline - + ![Create Underline Annotation](images/pdf-processing-create-underline-annotation.png) ## Squiggly - + ![Create Squiggly Annotation](images/pdf-processing-create-squiggly-annotation.png) ## StrikeOut - + ![Create StrikeOut Annotation](images/pdf-processing-create-strikeOut-annotation.png) diff --git a/libraries/radpdfprocessing/model/annotations/text.md b/libraries/radpdfprocessing/model/annotations/text.md index c9056593..ff291147 100644 --- a/libraries/radpdfprocessing/model/annotations/text.md +++ b/libraries/radpdfprocessing/model/annotations/text.md @@ -25,7 +25,7 @@ The `TextAnnotation` class is a derivative of `MarkupAnnotation` (descendent of ## Creating a TextAnnotation - + ![Create TextAnnotation](images/pdf-processing-create-textannotation.png) @@ -33,7 +33,7 @@ The `TextAnnotation` class is a derivative of `MarkupAnnotation` (descendent of The `FixedContentEditor` offers the public `DrawTextAnnotation` method which creates a new `TextAnnotation` and draws it with a specified size and text. It can also create a `PopupAnnotation` to associate with it. - + ![Create TextAnnotation with Popup](images/pdf-processing-create-textannotation-with-popup.png) @@ -43,7 +43,7 @@ The `AnnotationContentSource` class, accessed by the `Content` property of the a >important In **.NET Standard/.NET (Target OS: None)** environments, fonts beyond the [14 standard ones]({%slug radpdfprocessing-concepts-fonts%}#standard-fonts) require a [FontsProvider implementation]({%slug pdfprocessing-implement-fontsprovider%}) to be resolved correctly. - + ![Create TextAnnotation with Appearance](images/pdf-processing-create-textannotation-with-appearance.gif) diff --git a/libraries/radpdfprocessing/model/annotations/widgets.md b/libraries/radpdfprocessing/model/annotations/widgets.md index 0fa5173a..dab4c7e5 100644 --- a/libraries/radpdfprocessing/model/annotations/widgets.md +++ b/libraries/radpdfprocessing/model/annotations/widgets.md @@ -37,7 +37,7 @@ All widgets are created through the `Widgets` collection of the [FormField]({%sl **Example 1: Creating a widget** - + >important Specify the size of the widget. Otherwise, it is not visualized in the PDF document. @@ -45,7 +45,7 @@ All widgets are created through the `Widgets` collection of the [FormField]({%sl **Example 2: Iterating the widgets in the FormField collection** - + >note The `Widget` class inherits from [Annotation]({%slug radpdfprocessing-model-annotations-overview%}). Add each annotation to the `Annotations` collection of `RadFixedPage`. diff --git a/libraries/radpdfprocessing/model/form.md b/libraries/radpdfprocessing/model/form.md index 4c739f06..6b419e22 100644 --- a/libraries/radpdfprocessing/model/form.md +++ b/libraries/radpdfprocessing/model/form.md @@ -41,14 +41,14 @@ The `Form` class exposes a default public constructor that allows you to create #### **Example 1: Create a form and add it to an IContainerElement** - + **Example 2** demonstrates how to use one of the factory methods of the `ContentElementCollection` to create a new form and insert it into the respective container. #### **Example 2: Add a form to a container** - + >tip There are other methods that allow adding a form to a document by passing its size and source. You can use them through the [FixedContentEditor]({%slug radpdfprocessing-editing-fixedcontenteditor%}) class. @@ -64,7 +64,7 @@ You can modify a `Form` element using the properties the class exposes. The prop #### **Example 3: Modify Form properties** - + ![PdfProcessing Modify Form Properties](images/pdf-processing-modify-form-properties.png) diff --git a/libraries/radpdfprocessing/model/formsource/barcode.md b/libraries/radpdfprocessing/model/formsource/barcode.md index a95a2f30..d6cc1d20 100644 --- a/libraries/radpdfprocessing/model/formsource/barcode.md +++ b/libraries/radpdfprocessing/model/formsource/barcode.md @@ -26,7 +26,7 @@ RadPdfProcessing supports adding barcodes (1D and 2D) into a PDF document. The s The following example shows how to create a barcode as a `FormSource` object and insert it in a page by using the [FixedContentEditor]({%slug radpdfprocessing-editing-fixedcontenteditor%}): - + ![RadPdfProcessing Insert Barcode FormSource result](images/pdf-processing-insert-barcode.png) diff --git a/libraries/radpdfprocessing/model/formsource/overview.md b/libraries/radpdfprocessing/model/formsource/overview.md index 907b59ef..7d9c0f58 100644 --- a/libraries/radpdfprocessing/model/formsource/overview.md +++ b/libraries/radpdfprocessing/model/formsource/overview.md @@ -25,7 +25,7 @@ The `FormSource` class exposes a default constructor that you can use to create **Example 1: Create FormSource** - + The snippet from **Example 1** creates an empty `FormSource` object. To fill this object with content, use [FixedContentEditor]({%slug radpdfprocessing-editing-fixedcontenteditor%}) as described later in this article. @@ -46,7 +46,7 @@ The `FormSource` class inherits from the `IContentRootElement` interface. This i **Example 2: Add content to a FormSource** - + ## Inserting a FormSource into a Document @@ -58,7 +58,7 @@ After you generate the `FormSource` object and fill it with content, insert it i **Example 3: Add a FormSource to a document using FixedContentEditor** - + There are several overloads of the `DrawForm()` method that let you specify the size of the form. diff --git a/libraries/radpdfprocessing/model/formsource/svg.md b/libraries/radpdfprocessing/model/formsource/svg.md index 61c12e19..add9ad57 100644 --- a/libraries/radpdfprocessing/model/formsource/svg.md +++ b/libraries/radpdfprocessing/model/formsource/svg.md @@ -23,7 +23,7 @@ RadPdfProcessing supports SVG FormSource (vector graphics image format). The sta The following example shows how to insert an SVG image into a `FormSource` object by using `FixedContentEditor`: - + ![RadPdfProcessing Insert SVG FormSource result](images/pdf-processing-insert-svg.png) diff --git a/libraries/radpdfprocessing/model/image.md b/libraries/radpdfprocessing/model/image.md index 33c1f645..a3205ef5 100644 --- a/libraries/radpdfprocessing/model/image.md +++ b/libraries/radpdfprocessing/model/image.md @@ -37,7 +37,7 @@ You can edit an `Image` element using the properties the class exposes. The prop #### **Example 1: Create image** - + Once you [export]({%slug radpdfprocessing-formats-and-conversion-pdf-pdfformatprovider%}) the `RadFixedDocument`, the following document with an image is created: @@ -47,7 +47,7 @@ Once you [export]({%slug radpdfprocessing-formats-and-conversion-pdf-pdfformatpr #### **Example 2: Add image to container** - + >tip There are other methods that allow adding an image to a document by passing image size, format, and source. You can use them through the [FixedContentEditor]({%slug radpdfprocessing-editing-fixedcontenteditor%}) class. @@ -57,7 +57,7 @@ The `Image` class also exposes the `GetBitmapSource()` method, which allows you #### **Example 3: Obtain BitmapSource** - + ## See Also diff --git a/libraries/radpdfprocessing/model/imagesource.md b/libraries/radpdfprocessing/model/imagesource.md index 270781a2..48a4ff31 100644 --- a/libraries/radpdfprocessing/model/imagesource.md +++ b/libraries/radpdfprocessing/model/imagesource.md @@ -30,7 +30,7 @@ The `ImageSource` class has several public constructor overloads. You can create #### **Example 1: Create ImageSource from Stream** - + With the `EncodedImageData` class you can create an `ImageSource` with encoded image data. This way the image quality is not reduced on import. @@ -38,12 +38,12 @@ With the `EncodedImageData` class you can create an `ImageSource` with encoded i **Example 2** demonstrates how to create an `ImageSource` using the `EncodedImageData` class. #### **Example 2: Create ImageSource from EncodedImageData** - + With the `EncodedImageData` class you can also create an `ImageSource` with encoded image data and set its transparency. The `EncodedImageData` class provides a second constructor overload where you can set the alpha-channel bytes of the image as a second constructor parameter to apply transparency to this image. #### **Example 3: Create ImageSource from EncodedImageData with transparency** - + ## Properties @@ -74,7 +74,7 @@ RadPdfProcessing exposes an extension method that allows you to convert every `B #### **Example 4: Create ImageSource with extension method** - + > The code from **Example 4** does not compile in Silverlight due to differences in the `BitmapImage` API for this platform. You can pass the image as a stream to the `SetSource()` method of `BitmapImage` instead. diff --git a/libraries/radpdfprocessing/model/interactive-forms/form-fields/checkboxfield.md b/libraries/radpdfprocessing/model/interactive-forms/form-fields/checkboxfield.md index 4f6915e9..b1737d3a 100644 --- a/libraries/radpdfprocessing/model/interactive-forms/form-fields/checkboxfield.md +++ b/libraries/radpdfprocessing/model/interactive-forms/form-fields/checkboxfield.md @@ -24,7 +24,7 @@ The `CheckBoxField` class corresponds to the `FormFieldType.CheckBox` enum value **Example 1: Create a CheckBoxField and add it to a page** - + ## See Also diff --git a/libraries/radpdfprocessing/model/interactive-forms/form-fields/comboboxfield.md b/libraries/radpdfprocessing/model/interactive-forms/form-fields/comboboxfield.md index c81e2490..3fd79dba 100644 --- a/libraries/radpdfprocessing/model/interactive-forms/form-fields/comboboxfield.md +++ b/libraries/radpdfprocessing/model/interactive-forms/form-fields/comboboxfield.md @@ -27,7 +27,7 @@ The `ComboBoxField` class corresponds to the `FormFieldType.ComboBox` enum value **Example 1: Create a ComboBoxField and add it to a page** - + ## See Also diff --git a/libraries/radpdfprocessing/model/interactive-forms/form-fields/combtextboxfield.md b/libraries/radpdfprocessing/model/interactive-forms/form-fields/combtextboxfield.md index 5c5c442c..498fa922 100644 --- a/libraries/radpdfprocessing/model/interactive-forms/form-fields/combtextboxfield.md +++ b/libraries/radpdfprocessing/model/interactive-forms/form-fields/combtextboxfield.md @@ -24,7 +24,7 @@ The `CombTextBoxField` class corresponds to the `FormFieldType.CombTextBox` enum **Example 1: Create a CombTextBoxField and add it to a page** - + ## See Also diff --git a/libraries/radpdfprocessing/model/interactive-forms/form-fields/formfields.md b/libraries/radpdfprocessing/model/interactive-forms/form-fields/formfields.md index 0c0f6124..a863fa1f 100644 --- a/libraries/radpdfprocessing/model/interactive-forms/form-fields/formfields.md +++ b/libraries/radpdfprocessing/model/interactive-forms/form-fields/formfields.md @@ -39,7 +39,7 @@ You can recognize each field type from the `FormField` base class by getting the **Example 1: Obtain fields from a document** - + The following list shows all the inheritors of the `FormField` class: @@ -58,7 +58,7 @@ Starting with R2 2020, the `Rename` method allows you to rename form fields. Pas **Example 2: Rename form fields** - + ## Merging Documents with Form Fields @@ -66,7 +66,7 @@ When merging documents that contain form fields, you must ensure that each field **Example 3: Merge files with form fields** - + ## See Also diff --git a/libraries/radpdfprocessing/model/interactive-forms/form-fields/listboxfield.md b/libraries/radpdfprocessing/model/interactive-forms/form-fields/listboxfield.md index 3850cf52..102ce362 100644 --- a/libraries/radpdfprocessing/model/interactive-forms/form-fields/listboxfield.md +++ b/libraries/radpdfprocessing/model/interactive-forms/form-fields/listboxfield.md @@ -26,7 +26,7 @@ The `ListBoxField` class provides the following properties: **Example 1: Create a ListBoxField and Add It to a Page** - + ## See Also diff --git a/libraries/radpdfprocessing/model/interactive-forms/form-fields/pushbuttonfield.md b/libraries/radpdfprocessing/model/interactive-forms/form-fields/pushbuttonfield.md index 127887dc..a6d88303 100644 --- a/libraries/radpdfprocessing/model/interactive-forms/form-fields/pushbuttonfield.md +++ b/libraries/radpdfprocessing/model/interactive-forms/form-fields/pushbuttonfield.md @@ -17,7 +17,7 @@ The `PushButtonField` class corresponds to the `FormFieldType.PushButton` enum v **Example 1: Create a PushButtonField and add it to a page** - + >important In **.NET Standard/.NET (Target OS: None)** environments, fonts beyond the [14 standard ones]({%slug radpdfprocessing-concepts-fonts%}#standard-fonts) require a [FontsProvider implementation]({%slug pdfprocessing-implement-fontsprovider%}) to be resolved correctly. diff --git a/libraries/radpdfprocessing/model/interactive-forms/form-fields/radiobuttonfield.md b/libraries/radpdfprocessing/model/interactive-forms/form-fields/radiobuttonfield.md index 7e41e2d2..329a7c61 100644 --- a/libraries/radpdfprocessing/model/interactive-forms/form-fields/radiobuttonfield.md +++ b/libraries/radpdfprocessing/model/interactive-forms/form-fields/radiobuttonfield.md @@ -26,7 +26,7 @@ The `RadioButtonField` class corresponds to the `FormFieldType.RadioButton` enum **Example 1: Create RadioButtonFields and add them to a page** - + ## See Also diff --git a/libraries/radpdfprocessing/model/interactive-forms/form-fields/resetting-form-fields.md b/libraries/radpdfprocessing/model/interactive-forms/form-fields/resetting-form-fields.md index e06ee1a7..7881fef6 100644 --- a/libraries/radpdfprocessing/model/interactive-forms/form-fields/resetting-form-fields.md +++ b/libraries/radpdfprocessing/model/interactive-forms/form-fields/resetting-form-fields.md @@ -22,7 +22,7 @@ The `ResetFormType` property defines the type of the reset form behavior. The av The following example shows how to create a document from scratch, add a form field (for example, `CheckBoxField`), and a push button that triggers the reset action for the checkbox when you click the button. - + >important In **.NET Standard/.NET (Target OS: None)** environments, fonts beyond the [14 standard ones]({%slug radpdfprocessing-concepts-fonts%}#standard-fonts) require a [FontsProvider implementation]({%slug pdfprocessing-implement-fontsprovider%}) to be resolved correctly. @@ -30,7 +30,7 @@ The following example shows how to create a document from scratch, add a form fi If the document already contains form fields and a `PushButtonWidget`, you can access the existing button and add the `ResetFormAction`. - + ## See Also diff --git a/libraries/radpdfprocessing/model/interactive-forms/form-fields/signaturefield.md b/libraries/radpdfprocessing/model/interactive-forms/form-fields/signaturefield.md index 226bc36f..1922d1d3 100644 --- a/libraries/radpdfprocessing/model/interactive-forms/form-fields/signaturefield.md +++ b/libraries/radpdfprocessing/model/interactive-forms/form-fields/signaturefield.md @@ -23,7 +23,7 @@ The `SignatureField` class provides the following properties: **Example 1: Create a SignatureField and Add It to a Page** - + ## See Also diff --git a/libraries/radpdfprocessing/model/interactive-forms/form-fields/textboxfield.md b/libraries/radpdfprocessing/model/interactive-forms/form-fields/textboxfield.md index 45f6011d..28fbe75a 100644 --- a/libraries/radpdfprocessing/model/interactive-forms/form-fields/textboxfield.md +++ b/libraries/radpdfprocessing/model/interactive-forms/form-fields/textboxfield.md @@ -29,7 +29,7 @@ The `TextBoxField` class exposes the following properties: **Example 1: Create a TextBoxField and Add It to a Page** - + >important In .NET Standard, use `Telerik.Documents.Primitives.Rect` instead of `System.Windows.Rect`. diff --git a/libraries/radpdfprocessing/model/interactive-forms/formfieldcollection.md b/libraries/radpdfprocessing/model/interactive-forms/formfieldcollection.md index 98cdfd6a..b849966d 100644 --- a/libraries/radpdfprocessing/model/interactive-forms/formfieldcollection.md +++ b/libraries/radpdfprocessing/model/interactive-forms/formfieldcollection.md @@ -40,7 +40,7 @@ The following methods allow you to construct a form field and add it to the coll **Example 1: Create a Form Field** - + You can also use the following methods to modify the collection of form fields in the document [AcroForm]({%slug radpdfprocessing-model-interactive-forms-acroform %}): @@ -52,7 +52,7 @@ You can also use the following methods to modify the collection of form fields i **Example 2: Use the Methods of FormFieldCollection** - + ## See Also diff --git a/libraries/radpdfprocessing/model/marked-content.md b/libraries/radpdfprocessing/model/marked-content.md index ecebe747..3dbaa8c4 100644 --- a/libraries/radpdfprocessing/model/marked-content.md +++ b/libraries/radpdfprocessing/model/marked-content.md @@ -23,19 +23,19 @@ You can add marked content to a `RadFixedDocument` in the following ways: ## Adding Marked Content Using the PDF Model - + ## Adding Marked Content Using the FixedContentEditor - + ## Adding Marked Content Using the RadFixedDocumentEditor - + ## Adding Marked Content Using the Block - + ## See Also diff --git a/libraries/radpdfprocessing/model/named-destinations.md b/libraries/radpdfprocessing/model/named-destinations.md index 7d1440fc..4092ea1a 100644 --- a/libraries/radpdfprocessing/model/named-destinations.md +++ b/libraries/radpdfprocessing/model/named-destinations.md @@ -33,7 +33,7 @@ You can create `NamedDestination` objects through the `Add()` method of the `Nam #### **Example 1: Create NamedDestination with Destination of type Link** - + ## Remove @@ -41,7 +41,7 @@ You can remove a named destination as you do with any item in a collection. #### **Example 2: Remove NamedDestination** - + ## Rename @@ -49,7 +49,7 @@ In addition to the `Name` property of the `NamedDestination` class, which has a #### **Example 3: Rename NamedDestination** - + ## Check If a Name Exists @@ -57,7 +57,7 @@ The `NamedDestinations` collection provides the `ContainsName()` method. Use it #### **Example 4: Check if a NamedDestination already exists** - + ## See Also diff --git a/libraries/radpdfprocessing/model/path.md b/libraries/radpdfprocessing/model/path.md index 7632acb9..c8b9f76d 100644 --- a/libraries/radpdfprocessing/model/path.md +++ b/libraries/radpdfprocessing/model/path.md @@ -46,13 +46,13 @@ position: 8 #### **Example 1: Create Path and add it to container** - + **Example 2** demonstrates how to use one of the factory methods of the `ContentElementCollection` to create a new path and insert it into the document. #### **Example 2: Add Path to container** - + > There are other methods that allow adding a path to a document. You can use them through the [FixedContentEditor]({%slug radpdfprocessing-editing-fixedcontenteditor%}) class. @@ -62,7 +62,7 @@ You can modify a `Path` element using the properties the class exposes. The prop #### **Example 3: Modifying Path properties** - + ## See Also diff --git a/libraries/radpdfprocessing/model/radfixeddocument.md b/libraries/radpdfprocessing/model/radfixeddocument.md index 5b5b216c..8cd327ea 100644 --- a/libraries/radpdfprocessing/model/radfixeddocument.md +++ b/libraries/radpdfprocessing/model/radfixeddocument.md @@ -67,7 +67,7 @@ position: 1 #### **Example 1: Create RadFixedDocument** - + ## Operating with RadFixedDocument @@ -77,7 +77,7 @@ You can execute different actions with the help of `RadFixedDocument`. For examp #### **Example 2: Add Page to RadFixedDocument** - + Alternatively, you can create a new `RadFixedPage` and add it to the `Pages` collection of a document. @@ -86,20 +86,20 @@ Alternatively, you can create a new `RadFixedPage` and add it to the `Pages` col #### **Example 3: Create and Add a Page to RadFixedDocument** - + **Example 4** shows how to obtain a copy of a `RadFixedDocument`. #### **Example 4: Clone a Document** - + You can merge PDF documents with the `Merge()` method of `RadFixedDocument`. This method clones the source document and appends it to the current instance of `RadFixedDocument`. #### **Example 5: Merge Documents** - + The code from **Example 5** merges the document created in [**Example 1**](#example1) with another `RadFixedDocument`. diff --git a/libraries/radpdfprocessing/model/radfixedpage.md b/libraries/radpdfprocessing/model/radfixedpage.md index ef879a20..bc5f22a3 100644 --- a/libraries/radpdfprocessing/model/radfixedpage.md +++ b/libraries/radpdfprocessing/model/radfixedpage.md @@ -59,7 +59,7 @@ The following example creates a new page and adds it to a document: #### Example: Create RadFixedPage and add it to a document - + ### Add Content @@ -69,7 +69,7 @@ The following example adds a previously created content element to a page: #### Example: Add a content element to RadFixedPage - + For simpler scenarios, use the `Add[Element]()` methods on the `Content` collection. Methods such as `AddPath()`, `AddTextFragment()`, and `AddImage()` create the element, add it to the page, and return it for further configuration. @@ -83,7 +83,7 @@ The following example adds a previously created annotation to a page: #### Example: Add an annotation to RadFixedPage - + You can also call `AddLink()` on the `Annotations` collection. That method creates the link annotation, adds it to the page, and returns it so you can configure it immediately. For more detail, see [link annotations in RadPdfProcessing]({%slug radpdfprocessing-model-annotations-links%}). @@ -95,7 +95,7 @@ The following example changes the `Rotation` and `Size` properties of a page: #### Example: Change RadFixedPage properties - + Changing `Size`, `MediaBox`, `CropBox`, or `Rotation` affects how PDF viewers display and print the page. Apply those settings before final export whenever possible so layout decisions remain predictable. diff --git a/libraries/radpdfprocessing/model/tagged-pdf.md b/libraries/radpdfprocessing/model/tagged-pdf.md index ddc4f549..54cfcf0d 100644 --- a/libraries/radpdfprocessing/model/tagged-pdf.md +++ b/libraries/radpdfprocessing/model/tagged-pdf.md @@ -38,55 +38,55 @@ The following sections demonstrate how to tag the different elements of a `RadFi ### Tagging a TextFragment - + ### Tagging an Annotation - + ### Tagging a Link Annotation - + ### Tagging a Table - + ### Tagging a List - + ### Advanced Example - + ### Auto-Tagging - + ### Tagging a Form Field - + ### Tagging a FormField with FixedContentEditor - + ### Auto-Tagging a FormField with FixedContentEditor - + ### Tagging a Form - + ### Auto-Tagging a Form - + ### Tagging a Link - + ## See Also diff --git a/libraries/radpdfprocessing/model/textfragment.md b/libraries/radpdfprocessing/model/textfragment.md index 296e7cdd..5c468f0e 100644 --- a/libraries/radpdfprocessing/model/textfragment.md +++ b/libraries/radpdfprocessing/model/textfragment.md @@ -58,7 +58,7 @@ Both methods return the actual `TextFragment` instance so you can modify it. #### **Example 1: Create TextFragments and Add Them to a Page** - + >caption Figure 1: Inserted TextFragments @@ -74,7 +74,7 @@ Modify a `TextFragment` element with the properties listed in the [Public API](# #### **Example 2: Modify TextFragment Properties** - + >caption Figure 2: Modified TextFragments diff --git a/libraries/radspreadprocessing/changes-and-backward-compatibility/backward-compatibility.md b/libraries/radspreadprocessing/changes-and-backward-compatibility/backward-compatibility.md index 6a8ba1b1..a80befed 100644 --- a/libraries/radspreadprocessing/changes-and-backward-compatibility/backward-compatibility.md +++ b/libraries/radspreadprocessing/changes-and-backward-compatibility/backward-compatibility.md @@ -126,7 +126,7 @@ If you need to keep the document with A4 `PaperType`, apply this setting before **Set PaperType** - + ## What Is Different in 2016 R3 diff --git a/libraries/radspreadprocessing/cross-platform-support/images.md b/libraries/radspreadprocessing/cross-platform-support/images.md index f2cf8e43..b9e2b9c0 100644 --- a/libraries/radspreadprocessing/cross-platform-support/images.md +++ b/libraries/radspreadprocessing/cross-platform-support/images.md @@ -17,15 +17,15 @@ The .NET Standard specification does not define APIs for getting image propertie **Example 1: Set the default implementation of the ImagePropertiesResolver class** - + **Example 2: Create a custom implementation inheriting the ImagePropertiesResolverBase abstract class (Windows)** - + **Example 3: Set the custom implementation inheriting the ImagePropertiesResolverBase abstract class** - + ## See Also diff --git a/libraries/radspreadprocessing/cross-platform-support/text-measure.md b/libraries/radspreadprocessing/cross-platform-support/text-measure.md index b8ddb87e..cd099e0a 100644 --- a/libraries/radspreadprocessing/cross-platform-support/text-measure.md +++ b/libraries/radspreadprocessing/cross-platform-support/text-measure.md @@ -48,7 +48,7 @@ This implementation uses PdfProcessing to obtain the size of the text and provid **Example 1: Set the SpreadFixedTextMeasurer as a text measurer** - + ## SkiaTextMeasurer @@ -77,7 +77,7 @@ If you prefer to reference assemblies directly, you need: **Example 2: Set the SkiaTextMeasurer as a text measurer** - + ## Custom Text Measurer @@ -85,11 +85,11 @@ You can assign any `SpreadTextMeasurerBase` implementation to the `SpreadExtensi **Example 3: Create a custom implementation inheriting the SpreadTextMeasurerBase abstract class** - + **Example 4: Set the custom implementation as a text measurer** - + ## See Also diff --git a/libraries/radspreadprocessing/features/charts/axes.md b/libraries/radspreadprocessing/features/charts/axes.md index 118890c9..f3db67b6 100644 --- a/libraries/radspreadprocessing/features/charts/axes.md +++ b/libraries/radspreadprocessing/features/charts/axes.md @@ -25,7 +25,7 @@ Refer to the scenario from **Figure 1**. The chart shown there has two axes: a d **Example 1: Axes Properties** - + ## Changing the Axis of a Chart @@ -33,7 +33,7 @@ RadSpreadProcessing allows you to replace the axis of a chart with a new object. **Example 2: Replace Axis** - + ## Changing the Appearance of the Axes @@ -42,7 +42,7 @@ You can customize the way the axes in the chart look. The API of SpreadProcessin **Example 3: Customize the Major Gridlines and Outline of an Axis** - + **Figure 2: Custom Appearance** diff --git a/libraries/radspreadprocessing/features/charts/chart-data.md b/libraries/radspreadprocessing/features/charts/chart-data.md index 558bf415..a1e07e7e 100644 --- a/libraries/radspreadprocessing/features/charts/chart-data.md +++ b/libraries/radspreadprocessing/features/charts/chart-data.md @@ -29,7 +29,7 @@ The `FormulaChartData` type is abstract and it is implemented by the `WorkbookFo **Example 1: Using IChartData** - + >caption Using Chart Data in RadSpreadProcessing diff --git a/libraries/radspreadprocessing/features/charts/pdf-export.md b/libraries/radspreadprocessing/features/charts/pdf-export.md index 151d52b6..13739adc 100644 --- a/libraries/radspreadprocessing/features/charts/pdf-export.md +++ b/libraries/radspreadprocessing/features/charts/pdf-export.md @@ -31,13 +31,13 @@ The [`PdfFormatProvider`]({%slug radspreadprocessing-formats-and-conversion-pdf- **Example 1: Implementing a Renderer** - + When you have the renderer implemented, you need to assign it to the `PdfFormatProvider` instance through the `ChartRenderer` property of its [ExportSettings]({%slug radspreadprocessing-format-and-conversion-pdf-settings%}). **Example 2: Registering the Renderer** - + Now the chart objects in the spreadsheet are exported along with the other content after you invoke the `Export()` method of `PdfFormatProvider`. diff --git a/libraries/radspreadprocessing/features/charts/series.md b/libraries/radspreadprocessing/features/charts/series.md index c24f960d..8f864453 100644 --- a/libraries/radspreadprocessing/features/charts/series.md +++ b/libraries/radspreadprocessing/features/charts/series.md @@ -83,7 +83,7 @@ To better illustrate how you can change the series of a chart, consider the samp **Example 1: Add and Remove Series from a Chart** - + **Figure 2: Modified Series of a Chart** @@ -93,7 +93,7 @@ The same methods for adding and removing series can be accessed through the conc **Example 2: Add Series to a Chart Using Concrete SeriesGroup Object** - + ## Iterating the Series of a Chart @@ -102,7 +102,7 @@ You can access the `Series` property of the `SeriesGroup` object contained in th **Example 3: Iterate Series** - + ## Making Changes to the Series @@ -110,7 +110,7 @@ You can modify the properties of the base class for all series—`SeriesBase`. **Example 4: Change Series** - + ## SeriesGroup Class and Properties Related to Specific Series Types @@ -168,7 +168,7 @@ The `ScatterStyle` enumeration supports the following values: **Example 5: Customize the Appearance of ScatterSeries** - + ## Series Grouping @@ -181,7 +181,7 @@ Some series groups (Bar, Line, and Area) implement the `ISupportGrouping` interf **Example 6: Creating Standard/Clustered Bar Chart with Vertical Orientation** - + **Figure 4: Standard/Clustered Bar Chart with Vertical Orientation** @@ -189,7 +189,7 @@ Some series groups (Bar, Line, and Area) implement the `ISupportGrouping` interf **Example 7: Creating Stacked Bar Chart with Vertical Orientation** - + **Figure 5: Stacked Bar Chart with Vertical Orientation** @@ -198,7 +198,7 @@ Some series groups (Bar, Line, and Area) implement the `ISupportGrouping` interf **Example 8: Creating Percent-Stacked Bar Chart with Vertical Orientation** - + **Figure 6: Percent-Stacked Bar Chart with Vertical Orientation** diff --git a/libraries/radspreadprocessing/features/charts/title-and-legend.md b/libraries/radspreadprocessing/features/charts/title-and-legend.md index 5c2d3a1c..521cda2a 100644 --- a/libraries/radspreadprocessing/features/charts/title-and-legend.md +++ b/libraries/radspreadprocessing/features/charts/title-and-legend.md @@ -19,12 +19,12 @@ You can access and set the `Title` property of the `DocumentChart` object, which **Example 1: Setting the Title of a Chart to a String** - + **Example 2: Setting the Title of a Series to a CellRange** - + **Figure 1: Chart Title** @@ -39,7 +39,7 @@ You can add or edit the legend of the chart through the `Legend` property of the **Example 3: Adding a Chart Legend** - + **Figure 2: Chart Legend** diff --git a/libraries/radspreadprocessing/features/charts/using-charts.md b/libraries/radspreadprocessing/features/charts/using-charts.md index 0215cddf..6bf12016 100644 --- a/libraries/radspreadprocessing/features/charts/using-charts.md +++ b/libraries/radspreadprocessing/features/charts/using-charts.md @@ -43,7 +43,7 @@ Once you have created a `FloatingChartShape`, you can insert it in the document **Example 1: Create a Chart Through FloatingChartShape and Add It to a Worksheet** - + The result of executing the code in **Example 1** looks like **Figure 1**. @@ -54,7 +54,7 @@ The `Chart` property of `FloatingChartShape` holds an object of type [DocumentCh **Example 2: Create a Combo (Column and Line) Chart Through FloatingChartShape and Add It to a Worksheet** - + The result of executing the code in **Example 2** looks like **Figure 2**. @@ -67,7 +67,7 @@ The `FloatingChartShape` class exposes properties that allow you to customize th **Example 3: Customize the Fill and Outline of FloatingChartShape** - + The result of executing the code in **Example 3** over a cell range containing sample data looks like **Figure 3**. @@ -94,13 +94,13 @@ You can create an empty `DocumentChart` object and then set the desired values m **Example 4: Create an Empty Chart and Set Its Values Manually** - + You can then use the chart to replace the chart in an existing `FloatingChartShape`. **Example 5: Add the DocumentChart to a Worksheet** - + >note For more information about series, see the [Series]({%slug radspreadprocessing-features-charts-series%}) article. For a description of the axes objects, see [Working with Axes]({%slug radspreadprocessing-features-charts-axes%}). @@ -112,4 +112,4 @@ You can access the `Charts` collection of the `Shapes` collection of the `Worksh **Example 6: Iterate All the Charts in a Worksheet** - + diff --git a/libraries/radspreadprocessing/features/clipboard-support.md b/libraries/radspreadprocessing/features/clipboard-support.md index 3c89e989..d436b7c3 100644 --- a/libraries/radspreadprocessing/features/clipboard-support.md +++ b/libraries/radspreadprocessing/features/clipboard-support.md @@ -20,7 +20,7 @@ To copy values from your worksheet, create a `CellSelection` for the desired cel #### __Example 1: Copy Selected Cells__ - + @@ -46,7 +46,7 @@ The document model provides control over the content and the formatting included #### __Example 2: Copy All__ - + @@ -54,7 +54,7 @@ Using a different `PasteType` produces different output. **Example 3** pastes th #### __Example 3: Paste Using PasteType.Values__ - + @@ -64,7 +64,7 @@ If you want to paste the formula contained in *A1* (not only its result) and kee #### __Example 4: Combine Values and Formats PasteType__ - + diff --git a/libraries/radspreadprocessing/features/comments.md b/libraries/radspreadprocessing/features/comments.md index 3c720b22..402c7cad 100644 --- a/libraries/radspreadprocessing/features/comments.md +++ b/libraries/radspreadprocessing/features/comments.md @@ -41,7 +41,7 @@ To add a comment, specify the cell index to which the comment relates, the autho **Example 1: Add a Comment** - + The previous snippet adds a comment in cell B2. @@ -52,7 +52,7 @@ To remove a comment, specify the comment instance. You can obtain this instance **Example 2: Remove a Comment** - + ## Replies @@ -75,7 +75,7 @@ Each comment can be replied to, forming a thread of information. All replies are **Example 3: Working with Replies** - + ### Events @@ -92,11 +92,11 @@ The two events for both collections use similar enumeration types for event argu **Example 4: Change the Author of a Comment upon Adding It to the CommentCollection Using the Changing Event** - + **Example 5: Change the Author of a Reply upon Adding It to the ReplySortedCollection Using the Changing Event** - + diff --git a/libraries/radspreadprocessing/features/conditional-formatting.md b/libraries/radspreadprocessing/features/conditional-formatting.md index 2094881a..9cfbd5d2 100644 --- a/libraries/radspreadprocessing/features/conditional-formatting.md +++ b/libraries/radspreadprocessing/features/conditional-formatting.md @@ -75,7 +75,7 @@ The `Formatting` property can be used for all rules listed in **Table 1** except **Example 1: Create Formatting** - + ## Create and Apply Conditional Formatting Rule @@ -84,21 +84,21 @@ Each of the classes listed in **Table 1** exposes constructors that enable you t **Example 2: Create a Between Rule** - + #### Between rule applied on a range of values ![Between rule applied on a range of values](images/RadSpreadProcessing_Features_ConditionalFormatting_Between.png) **Example 3: Create a GreaterThanOrEqualTo Rule** - + #### GreaterThanOrEqualTo rule applied on a range of values ![GreaterThanOrEqualTo rule applied on a range of values](images/RadSpreadProcessing_Features_ConditionalFormatting_GreaterThanOrEqualTo.png) **Example 4: Create a ColorScale Rule** - + >note Depending on the exact number of colors you want to apply for the `ColorScaleRule`, you can choose between `TwoColorScaleValueContext` and `ThreeColorScaleValueContext` classes. @@ -107,7 +107,7 @@ Each of the classes listed in **Table 1** exposes constructors that enable you t **Example 5: Create a DataBar Rule** - + #### DataBar rule applied on a range of values ![DataBar rule applied on a range of values](images/RadSpreadProcessing_Features_ConditionalFormatting_DataBar.png) @@ -115,7 +115,7 @@ Each of the classes listed in **Table 1** exposes constructors that enable you t **Example 6: Create an IconSet Rule** - + #### IconSet rule applied on a range of values ![IconSet rule applied on a range of values](images/RadSpreadProcessing_Features_ConditionalFormatting_IconSet.png) @@ -145,7 +145,7 @@ Any previously applied formatting can be obtained through the `GetConditionalFor **Example 7: Get the Conditional Formatting** - + ## Remove Conditional Formatting @@ -153,7 +153,7 @@ Through the `CellSelection`, you can also remove the formatting from the selecte **Example 8: Remove the Conditional Formatting** - + ## Resolve Conditional Formatting @@ -163,7 +163,7 @@ For the rules that apply on all the values in the range, the return value is **b **Example 9: Resolve a Conditional Formatting Rule** - + ## Update the Rule for a Formatting @@ -171,7 +171,7 @@ If you want to change the rule used by a `ConditionalFormatting` object, use the **Example 10: Change the Rule for Existing Conditional Formatting** - + ## Update the Cell Range of Existing Formatting diff --git a/libraries/radspreadprocessing/features/data-validation.md b/libraries/radspreadprocessing/features/data-validation.md index a396babc..dd2fdb97 100644 --- a/libraries/radspreadprocessing/features/data-validation.md +++ b/libraries/radspreadprocessing/features/data-validation.md @@ -85,7 +85,7 @@ The any value data validation rule is the default rule. It applies to all cells #### __Example 1: Apply Any Value Rule__ - + The result from the code snippet in **Example 1** is shown in **Figure 1**. @@ -101,7 +101,7 @@ The code snippet in **Example 2** shows how to create a whole number data valida #### __Example 2: Apply Whole Number Rule with Two Arguments__ - + The result from **Example 2** is shown in **Figure 2**. @@ -119,13 +119,13 @@ The code snippet in **Example 3** shows how to create a whole number data valida #### __Example 3: Apply Whole Number Rule with One Argument__ - + You can enter any valid [formula]({%slug radspreadprocessing-features-formulas-general-information%}) as a rule argument that returns a number. **Example 4** shows how to restrict user input to the values less than the sum of the values in cells A1 and B1. #### __Example 4: Apply Whole Number Rule with Formula__ - + #### Figure 4: Whole number rule based on formula @@ -143,7 +143,7 @@ The decimal data validation rule allows you to restrict user input to decimal nu #### __Example 5: Apply Decimal Rule__ - + ## List Rule @@ -153,7 +153,7 @@ The list data validation rule allows you to restrict user input to a predefined #### __Example 6: Apply List Rule__ - + **Figure 5** shows the result from **Example 6**. @@ -169,7 +169,7 @@ The date rule allows you to restrict user input to a certain range of dates spec #### __Example 7: Apply Date Rule__ - + ## Time Rule @@ -179,7 +179,7 @@ The code snippet in **Example 8** shows how to restrict user input to the range #### __Example 8: Apply Time Rule__ - + ## Text Length Rule @@ -189,7 +189,7 @@ The text length rule allows you to restrict user input to text with a length in #### __Example 9: Apply Text Length Rule__ - + ## Custom Rule @@ -199,7 +199,7 @@ The code snippet in **Example 10** shows how to restrict user input to values gr #### __Example 10: Apply Custom Rule__ - + ## Evaluate Rules @@ -208,7 +208,7 @@ To check if a cell value satisfies a rule, evaluate the rule using the desired c **Example 11** demonstrates how to evaluate a rule using the `Evaluate()` method. #### __Example 11: Evaluate Rule__ - + ## See Also diff --git a/libraries/radspreadprocessing/features/fill-data-automatically/repeat-values.md b/libraries/radspreadprocessing/features/fill-data-automatically/repeat-values.md index 63bc9794..386599e0 100644 --- a/libraries/radspreadprocessing/features/fill-data-automatically/repeat-values.md +++ b/libraries/radspreadprocessing/features/fill-data-automatically/repeat-values.md @@ -28,7 +28,7 @@ To repeat the values, first create a [CellSelection]({%slug radspreadprocessing- #### __Example 1: Fill Right__ - + @@ -43,7 +43,7 @@ Similarly, you can automatically copy the values of a row to its adjacent rows. #### __Example 2: Fill Down__ - + diff --git a/libraries/radspreadprocessing/features/fill-data-automatically/series.md b/libraries/radspreadprocessing/features/fill-data-automatically/series.md index 39886e59..0471f155 100644 --- a/libraries/radspreadprocessing/features/fill-data-automatically/series.md +++ b/libraries/radspreadprocessing/features/fill-data-automatically/series.md @@ -36,7 +36,7 @@ The `FillDataSeriesLinear()` method of the `CellSelection` class constructs line #### __Example 1: Fill Linear Series__ - + @@ -53,7 +53,7 @@ The `FillDataSeriesLinearTrend()` method produces series using a linear fitting #### __Example 2: Fill Linear Trend Series__ - + @@ -75,7 +75,7 @@ The `FillDataSeriesExponential()` method calculates the values of each cell afte #### __Example 3: Fill Exponential Series__ - + @@ -92,7 +92,7 @@ The `FillDataSeriesExponentialTrend()` method calculates the values of the serie #### __Example 4: Exponential Trend Series__ - + @@ -114,7 +114,7 @@ The `FillDataSeriesDate()` method fills date values incrementally using a specif #### __Example 5: Fill Date Series__ - + @@ -193,7 +193,7 @@ Similarly to the other auto fill methods, `FillDataSeriesAuto()` takes three arg #### __Example 6: Auto Fill__ - + @@ -206,7 +206,7 @@ Similarly to the other auto fill methods, `FillDataSeriesAuto()` takes three arg #### __Example 7: Auto Fill Reversed Direction__ - + diff --git a/libraries/radspreadprocessing/features/filtering.md b/libraries/radspreadprocessing/features/filtering.md index 202fb2b5..213b104b 100644 --- a/libraries/radspreadprocessing/features/filtering.md +++ b/libraries/radspreadprocessing/features/filtering.md @@ -72,7 +72,7 @@ In addition to the members of the `IFilter` interface, the `ValuesCollectionFilt #### __Example 1: Create ValuesCollectionFilter__ - + @@ -116,7 +116,7 @@ The criteria is represented by the `CustomFilterCriteria` class. Each criteria c #### __Example 2: Create CustomFilter__ - + @@ -144,7 +144,7 @@ In addition to the members of the `IFilter` interface, the `TopFilter` class exp #### __Example 3: Create TopFilter__ - + @@ -162,7 +162,7 @@ In addition to the members of the `IFilter` interface, the `DynamicFilter` class #### __Example 4: Create DynamicFilter__ - + The filter shows only dates that fall within the week prior to the application of the filter. @@ -179,7 +179,7 @@ In addition to the members of the `IFilter` interface, the `ForeColorFilter` cla #### __Example 5: Create ForeColorFilter__ - + @@ -197,7 +197,7 @@ In addition to the members of the `IFilter` interface, the `FillColorFilter` cla #### __Example 6: Create FillColorFilter__ - + @@ -212,7 +212,7 @@ To set a filter on a range, follow these steps: #### __Example 7: Set FilterRange__ - + @@ -221,7 +221,7 @@ To set a filter on a range, follow these steps: #### __Example 8: Create DynamicFilter__ - + The relative index specified in the constructor is 1, which means that the filter is set on the second column of the range (column C). @@ -231,7 +231,7 @@ To set a filter on a range, follow these steps: #### __Example 9: Set Filter__ - + **Figure 2** demonstrates the result of the filtering when applied on the values 1–9 in column B and 11–19 in column C. @@ -245,7 +245,7 @@ To set a filter on a range, follow these steps: #### __Example 10: Set Filter Through Selection__ - + @@ -260,7 +260,7 @@ When a filter is set, it is automatically applied. The application of a filter h #### __Example 11: Reapply a Filter__ - + @@ -280,7 +280,7 @@ As with the `ReapplyFilter()` method, you can remove a filter by instance and by #### __Example 12: Remove Filter__ - + diff --git a/libraries/radspreadprocessing/features/find-and-replace.md b/libraries/radspreadprocessing/features/find-and-replace.md index 22fd1d3f..8032db68 100644 --- a/libraries/radspreadprocessing/features/find-and-replace.md +++ b/libraries/radspreadprocessing/features/find-and-replace.md @@ -40,7 +40,7 @@ Both `Workbook` and `Worksheet` classes expose methods that search their content **Example 1: Perform Find and Find All** - + ## Replace and ReplaceAll @@ -52,7 +52,7 @@ In addition to the `Find()` and `FindAll()` methods, the `Workbook` and `Workshe **Example 2: Perform Replace and Replace All** - + ## See Also diff --git a/libraries/radspreadprocessing/features/formulas/calculation-chain.md b/libraries/radspreadprocessing/features/formulas/calculation-chain.md index aafdee94..00152336 100644 --- a/libraries/radspreadprocessing/features/formulas/calculation-chain.md +++ b/libraries/radspreadprocessing/features/formulas/calculation-chain.md @@ -41,7 +41,7 @@ When you modify cell values or formulas in bulk, use the `SuspendLayoutUpdate` a **Example 1: Batch-Modify Cell Values with Suspended Layout Updates** - + The `SuspendLayoutUpdate` method prevents the workbook from recalculating its layout on each cell change. Call `ResumeLayoutUpdate` after you finish the batch to trigger a single layout pass. diff --git a/libraries/radspreadprocessing/features/formulas/cell-references.md b/libraries/radspreadprocessing/features/formulas/cell-references.md index c320ebff..ca93bde1 100644 --- a/libraries/radspreadprocessing/features/formulas/cell-references.md +++ b/libraries/radspreadprocessing/features/formulas/cell-references.md @@ -28,7 +28,7 @@ To display the sum of cells A1 and B1 in cell C1, invoke the `SetValue()` method **Example 1: Set Reference Value** - + @@ -40,7 +40,7 @@ References may optionally specify the worksheet of the referenced cell or range. **Example 2: Set Reference Value from Another Sheet** - + @@ -53,7 +53,7 @@ References to whole rows or columns must always contain a colon separating the s **Example 3: Set Reference to Cell Range** - + @@ -93,11 +93,11 @@ SpreadProcessing supports references to whole columns and whole rows. You can us **Example 4: Use Reference to a Column** - + **Example 5: Use Reference to Multiple Rows** - + ## See Also diff --git a/libraries/radspreadprocessing/features/formulas/custom-functions.md b/libraries/radspreadprocessing/features/formulas/custom-functions.md index 18904b95..e5843280 100644 --- a/libraries/radspreadprocessing/features/formulas/custom-functions.md +++ b/libraries/radspreadprocessing/features/formulas/custom-functions.md @@ -44,7 +44,7 @@ Additionally, each custom function needs to be registered through the `FunctionM **Example 1: Register Custom Function** - + @@ -101,7 +101,7 @@ The values of these properties come from the [ArgumentInterpretation](https://do **Example 2: Create ArgumentConversionRules** - + @@ -149,7 +149,7 @@ The `FunctionInfo` class provides properties that describe the purpose of the fu **Example 3: Create FunctionInfo** - + @@ -163,7 +163,7 @@ The result of the function calculations is the number of arguments passed to the **Example 4: Create ARGUMENTS Function** - + @@ -173,7 +173,7 @@ The following example defines a custom function named "E" that inherits from the **Example 5: Create E Function** - + diff --git a/libraries/radspreadprocessing/features/formulas/formulas.md b/libraries/radspreadprocessing/features/formulas/formulas.md index a2faa23c..bee8ebb3 100644 --- a/libraries/radspreadprocessing/features/formulas/formulas.md +++ b/libraries/radspreadprocessing/features/formulas/formulas.md @@ -38,7 +38,7 @@ To set the value of a cell to a formula, use the `SetValue()` method of the [Cel **Example 1: Set Formula** - + @@ -50,7 +50,7 @@ A closer look at the value of cell A1 reveals that the two methods `GetValueAsSt **Example 2: Get Formula Value** - + diff --git a/libraries/radspreadprocessing/features/freeze-panes.md b/libraries/radspreadprocessing/features/freeze-panes.md index e3f00f5b..f50175cf 100644 --- a/libraries/radspreadprocessing/features/freeze-panes.md +++ b/libraries/radspreadprocessing/features/freeze-panes.md @@ -70,7 +70,7 @@ The result illustrated in **Figure 3** can be achieved with the code from **Exam **Example 1: Freezing Panes** - + ### Horizontal and Vertical Split @@ -78,7 +78,7 @@ If you want to create a vertical or horizontal split, set either the row count o **Example 2: Vertical Split** - + The result from **Example 2** is shown in **Figure 4**. @@ -107,7 +107,7 @@ The state from **Figure 3** can be achieved with the code from **Example 3**. **Example 3: Freeze Panes Through the Pane Class** - + > Regardless of the method used to freeze the panes of a worksheet, do not place the top left index of the frozen pane after or to the right of the index determined by the frozen row count and the frozen column count. Doing so may result in an invalid document and unexpected behavior. @@ -118,13 +118,13 @@ To unfreeze the panes of the worksheet, use the same methods described previousl **Example 4: Unfreezing Panes** - + Another option is to set the `Pane` property of the `ViewState` to `null`. **Example 5: Unfreezing Panes Through the Pane Class** - + ## See Also diff --git a/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/complete-context-question-processor.md b/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/complete-context-question-processor.md index 715ffbfa..71d8537d 100644 --- a/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/complete-context-question-processor.md +++ b/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/complete-context-question-processor.md @@ -60,7 +60,7 @@ The following example demonstrates how to use the `CompleteContextQuestionProces **Example 1: Using CompleteContextQuestionProcessor** - + ## See Also diff --git a/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/custom-partialcontextquestionprocessor.md b/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/custom-partialcontextquestionprocessor.md index f7798bb1..21aa261a 100644 --- a/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/custom-partialcontextquestionprocessor.md +++ b/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/custom-partialcontextquestionprocessor.md @@ -54,7 +54,7 @@ The example constructs a custom `PartialContextQuestionProcessor` by supplying a >note `DefaultEmbedder` is only available on **net8-windows** and higher. On other target frameworks you must supply your own `IEmbedder` (as shown with [CustomOpenAIEmbedder]({%slug radspreadprocessing-features-gen-ai-powered-document-insights-partial-context-question-processor%}#implementing-custom-iembedder)). - + ## See Also * [PartialContextQuestionProcessor]({%slug radspreadprocessing-features-gen-ai-powered-document-insights-partial-context-question-processor%}) diff --git a/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/getting-started.md b/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/getting-started.md index c93a3f84..faf41709 100644 --- a/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/getting-started.md +++ b/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/getting-started.md @@ -21,7 +21,7 @@ The following example demonstrates how to use the GenAI-powered Document Insight **Example 1: Using GenAI-powered Document Insights** - + When you run this code, the AI processes your document, generates a summary, and answers your questions. diff --git a/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/partial-context-question-processor.md b/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/partial-context-question-processor.md index d21b4c9e..eb0dba3a 100644 --- a/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/partial-context-question-processor.md +++ b/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/partial-context-question-processor.md @@ -65,7 +65,7 @@ The settings are created only through `EmbeddingSettingsFactory`'s `CreateSettin | `ProduceJsonFormattedContext` | Whether the context should be formatted as JSON. Default is `false`. | | `TotalContextTokenLimit` | The total token limit for the context sent to the answering model. Default is `null` (takes half of the max limit). | - + ## Usage Examples @@ -73,13 +73,13 @@ The settings are created only through `EmbeddingSettingsFactory`'s `CreateSettin This example demonstrates how to use the `PartialContextQuestionProcessor` with the built-in embedding on .NET {{site.mindotnetversion}}+ (Target OS Windows) + [Packages for .NET {{site.mindotnetversion}} and .NET {{site.maxdotnetversion}} for Windows]({%slug available-nuget-packages%}#packages-for-net-framework-and-net-{{site.mindotnetversion}}-and-net-{{site.maxdotnetversion}}-for-windows). For setting up the AI client, see the [AI Provider Setup]({%slug radspreadprocessing-features-gen-ai-powered-document-insights-prerequisites%}#ai-provider-setup) section: - + **Example 2: Using PartialContextQuestionProcessor with Custom IEmbedder** This example demonstrates how to use the `PartialContextQuestionProcessor` with a custom `IEmbedder` implementation as described in the [Implementing Custom IEmbedder]({%slug radspreadprocessing-features-gen-ai-powered-document-insights-partial-context-question-processor%}#implementing-custom-iembedder) section: - + ### Implementing Custom IEmbedder @@ -91,7 +91,7 @@ A sample custom `CustomOpenAIEmbedder` implementation for the `IEmbedder` is sho > * **Telerik.Windows.Documents.AIConnector** > * **Telerik.Windows.Documents.Spreadsheet** - + ## See Also diff --git a/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/prerequisites.md b/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/prerequisites.md index def0cbdf..0eb19e46 100644 --- a/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/prerequisites.md +++ b/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/prerequisites.md @@ -62,7 +62,7 @@ Before using the GenAI-powered Document Insights functionality, you need to set **Example 1: Setting Up Azure OpenAI** - + ### OpenAI Setup @@ -71,7 +71,7 @@ Before using the GenAI-powered Document Insights functionality, you need to set **Example 2: Setting Up OpenAI** - + ### Ollama Setup (Local AI) @@ -83,7 +83,7 @@ Ollama allows you to run AI models locally on your machine. This is useful for d **Example 3: Setting Up Ollama** - + ## See Also diff --git a/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/summarization-processor.md b/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/summarization-processor.md index a30a2dc9..07821798 100644 --- a/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/summarization-processor.md +++ b/libraries/radspreadprocessing/features/gen-ai-powered-document-insights/summarization-processor.md @@ -51,7 +51,7 @@ The `SummarizationProcessorSettings` class defines configuration options for the **Example 1: Configuring SummarizationProcessorSettings** - + ## Usage Example @@ -69,7 +69,7 @@ This approach allows the processor to handle documents of any size efficiently, **Example 2: Using SummarizationProcessor** - + ## See Also diff --git a/libraries/radspreadprocessing/features/grouping.md b/libraries/radspreadprocessing/features/grouping.md index dc1c7efc..106b172a 100644 --- a/libraries/radspreadprocessing/features/grouping.md +++ b/libraries/radspreadprocessing/features/grouping.md @@ -43,13 +43,13 @@ There are two available options when grouping. The first option is to assign the **Example 1: Grouping Columns Using Outline Level** - + The other option is to use the `Group` method exposed by the row/column selection classes. **Example 2: Grouping Columns Using the Group Method** - + **Figure 2** shows the result of both approaches. @@ -68,13 +68,13 @@ The following code snippets show the two approaches to make these changes in a f **Example 3: Ungrouping Columns Using the Ungroup Method** - + You can achieve the same result with the code in **Example 4**. **Example 4: Ungrouping Columns Using Outline Level** - + ## Getting the Outline Level @@ -83,7 +83,7 @@ You can get the outline level of a row/column or a group of rows/columns using t **Example 5: Getting the OutlineLevel** - + ## Setting the Position of the Summary Row or Column @@ -105,7 +105,7 @@ Both properties have a default value of `true`. The following snippet shows how **Example 6: Setting the Position of the Summary Column to Left** - + **Figure 5: Left Summary Column** ![Left summary column example](images/RadSpreadProcessing_Features_Grouping_05.png) diff --git a/libraries/radspreadprocessing/features/headers-and-footers.md b/libraries/radspreadprocessing/features/headers-and-footers.md index a4150a5a..90216f39 100644 --- a/libraries/radspreadprocessing/features/headers-and-footers.md +++ b/libraries/radspreadprocessing/features/headers-and-footers.md @@ -1,4 +1,4 @@ ---- +--- title: Headers and Footers description: Learn how to add rich text content in page margins as headers and footers when exporting spreadsheet worksheets in RadSpreadProcessing. page_title: Headers and Footers @@ -32,7 +32,7 @@ The following subsections describe the Headers and Footers API in **RadSpreadPro **Example 1: Get HeaderFooterSettings** - + @@ -73,7 +73,7 @@ The `HeaderFooterSection` class defines the content of a particular header/foote **Example 2: Set Content to a Header/Footer Section** - + The header and footer of the first page in the worksheet from the snippet will be evaluated and rendered as shown in **Figure 1**. @@ -114,7 +114,7 @@ The following table describes all valid uses of the ampersand symbol sequences. **Example 3: Insert Fields in Header/Footer** - + **Figure 2** shows how the document looks after applying the settings demonstrated in **Example 3**. @@ -137,7 +137,7 @@ To control the vertical positioning of the headers and footers on the page, use **Example 4: Setting Margins to Header/Footer** - + The [Unit class](https://docs.telerik.com/devtools/document-processing/api/Telerik.Windows.Documents.Media.Unit.html), used in **Example 4**, provides convenient methods that help you convert a value between different measurement units. diff --git a/libraries/radspreadprocessing/features/history.md b/libraries/radspreadprocessing/features/history.md index 7557d68e..6a5f78d0 100644 --- a/libraries/radspreadprocessing/features/history.md +++ b/libraries/radspreadprocessing/features/history.md @@ -32,7 +32,7 @@ By default, the `WorkbookHistory` class does not record all changes introduced t **Example 1: Enable History** - + @@ -46,7 +46,7 @@ Once the history is enabled you can invoke its `Undo()` and `Redo()` methods to **Example 2: Perform Undo and Redo** - + @@ -60,7 +60,7 @@ The `Workbook` history offers a friendly API that allows grouping multiple chang **Example 3: Create Undo Group** - + @@ -74,6 +74,6 @@ To clear the history, call the `Clear()` method of the `WorkbookHistory` class. **Example 4: Clear History** - + diff --git a/libraries/radspreadprocessing/features/hyperlink.md b/libraries/radspreadprocessing/features/hyperlink.md index 54098c6d..9c3123af 100644 --- a/libraries/radspreadprocessing/features/hyperlink.md +++ b/libraries/radspreadprocessing/features/hyperlink.md @@ -57,7 +57,7 @@ You can create instances of each of those types using the static methods of the **Example 1: Create Link to Web Address** - + @@ -66,7 +66,7 @@ You can create instances of each of those types using the static methods of the **Example 2: Create Link to Place in the Document** - + **Example 3** creates a hyperlink to a cell in another worksheet of the document. @@ -74,7 +74,7 @@ You can create instances of each of those types using the static methods of the **Example 3: Create Link to a Cell in Another Worksheet of the Document** - + @@ -83,7 +83,7 @@ You can create instances of each of those types using the static methods of the **Example 4: Create Link to Email Address** - + @@ -97,7 +97,7 @@ To add a hyperlink, you need to specify a cell range that contains the hyperlink **Example 5: Add Hyperlink** - + @@ -111,7 +111,7 @@ There are several ways you can retrieve hyperlinks from the `HyperlinkCollection **Example 6: Define Cell Range** - + @@ -120,7 +120,7 @@ There are several ways you can retrieve hyperlinks from the `HyperlinkCollection **Example 7: Get Hyperlinks in Cell Range** - + @@ -132,7 +132,7 @@ There are several ways you can retrieve hyperlinks from the `HyperlinkCollection **Example 8: Get Hyperlinks Intersecting with Cell Range** - + @@ -141,7 +141,7 @@ There are several ways you can retrieve hyperlinks from the `HyperlinkCollection **Example 9: Get Last Hyperlink Intersecting with Cell Range** - + @@ -153,7 +153,7 @@ There are several ways you can retrieve hyperlinks from the `HyperlinkCollection **Example 10: Get Hyperlink Exactly Matching Cell Range** - + @@ -167,6 +167,6 @@ To remove a hyperlink you need to retrieve a `SpreadsheetHyperlink` object and t **Example 11: Remove Hyperlink** - + diff --git a/libraries/radspreadprocessing/features/merge-unmerge-cells.md b/libraries/radspreadprocessing/features/merge-unmerge-cells.md index fbea4b97..510d69c9 100644 --- a/libraries/radspreadprocessing/features/merge-unmerge-cells.md +++ b/libraries/radspreadprocessing/features/merge-unmerge-cells.md @@ -28,7 +28,7 @@ The following examples show how the two methods for merging change a worksheet. **Example 1: Construct Worksheet** - + @@ -43,7 +43,7 @@ The following examples show how the two methods for merging change a worksheet. **Example 2: Perform Merge Operation** - + @@ -64,7 +64,7 @@ The following example shows how the `MergeAcross()` method changes the same regi **Example 3: Perform Merge Across** - + @@ -85,7 +85,7 @@ If you now try to merge a cell range that intersects with another merged cell ra **Example 4: Intersect Cell Range with Merged Cell Range** - + @@ -113,7 +113,7 @@ The `Cells` class exposes a `GetIsMerged()` method that allows you to determine **Example 5: Check if Cell Is in Merged Cell Range** - + @@ -127,7 +127,7 @@ Another way to check if a cell belongs to a merged range is to use the `TryGetCo **Example 6: Try Get Merged Cell Range** - + @@ -141,7 +141,7 @@ Use the `GetContainingMergedRanges()` method of the `Cells` class to retrieve al **Example 7: Get All Containing Merged Ranges in a Range** - + @@ -155,7 +155,7 @@ The `GetMergedCellRanges()` method of the `Cells` class returns an enumeration h **Example 8: Get All Merged Ranges** - + @@ -172,7 +172,7 @@ Once a cell is merged, the API offers an easy way to split it back to its compos **Example 9: Unmerge Cells** - + diff --git a/libraries/radspreadprocessing/features/named-ranges.md b/libraries/radspreadprocessing/features/named-ranges.md index 70d3cbe1..6d7468f3 100644 --- a/libraries/radspreadprocessing/features/named-ranges.md +++ b/libraries/radspreadprocessing/features/named-ranges.md @@ -89,7 +89,7 @@ The document model has support only for Defined Names. **Example 1: Add and Use Names** - + > Other than the name, the `RefersTo` value and the comment parameter, the `Add` method requires a cell index. The reason for this is that with some defined names, the cell index associated with their creation is relevant to the resulting value. More specifically, this is the case when the `RefersTo` property includes a relative cell reference. For example, in the case of a name where the `RefersTo` field is "=C3" (as opposed to "=$C$3") and the cell index is CellIndex(0,0), that is A1, the defined name always points two rows lower and two columns to the right of the current cell it is used in: if you enter =Name in A1, A1 has the value of C3 and if you enter the same in B2, it has the value of D4. > @@ -106,7 +106,7 @@ The `NameCollection` class exposes a `Remove()` method that takes a string param **Example 2: Remove Name** - + ## See Also diff --git a/libraries/radspreadprocessing/features/notes.md b/libraries/radspreadprocessing/features/notes.md index 93e45c6f..509286ad 100644 --- a/libraries/radspreadprocessing/features/notes.md +++ b/libraries/radspreadprocessing/features/notes.md @@ -43,7 +43,7 @@ To add a note, specify the cell index to which the note relates, the position wh **Example 1: Add Note** - + The previous snippet adds a note in cell B2 with a position on cell F6. @@ -51,7 +51,7 @@ The previous snippet adds a note in cell B2 with a position on cell F6. **Example 2: Remove Note** - + ### Hide and Show Notes @@ -65,7 +65,7 @@ You can use one of the following methods to show or hide single or all notes: **Example 3: Hide Note** - + ### Events diff --git a/libraries/radspreadprocessing/features/number-formats.md b/libraries/radspreadprocessing/features/number-formats.md index 9b52c960..f6c23eb5 100644 --- a/libraries/radspreadprocessing/features/number-formats.md +++ b/libraries/radspreadprocessing/features/number-formats.md @@ -56,35 +56,35 @@ The following examples demonstrate how to apply a predefined format to a `CellSe **Example 1: Apply General Format** - + **Example 1** produces the following result: ![Rad Spread Processing Features Number Formatting 00](images/RadSpreadProcessing_Features_Number_Formatting_00.jpg) **Example 2: Apply Number Format** - + **Example 2** produces the following result: ![Rad Spread Processing Features Number Formatting 01](images/RadSpreadProcessing_Features_Number_Formatting_01.jpg) **Example 3: Apply Currency Format** - + **Example 3** produces the following result: ![Rad Spread Processing Features Number Formatting 02](images/RadSpreadProcessing_Features_Number_Formatting_02.jpg) **Example 4: Apply Accounting Format** - + **Example 4** produces the following result: ![Rad Spread Processing Features Number Formatting 3](images/RadSpreadProcessing_Features_Number_Formatting_03.jpg) **Example 5: Apply Date Format** - + **Example 5** produces the following result: ![Rad Spread Processing Features Number Formatting 04](images/RadSpreadProcessing_Features_Number_Formatting_04.jpg) @@ -93,7 +93,7 @@ To show **milliseconds** in **Date Format**, modify the predefined format as fol **Example 6: Apply Time Format** - + **Example 6** produces the following result: ![Rad Spread Processing Features Number Formatting 05](images/RadSpreadProcessing_Features_Number_Formatting_05.jpg) @@ -102,42 +102,42 @@ To show **milliseconds** in **Time Format**, modify the predefined format as fol **Example 7: Apply Percentage Format** - + **Example 7** produces the following result: ![Rad Spread Processing Features Number Formatting 06](images/RadSpreadProcessing_Features_Number_Formatting_06.jpg) **Example 8: Apply Fraction Format** - + **Example 8** produces the following result: ![Rad Spread Processing Features Number Formatting 07](images/RadSpreadProcessing_Features_Number_Formatting_07.jpg) **Example 9: Apply Scientific Format** - + **Example 9** produces the following result: ![Rad Spread Processing Features Number Formatting 08](images/RadSpreadProcessing_Features_Number_Formatting_08.jpg) **Example 10: Apply Text Format** - + **Example 10** produces the following result: ![Rad Spread Processing Features Number Formatting 09](images/RadSpreadProcessing_Features_Number_Formatting_09.jpg) **Example 11: Apply Special Format** - + **Example 11** produces the following result: ![Rad Spread Processing Features Number Formatting 10](images/RadSpreadProcessing_Features_Number_Formatting_10.jpg) **Example 12: Apply Custom Format** - + **Example 12** produces the following result: ![Rad Spread Processing Features Number Formatting 11](images/RadSpreadProcessing_Features_Number_Formatting_11.jpg) @@ -156,6 +156,6 @@ You can retrieve the number format of any cell selection through the `GetFormat( **Example 13: Get Number Format** - + diff --git a/libraries/radspreadprocessing/features/protection/fips-compliance.md b/libraries/radspreadprocessing/features/protection/fips-compliance.md index 5c0f0b63..643402dc 100644 --- a/libraries/radspreadprocessing/features/protection/fips-compliance.md +++ b/libraries/radspreadprocessing/features/protection/fips-compliance.md @@ -23,7 +23,7 @@ If you need to comply with the FIPS 140-2 standard, you can disable the forbidde **Example 1: Enforce FIPS** - + Enforce the FIPS compliance before using the Protection feature. diff --git a/libraries/radspreadprocessing/features/protection/workbook.md b/libraries/radspreadprocessing/features/protection/workbook.md index e8fdaf6b..dd9ed0a0 100644 --- a/libraries/radspreadprocessing/features/protection/workbook.md +++ b/libraries/radspreadprocessing/features/protection/workbook.md @@ -25,7 +25,7 @@ To protect a workbook, use the `Protect(string)` method of the `Workbook` class. **Example 1: Password-Protect a Workbook** - + @@ -37,7 +37,7 @@ Use the `Unprotect(string)` method of the `Workbook` class to remove the workboo **Example 2: Unprotect a Workbook** - + diff --git a/libraries/radspreadprocessing/features/protection/worksheet.md b/libraries/radspreadprocessing/features/protection/worksheet.md index a1b65ac2..05ea7658 100644 --- a/libraries/radspreadprocessing/features/protection/worksheet.md +++ b/libraries/radspreadprocessing/features/protection/worksheet.md @@ -24,7 +24,7 @@ The `Worksheet` class exposes a `Protect()` method that takes two parameters: th **Example 1: Protect a Worksheet** - + @@ -34,7 +34,7 @@ Use the `Unprotect(string)` method of the `Worksheet` class to remove the protec **Example 2: Unprotect a Worksheet** - + @@ -48,7 +48,7 @@ To achieve that, pass a `WorksheetProtectionOptions` instance as the second argu **Example 3: Protect Worksheet with WorksheetProtectionOptions** - + diff --git a/libraries/radspreadprocessing/features/setting-the-culture.md b/libraries/radspreadprocessing/features/setting-the-culture.md index 13a3fa9a..94b5f0ae 100644 --- a/libraries/radspreadprocessing/features/setting-the-culture.md +++ b/libraries/radspreadprocessing/features/setting-the-culture.md @@ -14,5 +14,5 @@ position: 18 **Setting the Culture** - + diff --git a/libraries/radspreadprocessing/features/shapes-and-images.md b/libraries/radspreadprocessing/features/shapes-and-images.md index 2fed4831..163768fa 100644 --- a/libraries/radspreadprocessing/features/shapes-and-images.md +++ b/libraries/radspreadprocessing/features/shapes-and-images.md @@ -86,14 +86,14 @@ To create an instance of `FloatingImage`, you need the worksheet in which you wa **Example 1: Create FloatingImage** - + The next step is to configure the other properties of the image as needed. **Example 2: Configure Image Properties** - + @@ -103,7 +103,7 @@ Insert the image into the collection of shapes of the worksheet. The worksheet m **Example 3: Add Image to Worksheet** - + @@ -115,7 +115,7 @@ To delete a shape from a worksheet, you need the instance of the shape. The coll **Example 4: Delete Shape** - + @@ -127,13 +127,13 @@ After the initial values of the properties of the shapes have been assigned, you **Example 5: Move Image** - + * Changing the width and height of the shape **Example 6: Change Width and Height** - + The `Width` and `Height` properties do not take the `LockAspectRatio` property into account. If you want more control on whether the aspect ratio of the shape is observed, you can also use the following methods: @@ -143,7 +143,7 @@ After the initial values of the properties of the shapes have been assigned, you **Example 7: Set Width and Whether Lock Aspect Ratio Is Respected** - + The following section explains these two methods in more detail. @@ -151,7 +151,7 @@ After the initial values of the properties of the shapes have been assigned, you **Example 8: Rotate** - + The rotation angle of the shape can affect the `CellIndex` property and the offset. The following section describes the relationship between these properties in more detail. @@ -159,7 +159,7 @@ After the initial values of the properties of the shapes have been assigned, you **Example 9: Flip** - + diff --git a/libraries/radspreadprocessing/features/sorting.md b/libraries/radspreadprocessing/features/sorting.md index 948698d6..e3255c1e 100644 --- a/libraries/radspreadprocessing/features/sorting.md +++ b/libraries/radspreadprocessing/features/sorting.md @@ -87,7 +87,7 @@ The values sort condition is a condition which uses the values of the cells to s **Example 1: Create ValuesSortCondition** - + @@ -104,7 +104,7 @@ Sometimes the behavior of the predefined comparers is not sufficient. In this ca **Example 2: Create CustomValuesSortCondition** - + @@ -119,7 +119,7 @@ A fore color sort condition orders the cells according to the color of the text **Example 3: Create ForeColorSortCondition** - + @@ -131,7 +131,7 @@ A fill color sort condition orders the cells according to their fill color. Each **Example 4: Create FillColorSortCondition** - + @@ -150,7 +150,7 @@ Unlike the case with [Filtering]({%slug radspreadprocessing-features-filtering%} **Example 5: Create Conditions** - + @@ -158,7 +158,7 @@ Unlike the case with [Filtering]({%slug radspreadprocessing-features-filtering%} **Example 6: Set Conditions Through SortState** - + @@ -166,7 +166,7 @@ Alternatively, **Example 7** shows how to apply the sorting conditions through t **Example 7: Set Conditions Through Selection** - + @@ -183,7 +183,7 @@ To clear the sorting, use the `Clear()` method of the `SortState` property. Ther **Example 8: Clear Sorting** - + diff --git a/libraries/radspreadprocessing/features/styling/cell-styles.md b/libraries/radspreadprocessing/features/styling/cell-styles.md index 52322676..bf23108c 100644 --- a/libraries/radspreadprocessing/features/styling/cell-styles.md +++ b/libraries/radspreadprocessing/features/styling/cell-styles.md @@ -84,7 +84,7 @@ When you apply a style to a cell with locally set properties, the end result is **Example 1: Include Number Group in CellStyle** - + Through the API you can add, modify, or remove styles from the `Styles` collection residing in the worksheet. @@ -96,7 +96,7 @@ To create a new style, invoke the `Add()` method of the workbook `Styles` collec **Example 2: Create a Style** - + ## Modify Cell Style @@ -106,7 +106,7 @@ To modify a style, retrieve it from the `Styles` collection and set the properti **Example 3: Modify a Style** - + ## Copy Existing Cell Style @@ -114,7 +114,7 @@ The API enables you to copy the properties of an existing style so you can modif **Example 4: Copy an Existing Style and Modify Its Properties** - + ## Remove Cell Style @@ -122,7 +122,7 @@ You can also remove a style from the `Styles` collection. Invoke the `Remove()` **Example 5: Remove a Style** - + ## See Also diff --git a/libraries/radspreadprocessing/features/styling/document-themes.md b/libraries/radspreadprocessing/features/styling/document-themes.md index 91534f01..1c4fe419 100644 --- a/libraries/radspreadprocessing/features/styling/document-themes.md +++ b/libraries/radspreadprocessing/features/styling/document-themes.md @@ -54,7 +54,7 @@ The twelve color types are used for creating `ThemableColor` objects. They deter **Example 1: Create ThemeColorScheme** - + There are several ways to create a `ThemableColor` object: @@ -74,7 +74,7 @@ To create colors that depend on the current document theme, you need to use `The **Example 2: Create ThemableColor** - + ## Font Schemes @@ -90,7 +90,7 @@ To create a `ThemeFontScheme` you need to pass a name and two font family names **Example 3: Create ThemeFontScheme** - + To use the document theme fonts, you need to use `ThemableFontFamily` objects. There are several ways you can create one: @@ -104,7 +104,7 @@ When you need to create a font that depends on the current document theme, use t **Example 4: Create ThemableFontFamily** - + ## Document Themes @@ -114,7 +114,7 @@ Now that you have a color and a font scheme, you can create a new `DocumentTheme **Example 5: Create DocumentTheme** - + In the predefined static class `PredefinedThemeSchemes`, you can find several predefined color and font schemes. The class exposes the properties `ColorSchemes` and `FontSchemes` that hold all predefined schemes. @@ -122,7 +122,7 @@ In the predefined static class `PredefinedThemeSchemes`, you can find several pr **Example 6: Create DocumentTheme from Predefined Schemes** - + To change the current document theme, set a single property: @@ -130,7 +130,7 @@ To change the current document theme, set a single property: **Example 7: Change DocumentTheme** - + ## Getting Actual Values @@ -138,11 +138,11 @@ To get the actual value from `ThemableColor` or `ThemableFontFamily`, call the ` **Example 8: Get Actual Color** - + **Example 9: Get Actual Font** - + ## See Also diff --git a/libraries/radspreadprocessing/features/worksheetpagesetup.md b/libraries/radspreadprocessing/features/worksheetpagesetup.md index 90a73c92..2bd94c04 100644 --- a/libraries/radspreadprocessing/features/worksheetpagesetup.md +++ b/libraries/radspreadprocessing/features/worksheetpagesetup.md @@ -61,7 +61,7 @@ To fit the print content better, use the worksheet page setup and change the pag #### __Example 1: Use WorksheetPageSetup__ - + As a result, the data fits into a single page with size A4 as shown in **Figure 2**. @@ -87,7 +87,7 @@ The example shown in **Figure 3** demonstrates how to use the worksheet print ar #### __Example 2: Set PrintArea__ - + @@ -123,7 +123,7 @@ To separate the print data semantically onto several pages, place horizontal pag #### __Example 3: Insert PageBreaks__ - + @@ -142,7 +142,7 @@ The `PrintTitles` property of `WorksheetPageSetup` enables you to set rows or co #### __Example 4: Repeat the first two rows and two columns of the worksheet on each page__ - + ## See Also diff --git a/libraries/radspreadprocessing/formats-and-conversion/csv/csvformatprovider.md b/libraries/radspreadprocessing/formats-and-conversion/csv/csvformatprovider.md index 7588c6cd..14149397 100644 --- a/libraries/radspreadprocessing/formats-and-conversion/csv/csvformatprovider.md +++ b/libraries/radspreadprocessing/formats-and-conversion/csv/csvformatprovider.md @@ -22,7 +22,7 @@ To import and export CSV files, use the `CsvFormatProvider` class that appears i **Example 1: Import CSV File** - + ## Export @@ -30,7 +30,7 @@ To import and export CSV files, use the `CsvFormatProvider` class that appears i **Example 2: Export CSV File** - + ## See Also diff --git a/libraries/radspreadprocessing/formats-and-conversion/csv/settings.md b/libraries/radspreadprocessing/formats-and-conversion/csv/settings.md index 25384a18..5a5039b3 100644 --- a/libraries/radspreadprocessing/formats-and-conversion/csv/settings.md +++ b/libraries/radspreadprocessing/formats-and-conversion/csv/settings.md @@ -30,4 +30,4 @@ position: 2 **Example 1: Use CsvSettings** - + diff --git a/libraries/radspreadprocessing/formats-and-conversion/data-table/settings.md b/libraries/radspreadprocessing/formats-and-conversion/data-table/settings.md index f2be8b3e..d1de0ca2 100644 --- a/libraries/radspreadprocessing/formats-and-conversion/data-table/settings.md +++ b/libraries/radspreadprocessing/formats-and-conversion/data-table/settings.md @@ -34,7 +34,7 @@ The `CellImportedEventArgs` contains information about the current cell: **Example 1: Using the CellImported Event to Format the Cells** - + ## Export Settings @@ -54,7 +54,7 @@ The `ColumnExportingEventArgs` object contains the current column instance and i **Example 2: Using the ColumnExporting Event to Set the AllowDBNull Property** - + ## See Also diff --git a/libraries/radspreadprocessing/formats-and-conversion/data-table/using-data-table-format-provider.md b/libraries/radspreadprocessing/formats-and-conversion/data-table/using-data-table-format-provider.md index a525a4b9..1e4e287c 100644 --- a/libraries/radspreadprocessing/formats-and-conversion/data-table/using-data-table-format-provider.md +++ b/libraries/radspreadprocessing/formats-and-conversion/data-table/using-data-table-format-provider.md @@ -22,13 +22,13 @@ The following example shows how to import a `DataTable`. The sample creates a `D **Example 1: Import DataTable** - + You can also import the data from a `DataTable` to an existing worksheet. **Example 2: Import DataTable to an Existing Worksheet** - + ## Export @@ -36,7 +36,7 @@ The following example demonstrates how to export an existing worksheet to a `Dat **Example 3: Export Worksheet to a DataTable** - + ## See Also diff --git a/libraries/radspreadprocessing/formats-and-conversion/general-information.md b/libraries/radspreadprocessing/formats-and-conversion/general-information.md index 249080ec..95ab5bb7 100644 --- a/libraries/radspreadprocessing/formats-and-conversion/general-information.md +++ b/libraries/radspreadprocessing/formats-and-conversion/general-information.md @@ -51,20 +51,20 @@ All of the listed providers implement the `IWorkbookFormatProvider` and `IBinary ### IWorkbookFormatProvider Interface Methods - + **Example: Use the Import() and Export() Methods with Stream** - + ### IBinaryWorkbookFormatProvider Interface Methods - + **Example: Use the Import() and Export() Methods with byte[] Array** - + >note For more examples of importing and exporting workbooks, check out the [Import/Load and Export/Save RadSpreadProcessing Workbook]({%slug import-export-save-load-workbook%}) knowledge base article. diff --git a/libraries/radspreadprocessing/formats-and-conversion/import-and-export-to-excel-file-formats/xls/xlsformatprovider.md b/libraries/radspreadprocessing/formats-and-conversion/import-and-export-to-excel-file-formats/xls/xlsformatprovider.md index ace9ff63..f26baa26 100644 --- a/libraries/radspreadprocessing/formats-and-conversion/import-and-export-to-excel-file-formats/xls/xlsformatprovider.md +++ b/libraries/radspreadprocessing/formats-and-conversion/import-and-export-to-excel-file-formats/xls/xlsformatprovider.md @@ -30,7 +30,7 @@ The following example shows how to import an XLS file through a `FileStream`. Th **Example 1: Import XLS (Excel 97-2003 Workbook) File** - + @@ -41,12 +41,12 @@ The following example demonstrates how to export an existing workbook to an XLS **Example 2: Export Spreadsheet Document to XLS (Excel 97-2003 Workbook) File** - + **Example 3: Export Spreadsheet Document to a Stream and byte[]** - + *This documentation is neither affiliated with, nor authorized, sponsored, or approved by, Microsoft Corporation. diff --git a/libraries/radspreadprocessing/formats-and-conversion/import-and-export-to-excel-file-formats/xlsm/xlsmformatprovider.md b/libraries/radspreadprocessing/formats-and-conversion/import-and-export-to-excel-file-formats/xlsm/xlsmformatprovider.md index 49a7d51a..39be0f74 100644 --- a/libraries/radspreadprocessing/formats-and-conversion/import-and-export-to-excel-file-formats/xlsm/xlsmformatprovider.md +++ b/libraries/radspreadprocessing/formats-and-conversion/import-and-export-to-excel-file-formats/xlsm/xlsmformatprovider.md @@ -33,7 +33,7 @@ The following example shows how to import an XLSM file through a `FileStream`. T **Example 1: Import XLSM (Excel Workbook) File** - + ## Export @@ -43,12 +43,12 @@ The following example demonstrates how to export an existing workbook to an XLSM **Example 2: Export Spreadsheet Document to XLSM (Excel Workbook) File** - + **Example 3: Export Spreadsheet Document to a Stream and byte[]** - + ## See Also diff --git a/libraries/radspreadprocessing/formats-and-conversion/import-and-export-to-excel-file-formats/xlsx/xlsxformatprovider.md b/libraries/radspreadprocessing/formats-and-conversion/import-and-export-to-excel-file-formats/xlsx/xlsxformatprovider.md index e60cc3ef..39e9afa1 100644 --- a/libraries/radspreadprocessing/formats-and-conversion/import-and-export-to-excel-file-formats/xlsx/xlsxformatprovider.md +++ b/libraries/radspreadprocessing/formats-and-conversion/import-and-export-to-excel-file-formats/xlsx/xlsxformatprovider.md @@ -27,7 +27,7 @@ The following example shows how to import an XLSX file using a FileStream. The c **Example 1: Import XLSX (Excel Workbook) File** - + ## Export @@ -35,11 +35,11 @@ The following example demonstrates how to export an existing Workbook to an XLSX **Example 2: Export Spreadsheet Document to XLSX (Excel Workbook) File** - + **Example 3: Export Spreadsheet Document to a Stream and Byte Array** - + *This documentation is neither affiliated with, nor authorized, sponsored, or approved by, Microsoft Corporation. diff --git a/libraries/radspreadprocessing/formats-and-conversion/import-export-format-providers-manager.md b/libraries/radspreadprocessing/formats-and-conversion/import-export-format-providers-manager.md index dbe26be4..0a1b572d 100644 --- a/libraries/radspreadprocessing/formats-and-conversion/import-export-format-providers-manager.md +++ b/libraries/radspreadprocessing/formats-and-conversion/import-export-format-providers-manager.md @@ -20,13 +20,13 @@ The `WorkbookFormatProvidersManager` class contains two methods that allow you t **Example 1: Register Provider** - + You can also unregister format providers using the `UnregisterFormatProvider()` method. **Example 2** demonstrates how to unregister the [TxtFormatProvider]({%slug radspreadprocessing-formats-and-conversion-txt-txtformatprovider %}). **Example 2: Unregister Provider** - + ## Import @@ -43,7 +43,7 @@ The method tries to find a registered format provider that can handle the extens **Example 3: Import a File Using OpenFileDialog** - + > The OpenFileDialog class exposes a different API in Silverlight. The name of the file could be obtained through the File.Name property of `OpenFileDialog` and the stream you can get using `File.OpenRead()`. @@ -65,7 +65,7 @@ The method attempts to find a provider that can handle a file of the specified e **Example 4: Save a File Using SaveFileDialog** - + You can achieve the same result through using the `SaveFile` command. The command executes exactly the same code as the previous example. Verify that you register the format providers you want to use before using the command. diff --git a/libraries/radspreadprocessing/formats-and-conversion/json/jsonexportsettings.md b/libraries/radspreadprocessing/formats-and-conversion/json/jsonexportsettings.md index 8a70dba1..62f11c92 100644 --- a/libraries/radspreadprocessing/formats-and-conversion/json/jsonexportsettings.md +++ b/libraries/radspreadprocessing/formats-and-conversion/json/jsonexportsettings.md @@ -72,7 +72,7 @@ The [JsonFormatProvider]({%slug radspreadprocessing-formats-and-conversion-json- The following example shows how to create a `JsonExportSettings` instance with the desired settings while exporting a [Workbook]({%slug radspreadprocessing-working-with-workbooks-what-is-workbook%}) to JSON format: - + ## See Also diff --git a/libraries/radspreadprocessing/formats-and-conversion/pdf/format-and-conversion-settings.md b/libraries/radspreadprocessing/formats-and-conversion/pdf/format-and-conversion-settings.md index afe4e4cd..c2d94848 100644 --- a/libraries/radspreadprocessing/formats-and-conversion/pdf/format-and-conversion-settings.md +++ b/libraries/radspreadprocessing/formats-and-conversion/pdf/format-and-conversion-settings.md @@ -1,4 +1,4 @@ ---- +--- title: Settings description: Learn about the export settings available for the PdfFormatProvider in RadSpreadProcessing to customize PDF output. page_title: Settings @@ -29,13 +29,13 @@ The following example shows how to export the Entire Workbook without ignoring t **Example 1: Export Entire Workbook** - + The following example shows how to export only two selected ranges from the active worksheet, ignoring print areas and page breaks. **Example 2: Export Selection** - + >To specify file export settings to the `PdfFormatProvider`, you need to add both the Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Export and Telerik.Windows.Documents.Flow.FormatProviders.Pdf.Export namespaces. In Example 3 the *Fixed* alias corresponds to the `Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Export` namespace. @@ -43,7 +43,7 @@ Another export option is to specify settings specific to the PDF format for the **Example 3: Export PDF/A Compliant Document** - + ## See Also diff --git a/libraries/radspreadprocessing/formats-and-conversion/pdf/pdfformatprovider.md b/libraries/radspreadprocessing/formats-and-conversion/pdf/pdfformatprovider.md index 09e65b75..b15ac9cc 100644 --- a/libraries/radspreadprocessing/formats-and-conversion/pdf/pdfformatprovider.md +++ b/libraries/radspreadprocessing/formats-and-conversion/pdf/pdfformatprovider.md @@ -44,13 +44,13 @@ To use `PdfFormatProvider`, add references to the following packages: **Example 1: PdfFormatProvider Export Example** - + The result from the export method is a document that you can open in any application that supports PDF documents. **Example 2: Export to RadFixedDocument** - + >tip `RadFixedDocument` is the base class of the `RadPdfProcessing` library. For more information about the library and its features, see the [RadPdfProcessing Overview]({%slug radpdfprocessing-overview%}). diff --git a/libraries/radspreadprocessing/formats-and-conversion/txt/settings.md b/libraries/radspreadprocessing/formats-and-conversion/txt/settings.md index 52305097..07e5edf8 100644 --- a/libraries/radspreadprocessing/formats-and-conversion/txt/settings.md +++ b/libraries/radspreadprocessing/formats-and-conversion/txt/settings.md @@ -32,6 +32,6 @@ position: 2 **Example 1: Use TxtSettings** - + diff --git a/libraries/radspreadprocessing/formats-and-conversion/txt/txtformatprovider.md b/libraries/radspreadprocessing/formats-and-conversion/txt/txtformatprovider.md index 0af45d0e..1df5cdd4 100644 --- a/libraries/radspreadprocessing/formats-and-conversion/txt/txtformatprovider.md +++ b/libraries/radspreadprocessing/formats-and-conversion/txt/txtformatprovider.md @@ -25,7 +25,7 @@ To import and export TXT files, you need an instance of `TxtFormatProvider`, whi **Example 1: Import TXT File** - + ## Export @@ -33,7 +33,7 @@ To import and export TXT files, you need an instance of `TxtFormatProvider`, whi **Example 2: Export TXT File** - + ## See Also diff --git a/libraries/radspreadprocessing/getting-started.md b/libraries/radspreadprocessing/getting-started.md index 09b9d179..c4d1998e 100644 --- a/libraries/radspreadprocessing/getting-started.md +++ b/libraries/radspreadprocessing/getting-started.md @@ -26,13 +26,13 @@ The following example shows how to create a workbook and add a new worksheet to **Example 1: Create Workbook** - + You can then create a [CellSelection]({%slug radspreadprocessing-working-with-cells-get-set-clear-properties%}) and set any value to the selected cells. The following example shows how to create a cell and set a string value to it. **Example 2: Set Value of Cell** - + ## Exporting @@ -42,7 +42,7 @@ For more examples and application scenarios of importing and exporting a Workboo **Example 3: Export to Xlsx** - + >More information about the import and export features of RadSpreadProcessing is available in the [Formats and Conversion section]({%slug radspreadprocessing-formats-and-conversion-general-information%}). diff --git a/libraries/radspreadprocessing/helpers/name-converter.md b/libraries/radspreadprocessing/helpers/name-converter.md index 8107b288..35771ddc 100644 --- a/libraries/radspreadprocessing/helpers/name-converter.md +++ b/libraries/radspreadprocessing/helpers/name-converter.md @@ -38,7 +38,7 @@ The `ConvertRowIndexToName` method converts the row index to a name. **Example 1: Convert Row Index to Name** - + ### Convert Row Name to Index @@ -46,7 +46,7 @@ The `ConvertRowNameToIndex` method converts the row name to an index. **Example 2: Convert Row Name to Index** - + ### Convert Column Index to Name @@ -54,7 +54,7 @@ The `ConvertColumnIndexToName` method converts the column index to a name. **Example 3: Convert Column Index to Name** - + ### Convert Column Name to Index @@ -62,7 +62,7 @@ The `ConvertColumnNameToIndex` method converts the column name to an index. **Example 4: Convert Column Name to Index** - + ### Convert Cell Index to Name @@ -70,11 +70,11 @@ The `ConvertCellIndexToName` method converts the cell index to a name. This meth **Example 5: First Overload** - + **Example 5: Second Overload** - + ### Try Convert Names to Cell Reference Range Expression @@ -82,7 +82,7 @@ The `TryConvertNamesToCellReferenceRangeExpression` method tries to convert the **Example 6: Convert Names to Cell Reference Range Expression** - + ### Convert Cell Reference to Name @@ -90,7 +90,7 @@ The `ConvertCellReferenceToName` method converts the cell reference to a name. **Example 7: Convert Cell Reference to Name** - + ### Convert Cell Range to Name @@ -98,7 +98,7 @@ The `ConvertCellRangeToName` method converts the cell range to a name. **Example 8: Convert Cell Range to Name** - + ### Try Convert Name to Cell Range @@ -106,7 +106,7 @@ The `TryConvertNameToCellRange` method converts the name to a cell range. **Example 9: Convert Name to Cell Range** - + ### Convert Cell Indexes to Name @@ -114,7 +114,7 @@ The `ConvertCellIndexesToName` method converts the cell indexes to a name. **Example 10: Convert Cell Indexes to Name** - + ### Convert Cell Name to Index @@ -122,11 +122,11 @@ The `ConvertCellNameToIndex` method converts the cell name to a cell index. This **Example 11: First Overload** - + **Example 11: Second Overload** - + ### Try Convert Cell Name to Index @@ -134,11 +134,11 @@ The `TryConvertCellNameToIndex` method tries to convert the cell name to an inde **Example 12: First Overload** - + **Example 12: Second Overload** - + ### Is Valid A1 Cell Name @@ -146,7 +146,7 @@ The `IsValidA1CellName` method determines whether the name of the cell is valid. **Example 13: Validate A1 Cell Name** - + ## See Also diff --git a/libraries/radspreadprocessing/performance.md b/libraries/radspreadprocessing/performance.md index 4bf6cba8..0390a678 100644 --- a/libraries/radspreadprocessing/performance.md +++ b/libraries/radspreadprocessing/performance.md @@ -32,13 +32,13 @@ Internally there are many mechanisms used to lower the number of calculations, b **Example 1: Suspend Layout Updates** - + If an exception is thrown between the two method calls, the resuming of the layout update will not execute and the UI will stop updating. You can ensure the layout update resumes regardless of exceptions by using `UpdateScope`. The following code snippet demonstrates how to use it. **Example 2: Suspend Layout Updates in UpdateScope** - + ## Reduce the Number of Undo Steps @@ -46,13 +46,13 @@ Preserving information about the steps in the undo stack is usually not a time c **Example 3: Combine Steps in Undo Group** - + If an exception is thrown between the two method calls, the ending of the undo group will not execute. All the following actions will not be added to the history and the UI will stop updating. You can ensure the undo group closes regardless of exceptions by using `UpdateScope`. The following code snippet demonstrates how to use it. **Example 4: Combine Steps in Undo Group Using UpdateScope** - + ## Disabling History @@ -60,13 +60,13 @@ As described in the [Reduce the Number of Undo Steps section](#reduce-the-number **Example 5: Disable History** - + If an exception is thrown before enabling the history, it will not be enabled and the subsequent history steps will not be preserved. To ensure that the history is enabled, use the `UpdateScope` class. The following example shows how to achieve this. **Example 6: Disable and Enable History Using UpdateScope** - + ## Apply Values or Formatting on Large Range at Once diff --git a/libraries/radspreadprocessing/working-with-cells/accessing-cells-of-worksheet.md b/libraries/radspreadprocessing/working-with-cells/accessing-cells-of-worksheet.md index 7b1294e4..7509aa41 100644 --- a/libraries/radspreadprocessing/working-with-cells/accessing-cells-of-worksheet.md +++ b/libraries/radspreadprocessing/working-with-cells/accessing-cells-of-worksheet.md @@ -18,27 +18,27 @@ Use a `CellIndex` object to specify a single cell (identified by a row index and **Example 1: Create CellSelection Using CellIndex** - + **Example 2: Create CellSelection Using CellRange** - + **Example 3: Create CellSelection Using Multiple CellRange Objects** - + **Example 4: Create CellSelection Using Two CellIndex Instances That Specify a CellRange** - + **Example 5: Create CellSelection Using Two Integers That Indicate the CellIndex** - + **Example 6: Create CellSelection Using Four Integers That Specify the CellRange** - + Once you have a `CellSelection` object, you can get, set, and clear the properties of the selected cells. For more information about cell properties, see the [Get, Set and Clear Cell Properties]({%slug radspreadprocessing-working-with-cells-get-set-clear-properties%}) article. diff --git a/libraries/radspreadprocessing/working-with-cells/cell-value-types.md b/libraries/radspreadprocessing/working-with-cells/cell-value-types.md index 51bc7f2b..82e63e8c 100644 --- a/libraries/radspreadprocessing/working-with-cells/cell-value-types.md +++ b/libraries/radspreadprocessing/working-with-cells/cell-value-types.md @@ -58,7 +58,7 @@ Excel number formats differ from .NET formats. To get the correctly formatted ce ### Example: Get a Formatted Cell Value - + ## Set and Read Cell Values @@ -66,7 +66,7 @@ Example 1 sets the value of cell `A1` to `Total`. ### Example 1: Set a String Value - + Another option is to use the `Create()` method of `CellValueFactory` to produce an `ICellValue` instance and then pass that instance to `SetValue(ICellValue)`. Like `SetValue()`, `Create()` provides overloads for common value types such as `string`, `double`, and `bool`. @@ -74,7 +74,7 @@ Example 2 creates `NumberCellValue` with value `3.14` and assigns it to cell `A1 ### Example 2: Create NumberCellValue - + If you retrieve the value of cell `A1`, `GetValue()` returns `NumberCellValue` with `RawValue` equal to `3.14` and both `ValueType` and `ResultValueType` equal to `Number`. @@ -82,7 +82,7 @@ Example 3 retrieves the value created in Example 2. ### Example 3: Retrieve a Cell Value - + ## How RangePropertyValue Works @@ -97,7 +97,7 @@ The class exposes these two key properties: ### Example 4: Use IsIndeterminate and Value - + ## Empty Cell Value @@ -107,7 +107,7 @@ If a cell already contains another value, clear it by using `ClearValue()`. ### Example 5: Clear a Value - + ## Boolean Cell Value @@ -117,13 +117,13 @@ Example 6 sets cells `A1` and `B1` to `true` and `false`. ### Example 6: Set a Boolean Value - + You can also create `BooleanCellValue` explicitly by using `CellValueFactory.Create()` and then passing the result to `SetValue()`. ### Example 7: Create BooleanCellValue by Using CellValueFactory - + ## Number Cell Value @@ -141,7 +141,7 @@ If `SetValue(string)` cannot parse the input as another supported type, it falls ### Example 8: Set a Number Cell Value - + ## Date Values @@ -151,7 +151,7 @@ Example 9 sets the value of cell `A1` to `6 October 1987` in the `en-US` culture ### Example 9: Set a Date as NumberCellValue - + Contained double value: 32056 Applied format: m/d/yyyy @@ -160,7 +160,7 @@ If you later access the value from Example 9, you receive its numeric representa ### Example 10: Get a Date Value - + ## Formula Cell Value @@ -175,7 +175,7 @@ Both methods create `FormulaCellValue` only when the current `CellValueFormat` i ### Example 11: Create a Formula That Refers to Another Cell - + After this code runs, the value of cell `A1` matches the value of cell `A2`. When `A2` changes, `A1` updates automatically. @@ -183,25 +183,25 @@ An expression can also contain a built-in function. For the full list of availab ### Example 12: Use a Built-In Function - + You can also pass `ICellValue` to `SetValue()` after creating it with `CellValueFactory.Create()`. Unlike the Boolean and Number overloads, formula creation also requires `Worksheet` and `CellIndex` parameters because the expression can reference other cells and worksheets. This overload also takes the current cell format and can return an updated format to apply. ### Example 13: Create FormulaCellValue - + `SetValue()` performs internal checks that consider the current cell format and other conditions. If you already know that the incoming text is a formula, use `SetValueAsFormula(string text)` directly to improve performance. ### Example 14: Create FormulaCellValue by Using SetValueAsFormula() - + Depending on your requirements, you can read either the formula definition or the evaluated result value. ### Example 15: Get the Value of a Cell That Contains a Formula - + ## Text Cell Value @@ -211,25 +211,25 @@ You can set `TextCellValue` by using `SetValue(string)`. Before the method creat ### Example 16: Set TextCellValue - + If you want to skip the default parsing and always create `TextCellValue`, set the cell value format to `Text` (`@`) before you assign the value. ### Example 17: Explicitly Apply the Text Value Type - + You can achieve the same result by using `CellValueFactory.Create()`. ### Example 18: Create TextCellValue - + If you already know that the value must be text, use `SetValueAsText(string text)` directly to avoid the internal parsing checks and improve performance. ### Example 19: Create TextCellValue by Using SetValueAsText() - + ## Next Steps diff --git a/libraries/radspreadprocessing/working-with-cells/get-set-clear-properties.md b/libraries/radspreadprocessing/working-with-cells/get-set-clear-properties.md index c43399a9..cecfec9e 100644 --- a/libraries/radspreadprocessing/working-with-cells/get-set-clear-properties.md +++ b/libraries/radspreadprocessing/working-with-cells/get-set-clear-properties.md @@ -34,7 +34,7 @@ To access cell properties, create a `CellSelection` object that contains the reg **Example 1: Create CellSelection** - + @@ -96,7 +96,7 @@ As already mentioned, the `CellSelection` class exposes methods that get, set, a **Example 2: Use GetIsBold(), SetIsBold() and ClearIsBold() Methods** - + Using the previous approach you can set the value of almost all cell properties. There are a few exceptions to the general get, set, and clear rule, and each of them is described in one of the following sections. @@ -106,7 +106,7 @@ Using the previous approach you can set the value of almost all cell properties. **Example 3: Using SetIsStrikethrough and SetVerticalTextAlignment** - + Set Strikethrough Superscript Subscript-text @@ -120,7 +120,7 @@ The `GetValue()` method retrieves the value of the property and returns an insta **Example 4: Retrieve Value of Cell** - + @@ -130,7 +130,7 @@ As the document model supports different types of cell values, the `CellSelectio **Example 5: Set Value of CellSelection** - + @@ -142,7 +142,7 @@ The `Borders` property uses a `CellBorders` object for getting and setting its p **Example 6: Set Value of Borders** - + @@ -161,7 +161,7 @@ As its name suggests, the `PatternFill` object fills the background of a region **Example 7: Create and Set PatternFill** - + @@ -176,7 +176,7 @@ The `GradientFill` sets the background of a region of cells to a gradual blendin **Example 8: Create and Set GradientFill** - + @@ -191,7 +191,7 @@ In addition to the `GetIndent()`, `SetIndent()`, and `ClearIndent()` methods, `C **Example 9: Increase and Decrease Indent** - + diff --git a/libraries/radspreadprocessing/working-with-cells/insert-remove-cells.md b/libraries/radspreadprocessing/working-with-cells/insert-remove-cells.md index 0e54cd9f..3313cfbb 100644 --- a/libraries/radspreadprocessing/working-with-cells/insert-remove-cells.md +++ b/libraries/radspreadprocessing/working-with-cells/insert-remove-cells.md @@ -27,7 +27,7 @@ The `CellSelection` class exposes an `Insert()` method that takes one argument w **Example 1: Insert Cells** - + ## Remove Cells @@ -39,6 +39,6 @@ The `CellSelection` class exposes a `Remove()` method that takes one argument wh **Example 2: Remove Cells** - + diff --git a/libraries/radspreadprocessing/working-with-cells/iterating-used-cells.md b/libraries/radspreadprocessing/working-with-cells/iterating-used-cells.md index 912c731a..566bd0fd 100644 --- a/libraries/radspreadprocessing/working-with-cells/iterating-used-cells.md +++ b/libraries/radspreadprocessing/working-with-cells/iterating-used-cells.md @@ -22,7 +22,7 @@ The [Worksheet]({%slug radspreadprocessing-working-with-worksheets-what-is-works **Example 1: Iterate UsedCellRange** - + ## Working With a Filtered Range @@ -31,7 +31,7 @@ You can get only the cells that have a particular property applied and ignore th **Example 2: Obtain and Iterate a Filtered UsedCellRange** - + >tip For more information on working with the values of the cells, check the [Get, Set and Clear Cell Properties]({%slug radspreadprocessing-working-with-cells-get-set-clear-properties%}) and [Cell Value Types]({%slug radspreadprocessing-working-with-cells-cell-value-types%}) topics. diff --git a/libraries/radspreadprocessing/working-with-rows-and-columns/hidden-rows-columns.md b/libraries/radspreadprocessing/working-with-rows-and-columns/hidden-rows-columns.md index c6772911..18375bd4 100644 --- a/libraries/radspreadprocessing/working-with-rows-and-columns/hidden-rows-columns.md +++ b/libraries/radspreadprocessing/working-with-rows-and-columns/hidden-rows-columns.md @@ -37,7 +37,7 @@ The `SetHidden()` method changes the hidden state of the rows and columns. It ta **Example 1: Change Row Hidden State** - + ## Relationship with the Height and Width Properties @@ -48,7 +48,7 @@ When the hidden state property of a `RowSelection` or a `ColumnSelection` is set **Example 2: Change Column Width** - + ## Relationship with the AutoFit Method @@ -58,7 +58,7 @@ Like setting the height or width through the `SetHeight()` and `SetWidth()` meth **Example 3: Auto Fit on Hidden Rows** - + ## See Also diff --git a/libraries/radspreadprocessing/working-with-rows-and-columns/insert-and-remove.md b/libraries/radspreadprocessing/working-with-rows-and-columns/insert-and-remove.md index 0ec409e4..47b23d05 100644 --- a/libraries/radspreadprocessing/working-with-rows-and-columns/insert-and-remove.md +++ b/libraries/radspreadprocessing/working-with-rows-and-columns/insert-and-remove.md @@ -33,7 +33,7 @@ The `RowSelection` class exposes `CanInsert()` and `Insert()` methods that indic **Example 1: Insert Rows** - + @@ -47,7 +47,7 @@ The `RowSelection` class exposes a `Remove()` method that performs the removal o **Example 2: Remove Rows** - + @@ -61,7 +61,7 @@ The `ColumnSelection` class exposes `CanInsert()` and `Insert()` methods that in **Example 3: Insert Columns** - + @@ -75,7 +75,7 @@ The `ColumnSelection` class exposes a `Remove()` method that executes the remova **Example 4: Remove Columns** - + ## See Also diff --git a/libraries/radspreadprocessing/working-with-rows-and-columns/resizing.md b/libraries/radspreadprocessing/working-with-rows-and-columns/resizing.md index 44f5d001..291b2f8d 100644 --- a/libraries/radspreadprocessing/working-with-rows-and-columns/resizing.md +++ b/libraries/radspreadprocessing/working-with-rows-and-columns/resizing.md @@ -38,7 +38,7 @@ The `SetHeight()` method changes the height of rows. It takes a single argument **Example 1: Change Row Height** - + @@ -49,7 +49,7 @@ The autofit feature offers a handy approach for resizing multiple rows so that e **Example 2: Fit Height of Rows** - + > The expected behavior when calling the `AutoFitHeight` method on a row that contains merged and wrapped cells is to set the default [RowHeight](https://docs.telerik.com/devtools/document-processing/api/telerik.windows.documents.spreadsheet.model.rowheight) value instead of calculating the row height according to its content. To measure the cell content, you can check the methods exposed by the [LayoutHelper class](#layouthelper-class). @@ -77,7 +77,7 @@ The `SetWidth()` method changes the width of columns. It takes a single argument **Example 3: Change Columns Width** - + ## Auto Fit Columns Width @@ -86,7 +86,7 @@ The autofit feature offers a handy approach for resizing multiple columns so tha **Example 4: Fit Width of Columns** - + Another way to auto fit column widths is to use the `ExpandToFitNumberValuesWidth()` method. It affects cells that contain only number values and have a `ColumnWidth` with `IsCustom` property set to `true`. **Example 5** demonstrates the alternative way to fit the column width. @@ -94,7 +94,7 @@ Another way to auto fit column widths is to use the `ExpandToFitNumberValuesWidt **Example 5: Fit with ExpandToFitNumberValuesWidth()** - + > The unit type used to set the width of the columns and the height of the rows in RadSpreadProcessing is [Device Independent Pixels]({%slug device-independent-pixels%}) (DIPs). You can convert it to points or other units using the [Unit](https://docs.telerik.com/devtools/document-processing/api/Telerik.Windows.Documents.Media.Unit.html) class. @@ -111,13 +111,13 @@ Another way to auto fit column widths is to use the `ExpandToFitNumberValuesWidt **Example 6: Convert from Pixel Column Width to MS Excel Column Width** - + **Example 7** shows how to convert and set from MS Excel to pixel column width. **Example 7: Convert from MS Excel Column Width to Pixel Column Width** - + The row height in MS Excel is measured in points so to set them you can convert this unit and set the exact number you are passing to the `SetHeight()` method for the height using the `UnitHelper` class. @@ -135,13 +135,13 @@ The [LayoutHelper](https://docs.telerik.com/devtools/document-processing/api/tel **Example 8: Get the Size of the Cell Content** - + **Example 9** shows how to get the cell layout box. **Example 9: Get the Cell Layout Box** - + ## See Also diff --git a/libraries/radspreadprocessing/working-with-workbooks/create-open-and-save-workbooks.md b/libraries/radspreadprocessing/working-with-workbooks/create-open-and-save-workbooks.md index 60722a43..533338a0 100644 --- a/libraries/radspreadprocessing/working-with-workbooks/create-open-and-save-workbooks.md +++ b/libraries/radspreadprocessing/working-with-workbooks/create-open-and-save-workbooks.md @@ -30,7 +30,7 @@ The fact that RadSpreadProcessing is completely decoupled from UI enables numero **Example 1: Create a Workbook and Add a Worksheet to It** - + @@ -45,7 +45,7 @@ To import a workbook, instantiate a specific [FormatProvider]({%slug radspreadpr **Example 2: Download and Import XLSX File** - + @@ -64,7 +64,7 @@ To export a workbook, instantiate the [FormatProvider]({%slug radspreadprocessin **Example 3: Save XLSX File** - + For security purposes accessing files in *Silverlight* can be achieved only through user-initiated dialogs. That said, to save workbook's contents into a `csv` file, you need to use the `SaveFileDialog`. @@ -74,7 +74,7 @@ For security purposes accessing files in *Silverlight* can be achieved only thro **Example 4: Save CSV File Using SaveFileDialog** - + >note Additional examples about export are available in the [Import/Load and Export/Save RadSpreadProcessing Workbook]({%slug import-export-save-load-workbook%}) knowledge base article. diff --git a/libraries/radspreadprocessing/working-with-worksheets/activate-worksheet.md b/libraries/radspreadprocessing/working-with-worksheets/activate-worksheet.md index c1f00d97..2306aa97 100644 --- a/libraries/radspreadprocessing/working-with-worksheets/activate-worksheet.md +++ b/libraries/radspreadprocessing/working-with-worksheets/activate-worksheet.md @@ -20,6 +20,6 @@ The `Workbook` class exposes an `ActiveWorksheet` property that gets and sets th **Example 1: Change Active Sheet** - + diff --git a/libraries/radspreadprocessing/working-with-worksheets/add-remove-worksheets.md b/libraries/radspreadprocessing/working-with-worksheets/add-remove-worksheets.md index 01fde3fd..59240fe5 100644 --- a/libraries/radspreadprocessing/working-with-worksheets/add-remove-worksheets.md +++ b/libraries/radspreadprocessing/working-with-worksheets/add-remove-worksheets.md @@ -20,7 +20,7 @@ To add a new worksheet to a workbook, use its `Worksheets` collection. The colle **Example 1: Create a Workbook and Add a Worksheet to It** - + @@ -32,7 +32,7 @@ The `Worksheets` collection of the workbook offers two methods for removing work **Example 2: Add and Remove Worksheets** - + ## Reorder Worksheets @@ -41,4 +41,4 @@ To change the order in which worksheets appear inside the workbook, use the `Mov **Example 3: Add and Reorder Worksheets** - \ No newline at end of file + \ No newline at end of file diff --git a/libraries/radspreadprocessing/working-with-worksheets/copy-worksheet.md b/libraries/radspreadprocessing/working-with-worksheets/copy-worksheet.md index 86dcce7d..071ecc75 100644 --- a/libraries/radspreadprocessing/working-with-worksheets/copy-worksheet.md +++ b/libraries/radspreadprocessing/working-with-worksheets/copy-worksheet.md @@ -18,7 +18,7 @@ The `CopyFrom(Worksheet source)` method of a worksheet copies the passed *source **Example 1: Copy Worksheet** - + >If the sheet that you are copying is in a document where a [DocumentTheme]({%slug radspreadprocessing-features-styling-document-themes%}) has been applied, the theme is not copied. Themes are information preserved in the `Workbook` and you may need to transfer them separately. @@ -28,7 +28,7 @@ You can copy a worksheet both into a newly created worksheet and an existing one **Example 2: Copy to Existing Workbook** - + ## See Also diff --git a/libraries/radspreadprocessing/working-with-worksheets/iterate-through-worksheets.md b/libraries/radspreadprocessing/working-with-worksheets/iterate-through-worksheets.md index 3959d4e6..9e19e413 100644 --- a/libraries/radspreadprocessing/working-with-worksheets/iterate-through-worksheets.md +++ b/libraries/radspreadprocessing/working-with-worksheets/iterate-through-worksheets.md @@ -18,13 +18,13 @@ In many scenarios you need to iterate through all worksheets in a given workbook **Example 1: Retrieve Worksheet** - + **Example 2** creates a new workbook with three worksheets. The code further iterates through all worksheets and sets the value of cell *A1* to the name of the corresponding worksheet. The example also sets the `ForeColor` and `BackgroundFill` of the cell. **Example 2: Iterate Worksheets** - + ## See Also diff --git a/libraries/radspreadprocessing/working-with-worksheets/rename-worksheet.md b/libraries/radspreadprocessing/working-with-worksheets/rename-worksheet.md index 3d0552be..aeee0109 100644 --- a/libraries/radspreadprocessing/working-with-worksheets/rename-worksheet.md +++ b/libraries/radspreadprocessing/working-with-worksheets/rename-worksheet.md @@ -46,7 +46,7 @@ The name of the worksheet cannot exceed 31 characters. **Example 1: Create and Rename a Worksheet** - + @@ -54,6 +54,6 @@ The name of the worksheet cannot exceed 31 characters. **Example 2: Rename a Worksheet** - + diff --git a/libraries/radspreadprocessing/working-with-worksheets/sheets-visiblility.md b/libraries/radspreadprocessing/working-with-worksheets/sheets-visiblility.md index 61fd1e24..b57caea1 100644 --- a/libraries/radspreadprocessing/working-with-worksheets/sheets-visiblility.md +++ b/libraries/radspreadprocessing/working-with-worksheets/sheets-visiblility.md @@ -24,7 +24,7 @@ There are two available options when hiding sheets. The first option is to set t **Example 1: Set the SheetVisibility to Hidden or VeryHidden** - + The other option is to use the `Hide` method exposed by both the `SheetCollection` and `WorksheetCollection` classes. The `Hide` method provides several overloads and supports hiding a sheet by passing: @@ -34,7 +34,7 @@ The other option is to use the `Hide` method exposed by both the `SheetCollectio **Example 2: Hide Sheets Using the Hide Method** - + ## Unhiding Sheets @@ -45,7 +45,7 @@ The following code snippets show the two approaches. **Example 3: Set the SheetVisibility to Visible** - + The `Unhide` method provides two overloads and supports unhiding a sheet by: @@ -54,7 +54,7 @@ The `Unhide` method provides two overloads and supports unhiding a sheet by: **Example 4: Unhide Sheets Using the Unhide Method** - + ## See Also diff --git a/libraries/radspreadprocessing/working-with-worksheets/view-state.md b/libraries/radspreadprocessing/working-with-worksheets/view-state.md index c607f871..822d5b05 100644 --- a/libraries/radspreadprocessing/working-with-worksheets/view-state.md +++ b/libraries/radspreadprocessing/working-with-worksheets/view-state.md @@ -20,7 +20,7 @@ Gets or sets the current scale factor of the worksheet. Use this property to zoo **Example 1: Set the Zoom Level of a Worksheet to 50%** - + ## TopLeftCellIndex @@ -29,7 +29,7 @@ Determines the top left cell visible on the screen. Use this property to make su **Example 2: Set the Top Left Cell to Be C11** - + ## SelectionState @@ -39,7 +39,7 @@ Gets or sets the state of the selection inside the worksheet. **Example 3: Change the Selection** - + ![Selection state showing two selected ranges in a worksheet](images/ViewState_Selection.png) @@ -53,7 +53,7 @@ Gets or sets a boolean value determining whether the gridlines are visualized wh **Example 4: Remove Grid Lines** - + ## ShowRowColHeaders @@ -61,7 +61,7 @@ Determines whether the headers of the rows and columns are visualized when the d **Example 5: Remove Row and Column Headers** - + ![Worksheet with hidden row and column headers and grid lines](images/ViewState_HideLinesHeaders.png) @@ -83,7 +83,7 @@ Sets the color of the worksheet tab. **Example 6: Change the Color of the Tab** - + ![Worksheet with green tab color](images/ViewState_TabColor.png) diff --git a/libraries/radspreadprocessing/working-with-worksheets/what-is-worksheet.md b/libraries/radspreadprocessing/working-with-worksheets/what-is-worksheet.md index 202eed50..73baf388 100644 --- a/libraries/radspreadprocessing/working-with-worksheets/what-is-worksheet.md +++ b/libraries/radspreadprocessing/working-with-worksheets/what-is-worksheet.md @@ -62,7 +62,7 @@ The following example gets the used cell range for cells that contain a value. #### Example 1: Get the Used Cell Range of Cells with a Value - + >note > diff --git a/libraries/radspreadstreamprocessing/export.md b/libraries/radspreadstreamprocessing/export.md index 48658231..5396acb4 100644 --- a/libraries/radspreadstreamprocessing/export.md +++ b/libraries/radspreadstreamprocessing/export.md @@ -49,7 +49,7 @@ The supported formats follow different output patterns, so you must choose the e ### Example 1: Specify the Export Format - + Creating `IWorkbookExporter` starts writing the file by using the `Stream` instance that you pass to the `CreateWorkbookExporter()` method. Writing finishes when the [IWorkbookExporter]({%slug radspreadstreamprocessing-model-workbook%}) instance is disposed. diff --git a/libraries/radspreadstreamprocessing/features/cell-styles.md b/libraries/radspreadstreamprocessing/features/cell-styles.md index fb559a0d..11692c98 100644 --- a/libraries/radspreadstreamprocessing/features/cell-styles.md +++ b/libraries/radspreadstreamprocessing/features/cell-styles.md @@ -78,7 +78,7 @@ When you apply a style to a cell with locally set properties, the result is an a **Example 1: Get a Built-In Style and Apply a Number Group** - + Through the API you can add, modify, or remove styles from the `CellStyles` collection of [IWorkbookExporter]({%slug radspreadstreamprocessing-model-workbook%}). @@ -91,7 +91,7 @@ To create a new style, invoke the `Add()` method of the workbook `CellStyles` co **Example 2: Create SpreadCellStyle and Apply It to a Cell** - + ## Modify a Style @@ -101,7 +101,7 @@ To modify a style, retrieve it from the `CellStyles` collection and set the prop **Example 3: Modify a Built-In Style** - + ## See Also diff --git a/libraries/radspreadstreamprocessing/features/culture-spesific-predefined-formats.md b/libraries/radspreadstreamprocessing/features/culture-spesific-predefined-formats.md index a0b31b4a..e68bc628 100644 --- a/libraries/radspreadstreamprocessing/features/culture-spesific-predefined-formats.md +++ b/libraries/radspreadstreamprocessing/features/culture-spesific-predefined-formats.md @@ -55,7 +55,7 @@ The following example demonstrates how you can get a specific format and set it **Example 1: Using the BuiltInNumberFormats Class** - + ## See Also diff --git a/libraries/radspreadstreamprocessing/features/page-setup-exportedr.md b/libraries/radspreadstreamprocessing/features/page-setup-exportedr.md index d2a9dd39..01735fc0 100644 --- a/libraries/radspreadstreamprocessing/features/page-setup-exportedr.md +++ b/libraries/radspreadstreamprocessing/features/page-setup-exportedr.md @@ -26,7 +26,7 @@ You must place the `PageSetupExporter` after the code for exporting all cells on **Example 1: Using PageSetupExporter** - + >`IPageSetupExporter` inherits from [IDisposable](https://learn.microsoft.com/en-us/dotnet/api/system.idisposable). Make sure the object is disposed when you are done with it. Otherwise, the content will not be written in the exported file. The best way to ensure this is handled properly is to wrap it in a *using* statement. diff --git a/libraries/radspreadstreamprocessing/features/text-measuring.md b/libraries/radspreadstreamprocessing/features/text-measuring.md index 1e9b4edd..a1dfcb2c 100644 --- a/libraries/radspreadstreamprocessing/features/text-measuring.md +++ b/libraries/radspreadstreamprocessing/features/text-measuring.md @@ -58,7 +58,7 @@ The following example shows how to create a spreadsheet document, measure the co **Example 1: Create Spreadsheet with Auto Fit Columns Width** - + ## See Also diff --git a/libraries/radspreadstreamprocessing/features/worksheet-view-exporter.md b/libraries/radspreadstreamprocessing/features/worksheet-view-exporter.md index fab685a1..46758a6a 100644 --- a/libraries/radspreadstreamprocessing/features/worksheet-view-exporter.md +++ b/libraries/radspreadstreamprocessing/features/worksheet-view-exporter.md @@ -32,7 +32,7 @@ You can create an instance of the `IWorksheetViewExporter` interface through the **Example 1: Create IWorksheetViewExporter Instance** - + >`IWorksheetViewExporter` inherits from [IDisposable](https://learn.microsoft.com/en-us/dotnet/api/system.idisposable). Make sure the object is disposed when you are done with it. Otherwise, the content will not be written in the exported file. The best way to ensure this is handled properly is to wrap it in a *using* statement. @@ -46,7 +46,7 @@ With the `IWorksheetViewExporter` interface you can set the first visible cell. **Example 2: Export a Document with First Visible Cell C5** - + ### Add Selection to a Document @@ -55,12 +55,12 @@ With the `IWorksheetViewExporter` interface you can set the first visible cell. **Example 3: Export a Document with Applied Multiple Selection Ranges** - + **Example 4: Export a Document with Selection Range and Specified Active Cell of the Selection** - + #### Figure 1: Selection with specified active cell ![Selection with a specified active cell in the exported spreadsheet](images/RadSpreadStreamProcessing_Features_WorksheetViewExporter_01.png) @@ -72,7 +72,7 @@ You can apply a scale factor to the exported document. **Example 5: Set Scale Factor** - + ### Hide Grid Lines and Row or Column Headers @@ -81,7 +81,7 @@ You can apply a scale factor to the exported document. **Example 6: Hide Grid Lines and Row/Column Headers** - + ### Freeze Panes @@ -90,7 +90,7 @@ You can freeze panes in the spreadsheet document through the `SetFreezePanes()` **Example 7: Set Freeze Panes** - + #### Figure 2: Frozen panes ![Frozen panes in the exported spreadsheet document](images/RadSpreadStreamProcessing_Features_WorksheetViewExporter_02.png) @@ -99,7 +99,7 @@ An overload of the `SetFreezePanes()` method enables you to change the first vis **Example 8: Set Freeze Panes and Change the First Visible Cell of the Scrollable Pane** - + In **Figure 3**, you can see that the first visible cell of the scrollable pane is K11. diff --git a/libraries/radspreadstreamprocessing/getting-started.md b/libraries/radspreadstreamprocessing/getting-started.md index 2bbbbb0b..e833d0df 100644 --- a/libraries/radspreadstreamprocessing/getting-started.md +++ b/libraries/radspreadstreamprocessing/getting-started.md @@ -41,7 +41,7 @@ When you create a document with **RadSpreadStreamProcessing**, the order in whic **Example 1: Create a Document** - + **Figure 1** shows the result of executing the code from **Example 1**. @@ -68,7 +68,7 @@ When you read a document with **RadSpreadStreamProcessing**, the order of parsin **Example 2: Read Data from a Document** - + For more complete examples, go to the [Developer Focused Examples]({%slug radspreadstreamprocessing-sdk-examples%}) section of the library. diff --git a/libraries/radspreadstreamprocessing/import.md b/libraries/radspreadstreamprocessing/import.md index bcd740cb..81be32ef 100644 --- a/libraries/radspreadstreamprocessing/import.md +++ b/libraries/radspreadstreamprocessing/import.md @@ -38,7 +38,7 @@ To read the data from a file, parse the desired elements in sequence keeping the **Example 1: Read Data from a Document** - + Through the importer objects, you can access the properties of the different elements. diff --git a/libraries/radspreadstreamprocessing/model/cells.md b/libraries/radspreadstreamprocessing/model/cells.md index 7083fc98..8b6bd5af 100644 --- a/libraries/radspreadstreamprocessing/model/cells.md +++ b/libraries/radspreadstreamprocessing/model/cells.md @@ -31,7 +31,7 @@ You can create a concrete instance of `ICellExporter` through the `CreateCellExp **Example 1: Using ICellExporter** - + >`ICellExporter` inherits from [IDisposable](https://learn.microsoft.com/en-us/dotnet/api/system.idisposable). Ensure the object is disposed when you are done with it. Otherwise, the content will not be written in the exported file. The best way to ensure this is handled properly is to wrap it in a *using* statement. @@ -51,7 +51,7 @@ The `SetValue()` method exposes several overloads that allow you to set values f **Example 2: Setting a Value to a Cell** - + ### Set a Formula @@ -60,7 +60,7 @@ To allow you to set a formula as a value of a cell, `ICellExporter` defines the **Example 3: Setting a Formula to a Cell** - + >All formulas must be set in `InvariantCulture`. For example, the decimal separator must be ".", and the list separator must be ",". @@ -91,7 +91,7 @@ In some cases you may need to skip several cells and start filling the data in t **Example 5: Skip Cells** - + ### Merge Cells @@ -99,7 +99,7 @@ In some cases you may need to skip several cells and start filling the data in t **Example 6: Merge Cells** - + >important Due to the importance of the order the content is inserted in a document, the Merge operation must be the last operation before disposing `IWorksheetExporter`. @@ -131,13 +131,13 @@ Another method exposed by `ICellExporter`—`SetFormat()`—enables you to chang **Example 7: Format Cells** - + In addition to the listed properties, the `SpreadCellFormat` class allows you to set a style to a cell. For more information on cell styles, see the [Cell Styles]({%slug radspreadstreamprocessing-features-styling-cell-styles%}) topic. **Example 8: Set the Value Format to String, Date, or a Number** - + You can apply a `SpreadCellFormat` instance on multiple cells. However, if a property of the format changes, the new settings apply to the cells formatted after the modification. @@ -149,7 +149,7 @@ You can get a concrete instance of `ICellImporter` through the `Cells` collectio **Example 9: Create ICellImporter** - + The `ICellImporter` interface exposes the following properties: diff --git a/libraries/radspreadstreamprocessing/model/column.md b/libraries/radspreadstreamprocessing/model/column.md index 17d8b8c5..87dc2a61 100644 --- a/libraries/radspreadstreamprocessing/model/column.md +++ b/libraries/radspreadstreamprocessing/model/column.md @@ -29,7 +29,7 @@ You can create a concrete instance of `IColumnExporter` through the `CreateColum **Example 1: Create IColumnExporter** - + >`IColumnExporter` inherits from [`IDisposable`](https://learn.microsoft.com/en-us/dotnet/api/system.idisposable). Ensure the object is disposed when you are done with it. Otherwise, the content will not be written in the exported file. The best way to ensure this is handled properly is to wrap it in a *using* statement. @@ -45,7 +45,7 @@ To customize the way a column appears, use one of the following methods: **Example 2: Set Properties to IColumnExporter** - + \* Due to the specifics of the library, `RadSpreadStreamProcessing` does not support auto fitting the width of the columns. You can find information on how to calculate the width needed for specific content in the [Get Cell Content Size]({%slug radspreadstreamprocessing-features-text-measuring%}) topic. @@ -57,7 +57,7 @@ In some cases you may need to skip several columns and start filling the data in **Example 3: Skip Columns** - + ## Read a Column @@ -67,7 +67,7 @@ You can get a concrete instance of `IColumnImporter` through the `Columns` colle **Example 4: Create IColumnImporter** - + The `IColumnImporter` interface exposes the following properties: diff --git a/libraries/radspreadstreamprocessing/model/row.md b/libraries/radspreadstreamprocessing/model/row.md index dd3a8535..2d46c35d 100644 --- a/libraries/radspreadstreamprocessing/model/row.md +++ b/libraries/radspreadstreamprocessing/model/row.md @@ -30,7 +30,7 @@ You can create a concrete instance of `IRowExporter` through the `CreateRowExpor **Example 1: Create IRowExporter** - + >`IRowExporter` inherits from [`IDisposable`](https://learn.microsoft.com/en-us/dotnet/api/system.idisposable). Ensure the object is disposed when you are done with it. Otherwise, the content will not be written in the exported file. The best way to ensure this is handled properly is to wrap it in a *using* statement. @@ -46,7 +46,7 @@ To customize the way a row appears, use one of the following methods: **Example 2: Set Properties to IRowExporter** - + \* Due to the specifics of the library, `RadSpreadStreamProcessing` does not support auto fitting the height of the rows. You can find information on how to calculate the height needed for specific content in the [Get Cell Content Size]({%slug radspreadstreamprocessing-features-text-measuring%}) topic. @@ -58,7 +58,7 @@ In some cases you may need to skip several rows and start filling the data in th **Example 3: Skip Rows** - + ## Read a Row @@ -68,7 +68,7 @@ You can get a concrete instance of `IRowImporter` through the `Rows` collection **Example 4: Create IRowImporter** - + The `IRowImporter` interface exposes the following properties to allow you to access its data: diff --git a/libraries/radspreadstreamprocessing/model/workbook.md b/libraries/radspreadstreamprocessing/model/workbook.md index c1a1e9c9..43910ddb 100644 --- a/libraries/radspreadstreamprocessing/model/workbook.md +++ b/libraries/radspreadstreamprocessing/model/workbook.md @@ -33,7 +33,7 @@ The code from **Example 1** creates an empty workbook and exports it to an XLSX **Example 1: Create IWorkbookExporter** - + ### Append Content to an Existing Document @@ -41,7 +41,7 @@ The `CreateWorkbookExporter` method creates a new workbook which overrides the c **Example 2: Create IWorkbookExporter and Append the Content from the Stream** - + >`IWorkbookExporter` inherits from [`IDisposable`](https://learn.microsoft.com/en-us/dotnet/api/system.idisposable). Ensure the object is disposed when you are done with it. Otherwise, the content will not be written in the exported file. The best way to ensure this is handled properly is to wrap it in a *using* statement. @@ -49,7 +49,7 @@ In the spreadsheet documents, the names of the sheets are unique. If you try to **Example 3: Using IWorkbookExporter.GetSheetInfos()** - + The CSV format does not have the concept of multiple sheets. Invoking `GetSheetInfos()` for a CSV document returns an empty collection. diff --git a/libraries/radspreadstreamprocessing/model/worksheet.md b/libraries/radspreadstreamprocessing/model/worksheet.md index 479a128d..11892445 100644 --- a/libraries/radspreadstreamprocessing/model/worksheet.md +++ b/libraries/radspreadstreamprocessing/model/worksheet.md @@ -35,7 +35,7 @@ You can create a concrete instance of `IWorksheetExporter` through the `CreateWo **Example 1: Create IWorksheetExporter** - + >`IWorksheetExporter` inherits from [`IDisposable`](https://learn.microsoft.com/en-us/dotnet/api/system.idisposable). Ensure the object is disposed when you are done with it. Otherwise, the content will not be written in the exported file. The best way to ensure this is handled properly is to wrap it in a *using* statement. diff --git a/libraries/radwordsprocessing/concepts/document-themes.md b/libraries/radwordsprocessing/concepts/document-themes.md index e8c4d723..529d18db 100644 --- a/libraries/radwordsprocessing/concepts/document-themes.md +++ b/libraries/radwordsprocessing/concepts/document-themes.md @@ -43,7 +43,7 @@ The following example demonstrates how to create a `ThemeColorScheme` object. No **Example 1: Create a ThemeColorScheme Object** - + @@ -63,7 +63,7 @@ To create colors that depend on the current document theme, use `ThemableColor` **Example 2: Create a ThemableColor Object** - + @@ -79,7 +79,7 @@ The code in the following example illustrates how to create a `ThemeFontScheme` **Example 3: Create a ThemeFontScheme** - + @@ -93,7 +93,7 @@ When you need to create a font that depends on the current document theme, use ` **Example 4: Create a ThemableFontFamily Object** - + @@ -103,19 +103,19 @@ Now that you have a color and a font scheme, you can create a new `DocumentTheme **Example 5: Create a DocumentTheme Object** - + There are a number of predefined color and font schemes. You can find them in a static class called [PredefinedThemeSchemes](https://docs.telerik.com/devtools/document-processing/api/Telerik.Windows.Documents.Spreadsheet.Theming.PredefinedThemeSchemes.html). The class exposes the properties `ColorSchemes` and `FontSchemes` that hold all predefined schemes. **Example 6: Using a Predefined Scheme** - + Changing the current document theme requires setting a single property. **Example 7: Change the Document Theme** - + ## Predefined ThemeColorSchemes @@ -224,12 +224,12 @@ To get the actual value from `ThemableColor` or `ThemableFontFamily`, call the ` **Example 8: Get Actual Value from ThemableColor** - + **Example 9: Get Actual Value from ThemableFont** - + ## See Also diff --git a/libraries/radwordsprocessing/concepts/fields/compare-field.md b/libraries/radwordsprocessing/concepts/fields/compare-field.md index 5fd879f1..403c6e2e 100644 --- a/libraries/radwordsprocessing/concepts/fields/compare-field.md +++ b/libraries/radwordsprocessing/concepts/fields/compare-field.md @@ -43,7 +43,7 @@ You can insert a Compare Field through the [RadFlowDocumentEditor]({%slug radwor **Example 1: Insert a CompareField** - + ## See Also diff --git a/libraries/radwordsprocessing/concepts/fields/date-field.md b/libraries/radwordsprocessing/concepts/fields/date-field.md index f16a0a4f..c2660233 100644 --- a/libraries/radwordsprocessing/concepts/fields/date-field.md +++ b/libraries/radwordsprocessing/concepts/fields/date-field.md @@ -39,7 +39,7 @@ You can insert a Date Field through the [RadFlowDocumentEditor]({%slug radwordsp **Example 1: Insert date field** - + After updating the field, the result is "_12/03/2021_" (check [Updating Fields](https://docs.telerik.com/devtools/document-processing/libraries/radwordsprocessing/concepts/fields/fields#updating-fields)). diff --git a/libraries/radwordsprocessing/concepts/fields/document-variables.md b/libraries/radwordsprocessing/concepts/fields/document-variables.md index ddfc9a04..a29885f7 100644 --- a/libraries/radwordsprocessing/concepts/fields/document-variables.md +++ b/libraries/radwordsprocessing/concepts/fields/document-variables.md @@ -18,7 +18,7 @@ position: 4 **Example 1: Add document variable record** - + @@ -30,7 +30,7 @@ To remove defined variables, use the `Remove()` method of the variables collecti **Example 2: Remove document variable record** - + @@ -53,7 +53,7 @@ You can insert a `DocumentVariableField` through the [`RadFlowDocumentEditor`]({ **Example 3: Insert document variable field** - + ## See Also diff --git a/libraries/radwordsprocessing/concepts/fields/expression-field.md b/libraries/radwordsprocessing/concepts/fields/expression-field.md index cb00fc0f..6bef8d0d 100644 --- a/libraries/radwordsprocessing/concepts/fields/expression-field.md +++ b/libraries/radwordsprocessing/concepts/fields/expression-field.md @@ -94,7 +94,7 @@ You can insert an Expression field through the `InsertField()` method of [RadFlo **Example 1: Insert an Expression field** - + The result is shown in **Figure 1**. diff --git a/libraries/radwordsprocessing/concepts/fields/fields.md b/libraries/radwordsprocessing/concepts/fields/fields.md index 68291abf..561f27b9 100644 --- a/libraries/radwordsprocessing/concepts/fields/fields.md +++ b/libraries/radwordsprocessing/concepts/fields/fields.md @@ -77,14 +77,14 @@ The recommended way to insert a field is to use the `InsertField()` method of th **Example 1: Create a document containing a Date field using RadFlowDocumentEditor** - + You can also create and insert all the parts of the field manually by creating a `FieldInfo` instance and adding all the inlines to the document structure. **Example 2** demonstrates how to achieve the same result as in **Example 1**. **Example 2: Create a document containing a Date field using the RadDocument model and FieldInfo** - + The manual approach is more verbose and prone to errors. If not all of the field characters are inserted, the result is an invalid document. Using the `RadFlowDocumentEditor`, on the other hand, guarantees that the document integrity is maintained. @@ -109,7 +109,7 @@ You can update a single field with the `UpdateField()` method of the `FieldInfo` **Example 3: Update a field** - + > The field result is not automatically updated upon insertion. The initial result fragment is passed as a parameter to the `InsertField()` method. @@ -118,7 +118,7 @@ You can update all fields in the document by using the `UpdateFields()` method o **Example 4: Update all fields in a document** - + ### Updating PageRef, Page, NumPages, and SectionPages Fields @@ -130,7 +130,7 @@ You can register the provider with the following code: **Example 5: Register the default NumberingFieldsProvider** - + ## Syntax and Switches @@ -168,7 +168,7 @@ Fields can also be nested in each other. If there are nested fields inside the c **Example 6: Create a nested field** - + ![Rad Words Processing Concepts Fields 02](images/RadWordsProcessing_Concepts_Fields_02.png) diff --git a/libraries/radwordsprocessing/concepts/fields/hyperlink-field.md b/libraries/radwordsprocessing/concepts/fields/hyperlink-field.md index f81882c2..6e60bb14 100644 --- a/libraries/radwordsprocessing/concepts/fields/hyperlink-field.md +++ b/libraries/radwordsprocessing/concepts/fields/hyperlink-field.md @@ -60,7 +60,7 @@ You can insert a Hyperlink field through the [RadFlowDocumentEditor]({%slug radw **Example 1: Insert a Hyperlink using the InsertHyperlink method** - + The result looks like shown in **Figure 1**. @@ -74,7 +74,7 @@ You can insert a Hyperlink field through the [RadFlowDocumentEditor]({%slug radw **Example 2: Insert a Hyperlink field using the InsertField method** - + The result looks like shown in **Figure 2**. @@ -87,7 +87,7 @@ Hyperlinks can also point to a [Bookmark]({%slug radwordsprocessing-model-bookma **Example 3: Insert a hyperlink pointing to a bookmark** - + The result of the above snippet is illustrated in **Figure 3**. diff --git a/libraries/radwordsprocessing/concepts/fields/if-field.md b/libraries/radwordsprocessing/concepts/fields/if-field.md index ac56d4a8..8904bf2f 100644 --- a/libraries/radwordsprocessing/concepts/fields/if-field.md +++ b/libraries/radwordsprocessing/concepts/fields/if-field.md @@ -47,7 +47,7 @@ You can insert an If field through the `InsertField()` method of [RadFlowDocumen **Example 1: Insert an If field** - + The result of the above snippet is illustrated in **Figure 1**. diff --git a/libraries/radwordsprocessing/concepts/fields/merge-field.md b/libraries/radwordsprocessing/concepts/fields/merge-field.md index 3694ad2c..c261b016 100644 --- a/libraries/radwordsprocessing/concepts/fields/merge-field.md +++ b/libraries/radwordsprocessing/concepts/fields/merge-field.md @@ -51,15 +51,15 @@ You can insert a Merge field through the `InsertField()` method of [RadFlowDocum **Example 1: Insert a Merge field** - + **Example 2: Insert a Merge field with switches** - + **Example 3: Insert a Merge field with a Date-Time format switch** - + After updating the field, the result is "05/13/21". diff --git a/libraries/radwordsprocessing/concepts/fields/numbering-fields-provider.md b/libraries/radwordsprocessing/concepts/fields/numbering-fields-provider.md index 1fd52c2a..3ccf1b95 100644 --- a/libraries/radwordsprocessing/concepts/fields/numbering-fields-provider.md +++ b/libraries/radwordsprocessing/concepts/fields/numbering-fields-provider.md @@ -22,7 +22,7 @@ Set the default provider with the following code: **Example 1: Register the default NumberingFieldsProvider** - + ## Using the RegisterNumberingStyleConverter @@ -30,7 +30,7 @@ The `RegisterNumberingStyleConverter` method allows you to register a custom num **Example 2: Register a custom NumberingStyleConverter** - + The `NumberingStyleConverter` must implement the `INumberingStyleConverter` interface. This interface has one method that takes a number and converts it to a string. diff --git a/libraries/radwordsprocessing/concepts/fields/numpages-fields.md b/libraries/radwordsprocessing/concepts/fields/numpages-fields.md index 132a8367..8d2eefa7 100644 --- a/libraries/radwordsprocessing/concepts/fields/numpages-fields.md +++ b/libraries/radwordsprocessing/concepts/fields/numpages-fields.md @@ -28,7 +28,7 @@ You can insert this field through the `InsertField()` method of [RadFlowDocument **Example 1: Insert a NumPages field** - + After updating the field, the result is "Page 5 of 60" (see [Updating Fields](https://docs.telerik.com/devtools/document-processing/libraries/radwordsprocessing/concepts/fields/fields#updating-fields)). diff --git a/libraries/radwordsprocessing/concepts/fields/page-field.md b/libraries/radwordsprocessing/concepts/fields/page-field.md index 6b5d1185..233dc49f 100644 --- a/libraries/radwordsprocessing/concepts/fields/page-field.md +++ b/libraries/radwordsprocessing/concepts/fields/page-field.md @@ -40,7 +40,7 @@ You can insert this field through the `InsertField()` method of [RadFlowDocument **Example 1: Insert a Page field** - + After updating the field, the result is "Page 3 of 6" (see [Updating Fields](https://docs.telerik.com/devtools/document-processing/libraries/radwordsprocessing/concepts/fields/fields#updating-fields)). diff --git a/libraries/radwordsprocessing/concepts/fields/pageref-field.md b/libraries/radwordsprocessing/concepts/fields/pageref-field.md index 1676b426..a616898a 100644 --- a/libraries/radwordsprocessing/concepts/fields/pageref-field.md +++ b/libraries/radwordsprocessing/concepts/fields/pageref-field.md @@ -42,7 +42,7 @@ You can insert this field through the [RadFlowDocumentEditor]({%slug radwordspro **Example 1: Insert PageRef field** - + After updating the field, the result is "Bookmark Page: 2" (check [Updating Fields](https://docs.telerik.com/devtools/document-processing/libraries/radwordsprocessing/concepts/fields/fields#updating-fields)). diff --git a/libraries/radwordsprocessing/concepts/fields/section.md b/libraries/radwordsprocessing/concepts/fields/section.md index acde6009..2438b201 100644 --- a/libraries/radwordsprocessing/concepts/fields/section.md +++ b/libraries/radwordsprocessing/concepts/fields/section.md @@ -29,7 +29,7 @@ You can insert a `Section` field through the [RadFlowDocumentEditor]({%slug radw **Example 1: Insert Section Field** - + After updating the field, the result is "Page 4 of Section 2" (check [Updating Fields](https://docs.telerik.com/devtools/document-processing/libraries/radwordsprocessing/concepts/fields/fields#updating-fields)). diff --git a/libraries/radwordsprocessing/concepts/fields/sectionpages-field.md b/libraries/radwordsprocessing/concepts/fields/sectionpages-field.md index cdcb7464..19b50573 100644 --- a/libraries/radwordsprocessing/concepts/fields/sectionpages-field.md +++ b/libraries/radwordsprocessing/concepts/fields/sectionpages-field.md @@ -29,7 +29,7 @@ You can insert a `SectionPages` field through the [RadFlowDocumentEditor]({%slug **Example 1: Insert SectionPages Field** - + After updating the field, the result is "Page 3 of 19" (check [Updating Fields](https://docs.telerik.com/devtools/document-processing/libraries/radwordsprocessing/concepts/fields/fields#updating-fields)). diff --git a/libraries/radwordsprocessing/concepts/fields/sequence-field.md b/libraries/radwordsprocessing/concepts/fields/sequence-field.md index 03f2dd5a..8cfc8335 100644 --- a/libraries/radwordsprocessing/concepts/fields/sequence-field.md +++ b/libraries/radwordsprocessing/concepts/fields/sequence-field.md @@ -51,7 +51,7 @@ You can insert SEQ fields when adding numbers to tables, figures, and other item The suggested approach for inserting code fields is to use [RadFlowDocumentEditor]({%slug radwordsprocessing-editing-radflowdocumenteditor%}). The `InsertField()` method accepts code as the first argument and the result as the second argument. - + ## See Also diff --git a/libraries/radwordsprocessing/concepts/lists.md b/libraries/radwordsprocessing/concepts/lists.md index d5c82e02..15e32cd7 100644 --- a/libraries/radwordsprocessing/concepts/lists.md +++ b/libraries/radwordsprocessing/concepts/lists.md @@ -80,7 +80,7 @@ The following example adds a default bulleted list to a predefined `RadFlowDocum **Example 1: Add List Template** - + @@ -92,7 +92,7 @@ The following tutorial walks you through the creation of a list. **Step 1: Create RadFlowDocument** - + @@ -100,7 +100,7 @@ The following tutorial walks you through the creation of a list. **Step 2: Create List** - + In this case, the default `HybridMultilevel` type of list is created. @@ -108,7 +108,7 @@ The following tutorial walks you through the creation of a list. **Step 3: Iterate Levels** - + @@ -116,7 +116,7 @@ The following tutorial walks you through the creation of a list. **Step 4: Customize List Levels** - + With this step the list is ready to use. @@ -128,7 +128,7 @@ The following example demonstrates how you can apply the list created in Steps 1 **Example 6: Apply List** - + diff --git a/libraries/radwordsprocessing/concepts/style-properties.md b/libraries/radwordsprocessing/concepts/style-properties.md index f7f26833..ecedc074 100644 --- a/libraries/radwordsprocessing/concepts/style-properties.md +++ b/libraries/radwordsprocessing/concepts/style-properties.md @@ -63,14 +63,14 @@ Document elements expose sets of style properties through the `Properties` prope **Example 1: Get a value** - + **Example 2** demonstrates how to set a value with CLR property and style property. **Example 2: Set a value** - + @@ -82,7 +82,7 @@ The style properties in a style are accessible through the following property se **Example 3: Get the local value** - + @@ -90,7 +90,7 @@ The style properties in a style are accessible through the following property se **Example 4: Get the actual value** - + @@ -102,7 +102,7 @@ The code in **Example 5** illustrates how to get the default value for a style p **Example 5: Get the default value** - + diff --git a/libraries/radwordsprocessing/concepts/styles.md b/libraries/radwordsprocessing/concepts/styles.md index 7da064ea..a12065a7 100644 --- a/libraries/radwordsprocessing/concepts/styles.md +++ b/libraries/radwordsprocessing/concepts/styles.md @@ -57,7 +57,7 @@ A style must be added to the `RadFlowDocument` style repository to be further ap **Example 1: Create a table style and add it to the style repository** - + >If a style is not added to the `StyleRepository`, applying it to a document element does not take any effect. @@ -66,7 +66,7 @@ To apply a style to a specific element, set its `StyleId` property. **Example 2: Apply a custom style to an element** - + ## Default Styles @@ -82,7 +82,7 @@ Default style is a style which, according to its style type, is applied to objec **Example 3: Set a default font-family** - + ## Built-in Styles @@ -93,7 +93,7 @@ Built-in styles are commonly used styles, which are predefined for convenience. **Example 4: Get the ID of a built-in style** - + diff --git a/libraries/radwordsprocessing/concepts/tabstop.md b/libraries/radwordsprocessing/concepts/tabstop.md index 245e33fa..ccc381f2 100644 --- a/libraries/radwordsprocessing/concepts/tabstop.md +++ b/libraries/radwordsprocessing/concepts/tabstop.md @@ -61,7 +61,7 @@ Excluding the default constructor, the `TabStopCollection` class exposes an over **Example 1: Create a TabStopCollection** - + ### Insert Item in a TabStopCollection @@ -69,7 +69,7 @@ Excluding the default constructor, the `TabStopCollection` class exposes an over **Example 2** demonstrates how to insert items in the `TabStopCollection` created in [Example 1](#example1). Keep in mind that this collection is immutable, so the `Insert()` method returns a **new instance** of the class. **Example 2: Insert item in a TabStopCollection** - + ### Remove Item from a TabStopCollection @@ -77,7 +77,7 @@ Excluding the default constructor, the `TabStopCollection` class exposes an over The following snippet shows how to remove an item from the `TabStopCollection` created in [Example 1](#example1). Keep in mind that this collection is immutable, so the `Remove()` method returns a new instance of the class. **Example 3: Remove item from a TabStopCollection** - + ## Working with TabStop @@ -93,7 +93,7 @@ The code from **Example 4** demonstrates how to create a tab stop. **Example 4: Create a TabStop** - + ### Add a TabStop @@ -101,7 +101,7 @@ The code from **Example 4** demonstrates how to create a tab stop. **Example 5: Insert a TabStop** - + ### Remove a TabStop @@ -109,7 +109,7 @@ The following code-snippet shows how to remove the tab stop created in [Example **Example 6: Remove a TabStop** - + ### Use a TabStop in the Content @@ -117,7 +117,7 @@ Once you have applied the desired tab stops to a paragraph, insert tabs (\t) so **Example 7: Add tabs to align to the tab stops** - + ## See Also diff --git a/libraries/radwordsprocessing/concepts/watermark.md b/libraries/radwordsprocessing/concepts/watermark.md index 839d6436..c1da2848 100644 --- a/libraries/radwordsprocessing/concepts/watermark.md +++ b/libraries/radwordsprocessing/concepts/watermark.md @@ -42,14 +42,14 @@ To create a watermark through the constructor of the class, pass an object of ty **Example 1: Create text watermark** - + Creating an image watermark is similar to creating a text one. **Example 2** shows how to create an image watermark. **Example 2: Create image watermark** - + ## Set Watermark @@ -61,7 +61,7 @@ Watermarks are preserved in the header of the section to which the watermark is **Example 3: Add watermark to header** - + >tip By default, if a header is omitted for a `Section` other than the first one, it is inherited from the previous `Section`. The watermark set in **Example 3** is implicitly inherited by all sections following the first one because watermarks are preserved in the header. @@ -73,7 +73,7 @@ You can also set a watermark in a document through the [`RadFlowDocumentEditor`] **Example 4: Set watermark with RadFlowDocumentEditor** - + ## See Also diff --git a/libraries/radwordsprocessing/editing/clone-and-merge.md b/libraries/radwordsprocessing/editing/clone-and-merge.md index dae61aa1..18fb7fcd 100644 --- a/libraries/radwordsprocessing/editing/clone-and-merge.md +++ b/libraries/radwordsprocessing/editing/clone-and-merge.md @@ -21,7 +21,7 @@ position: 0 #### **Example 1: Merge Two Instances of RadFlowDocument** - + The `Merge` method performs two distinct operations: @@ -40,7 +40,7 @@ You can pass the `MergeOptions` parameter as an argument to the `Merge()` method #### **Example 2: Merge Documents with MergeOptions** - + >tip You can insert one document into another at a specified position using the `InsertDocument()` method of `RadFlowDocumentEditor`. For more information, refer to [Insert Documents]({%slug radwordsprocessing-editing-insert-documents%}). @@ -50,7 +50,7 @@ You can pass the `MergeOptions` parameter as an argument to the `Merge()` method #### **Example 3: Clone a RadFlowDocument** - + ## Cloning Document Elements @@ -73,7 +73,7 @@ The `Clone()` method has two overloads: #### **Example 4: Clone a Section** - + >tip With the `DocumentElementImporter` class you can import a document element from one document (source) and insert it into another (target). For more details, refer to [Import Document Element]({%slug radwordsprocessing-editing-import-document-element%}). diff --git a/libraries/radwordsprocessing/editing/find-and-replace/find-and-replace-text.md b/libraries/radwordsprocessing/editing/find-and-replace/find-and-replace-text.md index 6a856334..3be8dc0f 100644 --- a/libraries/radwordsprocessing/editing/find-and-replace/find-and-replace-text.md +++ b/libraries/radwordsprocessing/editing/find-and-replace/find-and-replace-text.md @@ -37,7 +37,7 @@ Both methods return a collection of `FindResult` instances, which in turn expose **Example 1: Find Text** - + ## Replace Text @@ -54,7 +54,7 @@ To find all instances of a string and replace it with another one, you can use t **Example 2: Replace Text** - + ## Replace Styling @@ -73,7 +73,7 @@ To find all instances of a string and replace it with another one, you can use t **Example 3: Replace Character Properties** - + ## See Also diff --git a/libraries/radwordsprocessing/editing/find-and-replace/replace-document-elements.md b/libraries/radwordsprocessing/editing/find-and-replace/replace-document-elements.md index ebe4c7f7..fb3bdc41 100644 --- a/libraries/radwordsprocessing/editing/find-and-replace/replace-document-elements.md +++ b/libraries/radwordsprocessing/editing/find-and-replace/replace-document-elements.md @@ -28,11 +28,11 @@ You can search and replace text using [RadFlowDocumentEditor]({%slug radwordspro **Example 1: Replace Text with a Single Inline** - + **Example 2: Replace Text with Multiple Inlines** - + ## Replace Text with One or More Blocks @@ -43,11 +43,11 @@ You can search and replace text using [RadFlowDocumentEditor]({%slug radwordspro **Example 3: Replace Text with a Single Block** - + **Example 4: Replace Text with Multiple Blocks** - + ## See Also diff --git a/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/complete-context-question-processor.md b/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/complete-context-question-processor.md index 3b46c553..0ca4711c 100644 --- a/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/complete-context-question-processor.md +++ b/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/complete-context-question-processor.md @@ -60,7 +60,7 @@ The following example demonstrates how to use the `CompleteContextQuestionProces **Example 1: Using CompleteContextQuestionProcessor** - + ## See Also diff --git a/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/custom-partialcontextquestionprocessor.md b/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/custom-partialcontextquestionprocessor.md index 5c46086c..f05d3b07 100644 --- a/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/custom-partialcontextquestionprocessor.md +++ b/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/custom-partialcontextquestionprocessor.md @@ -51,7 +51,7 @@ The following example constructs a custom `PartialContextQuestionProcessor` by s >note The `DefaultEmbedder` is only available on **net8-windows** and higher. On other target frameworks you must supply your own `IEmbedder` (as shown with [CustomOpenAIEmbedder]({%slug radwordsprocessing-features-gen-ai-powered-document-insights-partial-context-question-processor%}#implementing-custom-iembedder)). - + ## See Also diff --git a/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/getting-started.md b/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/getting-started.md index 054b2313..faeb3dc0 100644 --- a/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/getting-started.md +++ b/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/getting-started.md @@ -18,7 +18,7 @@ The following example demonstrates how to use the GenAI-powered Document Insight **Example 1: Using GenAI-powered Document Insights** - + When you run this code, the AI processes your document, generates a summary, and answers your questions. diff --git a/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/partial-context-question-processor.md b/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/partial-context-question-processor.md index ebed9ac9..02ddcca0 100644 --- a/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/partial-context-question-processor.md +++ b/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/partial-context-question-processor.md @@ -63,7 +63,7 @@ The `EmbeddingSettingsFactory` class creates the settings through the `CreateSet | `MaxNumberOfEmbeddingsSent` | Maximum number of context chunks sent. Default is `null`. | | `EmbeddingTokenSize` | Size in tokens of each context chunk. Default is `null`. | - + ## Usage Examples @@ -71,13 +71,13 @@ The `EmbeddingSettingsFactory` class creates the settings through the `CreateSet This example demonstrates how to use the `PartialContextQuestionProcessor` with the built-in embedding on .NET {{site.mindotnetversion}}+ (Target OS Windows) + [Packages for .NET {{site.mindotnetversion}} and .NET {{site.maxdotnetversion}} for Windows]({%slug available-nuget-packages%}#packages-for-net-framework-and-net-{{site.mindotnetversion}}-and-net-{{site.maxdotnetversion}}-for-windows). For setting up the AI client, see the [AI Provider Setup]({%slug radwordsprocessing-features-gen-ai-powered-document-insights-prerequisites%}#ai-provider-setup) section: - + **Example 2: Using PartialContextQuestionProcessor with Custom IEmbedder** This example demonstrates how to use the `PartialContextQuestionProcessor` with a custom `IEmbedder` implementation as described in the [Implementing Custom IEmbedder]({%slug radwordsprocessing-features-gen-ai-powered-document-insights-partial-context-question-processor%}#implementing-custom-iembedder) section: - + ### Implementing Custom IEmbedder @@ -89,7 +89,7 @@ The following code snippet shows a sample custom `CustomOpenAIEmbedder` implemen > * `Telerik.Windows.Documents.AIConnector` > * `Telerik.Windows.Documents.Flow` - + ## See Also diff --git a/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/prerequisites.md b/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/prerequisites.md index 8cbdf8f1..37e35f15 100644 --- a/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/prerequisites.md +++ b/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/prerequisites.md @@ -58,7 +58,7 @@ Before using the GenAI-powered Document Insights feature, you need to set up an **Example 1: Setting Up Azure OpenAI** - + ### OpenAI Setup @@ -67,7 +67,7 @@ Before using the GenAI-powered Document Insights feature, you need to set up an **Example 2: Setting Up OpenAI** - + ### Ollama Setup (Local AI) @@ -79,7 +79,7 @@ Ollama allows you to run AI models locally on your machine. This is useful for d **Example 3: Setting Up Ollama** - + ## See Also diff --git a/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/summarization-processor.md b/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/summarization-processor.md index 1068a8c5..9a27ab97 100644 --- a/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/summarization-processor.md +++ b/libraries/radwordsprocessing/editing/gen-ai-powered-document-insights/summarization-processor.md @@ -50,7 +50,7 @@ The `SummarizationProcessorSettings` class defines configuration options for the **Example 1: Configuring SummarizationProcessorSettings** - + ## Usage Example @@ -68,7 +68,7 @@ This approach allows the processor to handle documents of any size, but it incre **Example 2: Using SummarizationProcessor** - + ## See Also diff --git a/libraries/radwordsprocessing/editing/import-document-element.md b/libraries/radwordsprocessing/editing/import-document-element.md index 0e075202..5677db42 100644 --- a/libraries/radwordsprocessing/editing/import-document-element.md +++ b/libraries/radwordsprocessing/editing/import-document-element.md @@ -31,7 +31,7 @@ The constructor of the `DocumentElementImporter` class accepts the following par **Example 1: Create DocumentElementImporter** - + @@ -41,7 +41,7 @@ The `DocumentElementImporter` class exposes the `Import()` method, which prep **Example 2: Import a Document Element** - + You can then insert the imported document element into the target document through the `RadFlowDocumentEditor` class. For more information, refer to [Inserting Document Elements]({% slug radwordsprocessing-editing-radflowdocumenteditor%}#inserting-document-elements). diff --git a/libraries/radwordsprocessing/editing/insert-documents.md b/libraries/radwordsprocessing/editing/insert-documents.md index 06738f50..2be994a5 100644 --- a/libraries/radwordsprocessing/editing/insert-documents.md +++ b/libraries/radwordsprocessing/editing/insert-documents.md @@ -31,7 +31,7 @@ The [`InsertDocumentOptions`](https://docs.telerik.com/devtools/document-process **Example 1: Insert Source Document into Target Document** - + ## Behavior diff --git a/libraries/radwordsprocessing/editing/mail-merge.md b/libraries/radwordsprocessing/editing/mail-merge.md index 5d5e3c28..7a8e0c17 100644 --- a/libraries/radwordsprocessing/editing/mail-merge.md +++ b/libraries/radwordsprocessing/editing/mail-merge.md @@ -20,13 +20,13 @@ The code snippet in **Example 1** shows how to initialize a `RadFlowDocumentEdit **Example 1: Insert a Merge Field** - + Additionally, you can add a field to a `Paragraph` manually by creating a `FieldInfo` instance and placing its start, code, separator, result, and end in the block. **Example 2** shows the manual approach for adding a merge field. **Example 2: Add a Merge Field Manually** - + ## Performing Mail Merge @@ -38,13 +38,13 @@ During the operation, each `MergeField` is replaced with the corresponding infor **Example 3: Sample Data Source** - + **Example 4** performs the mail merge operation over a previously defined template document using the data source from **Example 3**. **Example 4: Perform Mail Merge** - + ## Nested Mail Merge @@ -73,13 +73,13 @@ First, define a data source that contains an `IEnumerable` of objects. **Example 5: Nested Mail Merge Data Source** - + Then, add the fields using the specific supported names. In this example, the fields are added to the table using the TableStart/TableEnd tags. This is not mandatory and you can use a tag of your choosing. **Example 6: Perform Nested Mail Merge** - + ### One Row vs Multiline Mail Merge diff --git a/libraries/radwordsprocessing/editing/radflowdocumenteditor.md b/libraries/radwordsprocessing/editing/radflowdocumenteditor.md index d8fc3d48..67987c4c 100644 --- a/libraries/radwordsprocessing/editing/radflowdocumenteditor.md +++ b/libraries/radwordsprocessing/editing/radflowdocumenteditor.md @@ -23,7 +23,7 @@ Although `RadFlowDocument` can be created and modified by using the style proper **Example 1: Create a RadFlowDocumentEditor** - + The editor maintains an internal position inside the document. This position points either inside a paragraph (to an inline) or directly after the end of a table element. The following methods are available for changing the position of the editor within a document: @@ -37,13 +37,13 @@ The code from **Example 2** demonstrates how to position the editor after the se **Example 2: Change the Position of RadFlowDocumentEditor** - + You can create a `RadFlowDocumentEditor` for an empty document (one with no sections). In this case, a section and a paragraph are automatically created when you call an insert method. **Example 3** creates a document with one section, containing one paragraph with the text "Hello word!". **Example 3: Insert Text in a Document** - + ## Inserting Document Elements @@ -64,7 +64,7 @@ The code in **Example 4** inserts a run containing a new line. **Example 4: Insert a Run with a New Line** - + The result looks like **Figure 1** shows. @@ -80,7 +80,7 @@ You can start a new [Paragraph]({%slug radwordsprocessing-model-paragraph%}) wit **Example 5: Insert a Paragraph** - + **Figure 2** shows the result from **Example 5**. @@ -94,7 +94,7 @@ If you call the `InsertParagraph()` method while the editor is positioned in the You can insert [Section]({%slug radwordsprocessing-model-section%}) elements with the `InsertSection()` method. A paragraph with the new section's properties is added and the new `Section` element is returned. **Example 6: Insert a Section** - + >If you call the `InsertSection()` method while the editor is positioned in a `TableCell`, the `Table` is split at the current row. This means that if the table contains three rows, and the editor is positioned in a cell which is on the second row, the table is split into two tables—one with one row, which is added to the previous section, and one with two rows (containing the `TableCell` where the editor position was). The latter is added to the newly inserted `Section`. @@ -110,7 +110,7 @@ It automatically applies the "Hyperlink" built-in style to the inserted hyperlin **Example 7: Insert a Hyperlink** - + **Figure 3: Hyperlink** ![RadFlowDocumentEditor hyperlink result](images/RadWordsProcessing_Editing_RadFlowDocumentEditor_03.png) @@ -127,7 +127,7 @@ public Field InsertField(string code, string result) **Example 8: Add Page Numbering in a Header** - + **Figure 4: The Page Numbering Inserted in Example 8** ![RadFlowDocumentEditor page numbering result](images/RadWordsProcessing_Editing_RadFlowDocumentEditor_04.png) @@ -150,7 +150,7 @@ In this case the result is automatically updated when a document is opened in MS **Example 9: Insert an Image from a Stream** - + **Figure 5: The Image Inserted in Example 9** ![RadFlowDocumentEditor insert image result](images/RadWordsProcessing_Editing_RadFlowDocumentEditor_05.png) @@ -173,7 +173,7 @@ The following example inserts a table with the "TableGrid" built-in style: **Example 10: Insert a Table with a Style** - + **Figure 6: The Table in the Document** @@ -196,7 +196,7 @@ Formatting options are most useful when inserting multiple elements that must ha **Example 11: Insert Content with Specified Styles** - + **Figure 7: The Content Inserted in Example 11** @@ -206,7 +206,7 @@ Formatting options are most useful when inserting multiple elements that must ha **Example 12: Delete Content Between Existing Elements** - + The method deletes everything between the "start" and "end" elements. You can choose if the "start" and "end" elements are deleted with the last parameter. diff --git a/libraries/radwordsprocessing/formats-and-conversion/html/htmlformatprovider.md b/libraries/radwordsprocessing/formats-and-conversion/html/htmlformatprovider.md index 19ea1b9d..a720dd59 100644 --- a/libraries/radwordsprocessing/formats-and-conversion/html/htmlformatprovider.md +++ b/libraries/radwordsprocessing/formats-and-conversion/html/htmlformatprovider.md @@ -23,7 +23,7 @@ To import an HTML document, use the overloads of the `HtmlFormatProvider.Import( **Example 1: Import HTML file** - + @@ -31,7 +31,7 @@ To import an HTML document, use the overloads of the `HtmlFormatProvider.Import( **Example 2: Import HTML string** - + @@ -45,7 +45,7 @@ To export a document to HTML, use the overloads of the `HtmlFormatProvider.Expor **Example 3: Export HTML to file** - + @@ -53,7 +53,7 @@ You can also export the document to a string variable as shown in **Example 4**. **Example 4: Export HTML to string** - + ## See Also diff --git a/libraries/radwordsprocessing/formats-and-conversion/html/settings.md b/libraries/radwordsprocessing/formats-and-conversion/html/settings.md index e663b7da..cd4f9c74 100644 --- a/libraries/radwordsprocessing/formats-and-conversion/html/settings.md +++ b/libraries/radwordsprocessing/formats-and-conversion/html/settings.md @@ -33,7 +33,7 @@ You can set the value of the property to any valid CSS document. **Example 1** s **Example 1: Add CSS to the DefaultStyleSheet** - + ### GenericFonts @@ -54,7 +54,7 @@ The `LoadImageFromUri` event uses the `LoadImageFromUriEventArgs` object which e **Example 2** shows how to use the `LoadImageFromUri` event to download an image. **Example 2: Use the LoadImageFromUri** - + The `LoadStyleSheetFromUri` event uses the `LoadStyleSheetFromUriEventArgs` object which exposes the following properties: @@ -64,7 +64,7 @@ The `LoadStyleSheetFromUri` event uses the `LoadStyleSheetFromUriEventArgs` obje **Example 3** shows how to use the `LoadStyleSheetFromUri` event. **Example 3: Use the LoadStyleSheetFromUri event** - + ## UriImageSource Class @@ -85,7 +85,7 @@ The provider always exports `UriImageSource` objects as images with URI as their **Example 4: Convert UriImageSource to ImageSource** - + ## Export Settings @@ -166,7 +166,7 @@ The event is only raised when the `StylesExportMode` property is set to `Externa **Example 5: Create HtmlExportSettings** - + diff --git a/libraries/radwordsprocessing/formats-and-conversion/markdown/markdownformatprovider.md b/libraries/radwordsprocessing/formats-and-conversion/markdown/markdownformatprovider.md index 3618c126..6e2f0719 100644 --- a/libraries/radwordsprocessing/formats-and-conversion/markdown/markdownformatprovider.md +++ b/libraries/radwordsprocessing/formats-and-conversion/markdown/markdownformatprovider.md @@ -58,7 +58,7 @@ To import a Markdown file, create a `MarkdownFormatProvider` instance and call i **Example 1: Import from a File** - + The provider parses the Markdown content and builds a `RadFlowDocument` with the corresponding paragraphs, headings, tables, and inline formatting. The provider maps inline elements such as bold, italic, code, and strikethrough to the equivalent character properties in the document model. @@ -68,7 +68,7 @@ To export a `RadFlowDocument` to Markdown, create a `MarkdownFormatProvider` ins **Example 2: Export to a File** - + The exporter traverses the document structure and writes the equivalent Markdown constructs. The exporter maps heading styles to ATX-style heading markers (`#`–`######`), renders tables as GitHub-Flavored Markdown pipe tables, and writes lists with the appropriate indentation. diff --git a/libraries/radwordsprocessing/formats-and-conversion/markdown/settings.md b/libraries/radwordsprocessing/formats-and-conversion/markdown/settings.md index 75fa06f4..6cbd59d3 100644 --- a/libraries/radwordsprocessing/formats-and-conversion/markdown/settings.md +++ b/libraries/radwordsprocessing/formats-and-conversion/markdown/settings.md @@ -27,7 +27,7 @@ The `ImportSettings` property returns a `MarkdownImportSettings` instance. This **Example 1: Configure Import Settings** - + ## Export Settings @@ -46,7 +46,7 @@ The `ExportSettings` property returns a `MarkdownExportSettings` instance. This **Example 2: Configure Export Settings** - + ## See Also diff --git a/libraries/radwordsprocessing/formats-and-conversion/pdf/pdfformatprovider.md b/libraries/radwordsprocessing/formats-and-conversion/pdf/pdfformatprovider.md index 025ad8fd..7ee28e59 100644 --- a/libraries/radwordsprocessing/formats-and-conversion/pdf/pdfformatprovider.md +++ b/libraries/radwordsprocessing/formats-and-conversion/pdf/pdfformatprovider.md @@ -35,7 +35,7 @@ The code snippet in **Example 1** shows how to create a `PdfFormatProvider` inst **Example 1: Export to PDF File** - + The result from the method is a document that you can open in any application that supports PDF documents. @@ -43,7 +43,7 @@ The result from the method is a document that you can open in any application th **Example 2: Export to RadFixedDocument** - + >tip `RadFixedDocument` is the base class of the RadPdfProcessing library. Additional information on the library and its functionality is available in the [RadPdfProcessing Overview]({%slug radpdfprocessing-overview%}). diff --git a/libraries/radwordsprocessing/formats-and-conversion/pdf/settings.md b/libraries/radwordsprocessing/formats-and-conversion/pdf/settings.md index 8f9bf237..ccfc622d 100644 --- a/libraries/radwordsprocessing/formats-and-conversion/pdf/settings.md +++ b/libraries/radwordsprocessing/formats-and-conversion/pdf/settings.md @@ -22,7 +22,7 @@ The `PdfExportSettings` class derives from the `Telerik.Windows.Documents.Fixed. **Example 1: Export PDF/A Compliant Document** - + >The PDF/A standard requires documents to contain all fonts used in them within the document. RadPdfProcessing does not support embedding of the standard 14 fonts used in PDF documents listed [here]({%slug radpdfprocessing-concepts-fonts%}). Using these fonts prevents the document from complying with the standard. @@ -36,7 +36,7 @@ The `ExtensibilityManager` property of the `PdfExportSettings` class allows you **Example 2: Register Numbering Style Converter** - + ## See Also diff --git a/libraries/radwordsprocessing/formats-and-conversion/plain-text/txt-txtformatprovider.md b/libraries/radwordsprocessing/formats-and-conversion/plain-text/txt-txtformatprovider.md index d80b5173..2d1f38a2 100644 --- a/libraries/radwordsprocessing/formats-and-conversion/plain-text/txt-txtformatprovider.md +++ b/libraries/radwordsprocessing/formats-and-conversion/plain-text/txt-txtformatprovider.md @@ -25,13 +25,13 @@ To import a plain text document, use the `Import()` method of `TxtFormatProvider **Example 1: Import Document from a File** - + You can also import a document from a string: **Example 2: Import Document from a String** - + The resulting `RadFlowDocument` can be manipulated like any code-generated document. @@ -43,13 +43,13 @@ To export a document to plain text, use the `Export()` method of `TxtFormatProvi **Example 3: Export a Document to a File** - + You can also export the document to a string and preserve it in a database. **Example 4: Export a Document to a String** - + ## See Also diff --git a/libraries/radwordsprocessing/formats-and-conversion/rtf/rtfformatprovider.md b/libraries/radwordsprocessing/formats-and-conversion/rtf/rtfformatprovider.md index 870a00e7..dc2e7be4 100644 --- a/libraries/radwordsprocessing/formats-and-conversion/rtf/rtfformatprovider.md +++ b/libraries/radwordsprocessing/formats-and-conversion/rtf/rtfformatprovider.md @@ -25,13 +25,13 @@ The following code shows how to use `RtfFormatProvider` to import an RTF documen **Example 1: Import document from a file** - + You can also import a document from a string containing the RTF document: **Example 2: Import document from a string** - + The resulting `RadFlowDocument` can be used like any code-generated document. @@ -43,13 +43,13 @@ The following code shows how to use `RtfFormatProvider` to export a `RadFlowDocu **Example 3: Export a document to a file** - + You can also export the document to a string and preserve it in a database. **Example 4: Export a document to a string** - + The resulting documents can be opened in any application that supports RTF documents. diff --git a/libraries/radwordsprocessing/formats-and-conversion/rtf/settings.md b/libraries/radwordsprocessing/formats-and-conversion/rtf/settings.md index 6398618d..61c626ac 100644 --- a/libraries/radwordsprocessing/formats-and-conversion/rtf/settings.md +++ b/libraries/radwordsprocessing/formats-and-conversion/rtf/settings.md @@ -26,5 +26,5 @@ The following code demonstrates how to create and specify particular export sett **Example 1: Create RtfExportSettings** - + diff --git a/libraries/radwordsprocessing/formats-and-conversion/word-file-formats/doc/docformatprovider.md b/libraries/radwordsprocessing/formats-and-conversion/word-file-formats/doc/docformatprovider.md index 3d45c4d3..d5fb6e42 100644 --- a/libraries/radwordsprocessing/formats-and-conversion/word-file-formats/doc/docformatprovider.md +++ b/libraries/radwordsprocessing/formats-and-conversion/word-file-formats/doc/docformatprovider.md @@ -27,13 +27,13 @@ To import a DOC or DOT file, use the `Import()` method of `DocFormatProvider`. **Example 1: Import document from a file** - + You can also import a document from a byte array containing the document: **Example 2: Import document from a byte array** - + The resulting `RadFlowDocument` can be manipulated like any code-generated document. diff --git a/libraries/radwordsprocessing/formats-and-conversion/word-file-formats/docx/docxformatprovider.md b/libraries/radwordsprocessing/formats-and-conversion/word-file-formats/docx/docxformatprovider.md index 4880bba0..c4392a93 100644 --- a/libraries/radwordsprocessing/formats-and-conversion/word-file-formats/docx/docxformatprovider.md +++ b/libraries/radwordsprocessing/formats-and-conversion/word-file-formats/docx/docxformatprovider.md @@ -31,13 +31,13 @@ The following code shows how to use `DocxFormatProvider` to import a DOCX docume **Example 1: Import document from a file** - + You can also import a document from a byte array containing the DOCX document: **Example 2: Import document from a byte array** - + The resulting `RadFlowDocument` can be manipulated like any code-generated document. @@ -49,13 +49,13 @@ The following code shows how to use `DocxFormatProvider` to export a `RadFlowDoc **Example 3: Export a document to a file** - + You can also export the document to a byte array and preserve it in a database. **Example 4: Export a document to a byte array** - + The resulting documents can be opened in any application that supports DOCX documents. diff --git a/libraries/radwordsprocessing/formats-and-conversion/word-file-formats/docx/settings.md b/libraries/radwordsprocessing/formats-and-conversion/word-file-formats/docx/settings.md index 68506aae..66cbde37 100644 --- a/libraries/radwordsprocessing/formats-and-conversion/word-file-formats/docx/settings.md +++ b/libraries/radwordsprocessing/formats-and-conversion/word-file-formats/docx/settings.md @@ -34,5 +34,5 @@ The following code shows how to create and specify particular export settings fo **Example 1: Create DocxExportSettings** - + diff --git a/libraries/radwordsprocessing/getting-started.md b/libraries/radwordsprocessing/getting-started.md index 6e14c183..7804b128 100644 --- a/libraries/radwordsprocessing/getting-started.md +++ b/libraries/radwordsprocessing/getting-started.md @@ -41,7 +41,7 @@ The following example creates a new document instance and inserts sample content ### Example 1: Create a RadFlowDocument Programmatically - + After you run the code in Example 1, you should have an in-memory `RadFlowDocument` that contains the text you inserted. At this stage, the document exists only in memory, so the next step is to export it to a file format. @@ -53,7 +53,7 @@ The next example creates a provider instance and exports the document: ### Example 2: Export a RadFlowDocument to DOCX - + When you integrate this example into your project, verify these points: diff --git a/libraries/radwordsprocessing/model/bookmark.md b/libraries/radwordsprocessing/model/bookmark.md index 85e3de86..2f4c8e98 100644 --- a/libraries/radwordsprocessing/model/bookmark.md +++ b/libraries/radwordsprocessing/model/bookmark.md @@ -21,7 +21,7 @@ A `Bookmark` refers to a location in the document and has a unique name, which i **Example 1: Add a Bookmark to a Paragraph** - + The paragraph must belong to the same document that is passed to the constructor of the `Bookmark` object. Otherwise, an exception is thrown. The bookmark location is specified around a run with text "*text*". @@ -29,7 +29,7 @@ You can also insert a `Bookmark` in the document with the [RadFlowDocumentEditor **Example 2: Insert a Bookmark Using RadFlowDocumentEditor** - + The `InsertBookmark()` method from **Example 2** creates a `Bookmark` with name "*MyBookmark*" and inserts its `BookmarkRangeStart` and `BookmarkRangeEnd` elements one after another. @@ -41,7 +41,7 @@ You can remove an inserted `Bookmark` by using the `DeleteBookmark()` method of **Example 3: Delete a Bookmark Using RadFlowDocumentEditor** - + ## See Also diff --git a/libraries/radwordsprocessing/model/break.md b/libraries/radwordsprocessing/model/break.md index 3497de20..5ff30b7c 100644 --- a/libraries/radwordsprocessing/model/break.md +++ b/libraries/radwordsprocessing/model/break.md @@ -24,7 +24,7 @@ All inline-level elements in a `RadFlowDocument` must be placed within another e **Example 1: Create a Break** - + The paragraph must belong to the same document that is passed to the constructor of the `Break` element. The code in **Example 1** inserts a `Break` element of the default break type—line break. You can change the type of a break through its `BreakType` property. @@ -32,7 +32,7 @@ The paragraph must belong to the same document that is passed to the constructor **Example 2: Change the BreakType** - + You can also insert a break in the document with the `InsertBreak()` method of the [RadFlowDocumentEditor]({%slug radwordsprocessing-editing-radflowdocumenteditor%}) class. @@ -40,7 +40,7 @@ You can also insert a break in the document with the `InsertBreak()` method of t **Example 3: Insert a Break Using RadFlowDocumentEditor** - + ## Modifying a Break @@ -57,7 +57,7 @@ The `Break` element exposes several properties that allow you to customize it: **Example 4: Customize a Break** - + ## See Also diff --git a/libraries/radwordsprocessing/model/comment.md b/libraries/radwordsprocessing/model/comment.md index 29f4727b..97f0964b 100644 --- a/libraries/radwordsprocessing/model/comment.md +++ b/libraries/radwordsprocessing/model/comment.md @@ -21,7 +21,7 @@ A `Comment` holds annotation markers, which specify the range of document elemen **Example 1: Add a Comment to a Paragraph** - + The `AddComment()` method of the `Comments` collection of a document creates a new comment and returns it. The comment location is around a run with text "*text*". The paragraph must belong to the same document as the one passed to the constructor of the `Comment`. Otherwise, an exception is thrown. @@ -29,13 +29,13 @@ The `AddComment()` method of the `Comments` collection of a document creates a n **Example 2: Insert a Previously Created Comment** - + **Example 3** demonstrates how to use another overload of the `InsertComment()` method of `RadFlowDocumentEditor`. In this case, a string representing the text of the `Comment` and two inline elements are passed. The two inline elements specify the element before which the `CommentRangeStart` is added and the element after which the `CommentRangeEnd` is added. **Example 3: Insert a Comment Around a Run** - + ## Modifying a Comment @@ -53,7 +53,7 @@ The `Comment` class exposes several properties that allow you to customize infor **Example 4: Add Blocks to a Comment** - + ## See Also diff --git a/libraries/radwordsprocessing/model/content-controls/content-controls.md b/libraries/radwordsprocessing/model/content-controls/content-controls.md index 0911774d..8028ea7f 100644 --- a/libraries/radwordsprocessing/model/content-controls/content-controls.md +++ b/libraries/radwordsprocessing/model/content-controls/content-controls.md @@ -73,11 +73,11 @@ The `CheckBox` content control exposes two properties: `CheckedState` and `Unche **Example 1: Setting CheckBox Properties** - + You can visualize the toggle states with any characters specified in the properties. The following example demonstrates a complete code snippet for inserting toggled and untoggled checkboxes: - + ![Insert CheckBoxes](images/insert-checkboxes.gif) @@ -93,7 +93,7 @@ The `ComboBox` and `DropDownList` provide the user with options to choose from. **Example 2: Setting ComboBox Properties** - + ### Date @@ -107,7 +107,7 @@ The `Date` content control allows you to enter a date by using a calendar. The d **Example 3: Setting Date Properties** - + ### Text @@ -117,7 +117,7 @@ The `Text` content control allows you to enter plain text. The text content cont **Example 4: Setting Text Properties** - + ### RepeatingSection @@ -128,7 +128,7 @@ The `RepeatingSection` content control has the following properties: **Example 5: Setting RepeatingSection Properties** - + ## See Also diff --git a/libraries/radwordsprocessing/model/content-controls/working-with-content-controls.md b/libraries/radwordsprocessing/model/content-controls/working-with-content-controls.md index b1fa456c..5d9bdbbb 100644 --- a/libraries/radwordsprocessing/model/content-controls/working-with-content-controls.md +++ b/libraries/radwordsprocessing/model/content-controls/working-with-content-controls.md @@ -23,7 +23,7 @@ Retrieve content controls by calling `EnumerateChildrenOfType()` on a document e **Example 1: Get All Content Controls** - + This approach is useful when you need to find all controls before applying filtering, validation, or targeted updates. @@ -33,7 +33,7 @@ After you retrieve the controls, you can inspect their type and update the match **Example 2: Adding Items to a ComboBox or a DropDownList** - + Use the same pattern when you need to modify titles, tags, locking behavior, placeholder content, or other settings exposed by a specific content control type. @@ -47,7 +47,7 @@ Insert new content controls through the `InsertStructuredDocumentTag()` method o **Example 3: Inserting a Content Control Using Content Control Type** - + Use this overload when you know the control type and want to populate its content in a later step. @@ -55,11 +55,11 @@ Use this overload when you know the control type and want to populate its conten #### **Example 4: Inserting a Rich Text content control using content control properties** - + **Example 5: Inserting a CheckBox Content Control Using Content Control Properties** - + Use the overloads that accept properties when you want to configure the control during insertion instead of modifying it afterwards. @@ -67,7 +67,7 @@ Use the overloads that accept properties when you want to configure the control #### **Example 6: Remove a content control** - + Removing a content control is useful when you need to clean up document templates or replace one control type with another. @@ -81,7 +81,7 @@ Removing a content control is useful when you need to clean up document template ![Diagram showing valid and invalid ways to nest or place content controls](images/working-with-content-controls001.png) - + Use element-based insertion when you need exact placement in a document template or when you wrap an existing content range with a new control. diff --git a/libraries/radwordsprocessing/model/floatingimage.md b/libraries/radwordsprocessing/model/floatingimage.md index 974811cf..1e24095d 100644 --- a/libraries/radwordsprocessing/model/floatingimage.md +++ b/libraries/radwordsprocessing/model/floatingimage.md @@ -18,7 +18,7 @@ position: 9 **Example 1: Create a Floating Image and Insert It in a Paragraph** - + >tip The parent `Paragraph` must belong to the same document that is passed to the constructor of the `FloatingImage`. @@ -26,19 +26,19 @@ You can add an image at a specific index in the `Inlines` collection of a paragr **Example 2: Add a Floating Image to a Specific Position** - + You can also use the `AddFloatingImage()` method of the `Inlines` collection of a paragraph. The method creates a new `FloatingImage`, adds it to the paragraph, and returns it. **Example 3: Using the AddFloatingImage Method** - + You can also insert a `FloatingImage` element in a `RadFlowDocument` with [RadFlowDocumentEditor]({%slug radwordsprocessing-editing-radflowdocumenteditor%}). **Example 4: Insert a Floating Image Using RadFlowDocumentEditor** - + ## Modifying a FloatingImage diff --git a/libraries/radwordsprocessing/model/headers-footers.md b/libraries/radwordsprocessing/model/headers-footers.md index e2dcfc78..18323a0a 100644 --- a/libraries/radwordsprocessing/model/headers-footers.md +++ b/libraries/radwordsprocessing/model/headers-footers.md @@ -43,13 +43,13 @@ Use the following example to create a header: ### Example: Create a header - + Use the following example to create a footer: ### Example: Create a footer - + >note The `Parent` property of `Header` and `Footer` contains a reference to the `Section` from which the object is obtained. @@ -61,13 +61,13 @@ The following example gets the default header of a section: ### Example: Get the default header of a section - + The following example gets the default footer of a section: ### Example: Get the default footer of a section - + >note If a header or footer of a given type is not added, the corresponding property value is `null`. @@ -75,7 +75,7 @@ The following example adds different headers for odd and even pages: ### Example: Add headers for even and odd pages - + ### Linking Headers/Footers to Previous Section Headers/Footers diff --git a/libraries/radwordsprocessing/model/imageinline.md b/libraries/radwordsprocessing/model/imageinline.md index 59f39be8..55f735d4 100644 --- a/libraries/radwordsprocessing/model/imageinline.md +++ b/libraries/radwordsprocessing/model/imageinline.md @@ -35,7 +35,7 @@ With WordsProcessing, you can work with images from the following file formats: **Example 1: Create an image inline and insert it in a paragraph** - + >tip The parent `Paragraph` must belong to the same document that is passed to the constructor of the `ImageInline`. @@ -44,19 +44,19 @@ You can add an image at a specific index in the `Inlines` collection of a paragr **Example 2: Add an image inline to a specific position** - + You can also use the `AddImageInline()` method of the `Inlines` collection of a paragraph. The method creates a new `ImageInline`, adds it to the paragraph, and returns it. **Example 3: Using the AddImageInline() method** - + You can also insert an `ImageInline` element in a `RadFlowDocument` with [RadFlowDocumentEditor]({%slug radwordsprocessing-editing-radflowdocumenteditor%}). **Example 4: Insert an image inline using RadFlowDocumentEditor** - + ## Modifying an ImageInline diff --git a/libraries/radwordsprocessing/model/paragraph.md b/libraries/radwordsprocessing/model/paragraph.md index 9454194a..ac1ccefd 100644 --- a/libraries/radwordsprocessing/model/paragraph.md +++ b/libraries/radwordsprocessing/model/paragraph.md @@ -26,7 +26,7 @@ The code snippet from **Example 1** creates and inserts a `Paragraph` in a `Sect **Example 1: Insert paragraph in section** - + >tip The parent `BlockContainer` element (in this case, the section) must belong to the same document that is passed to the constructor of the `Paragraph`. @@ -34,19 +34,19 @@ You can add a paragraph at a specific index in the `Blocks` collection of a `Blo **Example 2: Insert a paragraph at a specific position of the Blocks collection** - + You can also use the `AddParagraph()` method of the `Blocks` collection of a `BlockContainer`. The method creates a new `Paragraph` instance, adds it to the container, and returns it. **Example 3: Create a new paragraph and add it to a section** - + You can also insert a new `Paragraph` in the document with the [RadFlowDocumentEditor]({%slug radwordsprocessing-editing-radflowdocumenteditor%}) class. **Example 4: Insert a paragraph using the RadFlowDocumentEditor** - + ## Modifying a Paragraph @@ -112,7 +112,7 @@ You can add inline elements to a `Paragraph` instance. **Example 5: Insert run in a paragraph** - + For more information about the `Run` element, refer to the [Run]({%slug radwordsprocessing-model-run%}) article. @@ -122,7 +122,7 @@ For more information about the `Run` element, refer to the [Run]({%slug radwords **Example 6: Insert image inline** - + For more information about the `ImageInline` element, refer to the [ImageInline]({%slug radwordsprocessing-model-imageinline%}) article. @@ -132,7 +132,7 @@ The code snippet from **Example 7** adds a floating image to an existing paragra **Example 7: Add floating image** - + For more information about the `FloatingImage` element, refer to the [FloatingImage]({%slug radwordsprocessing-model-floatingimage%}) article. @@ -143,7 +143,7 @@ For more information about the `FloatingImage` element, refer to the [FloatingIm **Example 8: Insert TabStop** - + You can refer to the [TabStop]({%slug radwordsprocessing-concepts-tabstop%}) article for more details about this element. @@ -153,7 +153,7 @@ You can refer to the [TabStop]({%slug radwordsprocessing-concepts-tabstop%}) art **Example 9: Setting Borders** - + ## See Also diff --git a/libraries/radwordsprocessing/model/permissionrange.md b/libraries/radwordsprocessing/model/permissionrange.md index 23eca450..2209f262 100644 --- a/libraries/radwordsprocessing/model/permissionrange.md +++ b/libraries/radwordsprocessing/model/permissionrange.md @@ -39,7 +39,7 @@ Creating a `PermissionRange` requires passing an instance of the `PermissionRang **Example 1: Add PermissionRange to paragraph** - + The paragraph must belong to the same document that is passed to the constructor of the `PermissionRange` object. Otherwise, an exception is thrown. @@ -50,7 +50,7 @@ You can also insert a `PermissionRange` in the document through [RadFlowDocument **Example 2: Insert PermissionRange for TableCell** - + ## Operating with Permission Ranges @@ -71,7 +71,7 @@ Including permission ranges in a document is not enough to protect them from edi **Example 3: Protect and unprotect document through RadFlowDocumentEditor** - + >The last call to the `Unprotect()` method in **Example 3** enforces protection of type `NoProtection` to the document. Protecting a document notifies the user that changes are not recommended, but stopping the protection is still possible. The `Unprotect(string password)` overload is provided for your convenience and returns a *Boolean* result of the action. @@ -82,7 +82,7 @@ Including permission ranges in a document is not enough to protect them from edi **Example 4: Enforce protection through RadFlowDocument** - + The settings provide several other modification options, including changing the algorithm used to protect the document with one of the predefined values in the `ProtectionAlgorithmNames` enumeration. diff --git a/libraries/radwordsprocessing/model/radflowdocument.md b/libraries/radwordsprocessing/model/radflowdocument.md index 4befda44..faafbfd3 100644 --- a/libraries/radwordsprocessing/model/radflowdocument.md +++ b/libraries/radwordsprocessing/model/radflowdocument.md @@ -18,7 +18,7 @@ The code from **Example 1** shows how you can create a new `RadFlowDocument`. **Example 1: Create RadFlowDocument** - + `RadFlowDocument` exposes the following properties to customize the way content is presented: @@ -45,7 +45,7 @@ You can create a `RadFlowDocument` from scratch and add Sections to it as follow **Example 2: Add a Section to a RadFlowDocument** - + The `Sections` property of the document is of type `SectionCollection` and allows you to add sections to the document. @@ -53,7 +53,7 @@ Alternatively, you can create a section by passing to its constructor the docume **Example 3: Create a section** - + ### Merge with Another Document @@ -61,7 +61,7 @@ You can merge a `RadFlowDocument` within another document by using the `Merge()` **Example 4: Merge documents** - + You can also specify the `MergeOptions` that control the merge operation: @@ -72,7 +72,7 @@ You can also specify the `MergeOptions` that control the merge operation: **Example 5: Merge documents using MergeOptions** - + ### Update Fields @@ -82,7 +82,7 @@ The snippet from **Example 6** shows how to update all fields in a document simu **Example 6: Update all fields in a document** - + ## See Also diff --git a/libraries/radwordsprocessing/model/run.md b/libraries/radwordsprocessing/model/run.md index 15ecc459..f5aa1a80 100644 --- a/libraries/radwordsprocessing/model/run.md +++ b/libraries/radwordsprocessing/model/run.md @@ -22,7 +22,7 @@ The code in **Example 1** creates a `Run` element and adds it to a [Paragraph]({ **Example 1: Create and add a run to a paragraph** - + >tip The parent `Paragraph` must belong to the same document that is passed to the constructor of the `Run`. @@ -30,19 +30,19 @@ You can add a run at a specific index in the `Inlines` collection of a paragraph **Example 2: Create and add a run at a specific index of a paragraph's Inlines collection** - + You can also use the `AddRun()` method of the `Inlines` collection of a paragraph. The method creates a new `Run` instance, adds it to the container, and returns it: **Example 3: Create and add a run to a paragraph** - + You can also insert text in the document with the [RadFlowDocumentEditor]({%slug radwordsprocessing-editing-radflowdocumenteditor%}) class: **Example 4: Insert a run using RadFlowDocumentEditor** - + ## Modifying a Run diff --git a/libraries/radwordsprocessing/model/section.md b/libraries/radwordsprocessing/model/section.md index 9b213a84..5d303325 100644 --- a/libraries/radwordsprocessing/model/section.md +++ b/libraries/radwordsprocessing/model/section.md @@ -22,14 +22,14 @@ You can use the code snippet from **Example 1** to create a `Section` element an **Example 1: Create a section and add it to a RadFlowDocument** - + You can also use the `AddSection()` method of the `Sections` collection of a document. The method creates a new `Section` element, adds it to the document, and returns it. **Example 2: Create a section and add it to a RadFlowDocument** - + ## Modifying a Section @@ -40,27 +40,27 @@ The `Section` exposes several properties that allow you to customize the layout **Example 3: Change margins of a section** - + * `PageOrientation`: Specifies whether the pages in the section are in `Portrait` or in `Landscape` orientation. This property determines the actual size of the paper to use on the printer and does not reflect the document visualization. To affect the `Section` appearance, change the `PageSize` and `PageMargin` properties, or use the [Rotate method](#rotating-a-section), which changes them according to the desired page orientation. **Example 4: Change orientation of a section** - + * `PageSize`: Specifies the size of the pages in the section. The width and height are in device independent pixels (1/96 inch). The `PaperTypeConverter` class and the [PaperTypes](https://docs.telerik.com/devtools/document-processing/api/Telerik.Windows.Documents.Model.PaperTypes.html) enumeration provide a convenient API and predefined sizes. **Example 5: Change page size of a section** - + * **Headers and Footers**: Each `Section` has three Headers and three Footers—**Default** (used all through the section), **First** (used on the first page of the section), and **Even** (used on even pages of the document). The three Headers are contained in the `Headers` class accessible through the `Section.Headers` property. The three Footers are contained in the `Footers` class accessible through the `Section.Footers` property. **Example 6** shows how to create a default Header. **Example 6: Create a header of a section** - + * `HeaderTopMargin`: Gets or sets the top margin of the header. The value is in device independent pixels (1/96 inch). @@ -102,7 +102,7 @@ The `Section` exposes several properties that allow you to customize the layout **Example 7: Add elements to a section** - + ### Rotating a Section @@ -111,7 +111,7 @@ You can rotate the `Section` to visualize its pages in Portrait or Landscape mod **Example 8: Rotate a section** - + ## See Also diff --git a/libraries/radwordsprocessing/model/table.md b/libraries/radwordsprocessing/model/table.md index b39e5a7c..aea69cdc 100644 --- a/libraries/radwordsprocessing/model/table.md +++ b/libraries/radwordsprocessing/model/table.md @@ -25,7 +25,7 @@ The code snippet from **Example 1** creates and inserts a `Table` to a `Section` **Example 1: Create and insert a table to a section** - + >tip The parent `BlockContainer` element (in this case, the `Section`) must belong to the same document that is passed to the constructor of the `Table`. @@ -33,19 +33,19 @@ You can add a table at a specific index in the `Blocks` collection of a `BlockCo **Example 2: Insert a table at a specific index** - + You can also use the `AddTable()` method of the `Blocks` collection of a `BlockContainer`. The method creates a new `Table` instance, adds it to the container, and returns it. **Example 3: Insert a new table to a container** - + You can also insert a new `Table` in the document with the [RadFlowDocumentEditor]({%slug radwordsprocessing-editing-radflowdocumenteditor%}) class. **Example 4: Insert a table using RadFlowDocumentEditor** - + ## Modifying a Table @@ -99,7 +99,7 @@ The `Table` element exposes several properties that allow you to customize the l **Example 5: Create a table with content and add it to a RadFlowDocument** - + ## See Also diff --git a/libraries/radwordsprocessing/model/tablerow.md b/libraries/radwordsprocessing/model/tablerow.md index 288c78d6..fc208123 100644 --- a/libraries/radwordsprocessing/model/tablerow.md +++ b/libraries/radwordsprocessing/model/tablerow.md @@ -23,13 +23,13 @@ You can use the code snippet from **Example 1** to create a `TableRow` and add i **Example 1: Create a TableRow and add it to a table** - + To create a `TableRow` and add it in the document tree at the same time, you can use the `AddTableRow()` method of the [Rows](https://docs.telerik.com/devtools/document-processing/api/Telerik.Windows.Documents.Flow.Model.Table.html#collapsible-Telerik_Windows_Documents_Flow_Model_Table_Rows) collection property of the table. **Example 2: Create a TableRow and add it to a table at the same time** - + ## Modifying a TableRow @@ -61,7 +61,7 @@ The `TableRow` element exposes several properties that allow you to customize it **Example 3: Add TableCell objects to a TableRow** - + ## See Also diff --git a/libraries/radziplibrary/features/compress-stream.md b/libraries/radziplibrary/features/compress-stream.md index f9e6da22..1332fac9 100644 --- a/libraries/radziplibrary/features/compress-stream.md +++ b/libraries/radziplibrary/features/compress-stream.md @@ -48,13 +48,13 @@ You can create a compressed stream by initializing a new instance of the `Compre **Example 1: Write to a compressed stream** - + If you want to compress a specific stream (`inputStream`), you need to copy it to the compressed stream that you created. **Example 2: Write a stream to a compressed stream** - + ## Decompressing a Stream @@ -62,7 +62,7 @@ Decompressing a stream follows the same pattern as compressing it. Create a new **Example 3: Decompress a stream** - + ## CompressedStream Properties diff --git a/libraries/radziplibrary/features/compression-settings.md b/libraries/radziplibrary/features/compression-settings.md index 59507fbd..e738e6b1 100644 --- a/libraries/radziplibrary/features/compression-settings.md +++ b/libraries/radziplibrary/features/compression-settings.md @@ -26,7 +26,7 @@ The `DeflateSettings` class exposes the following configurable parameters: **Example 1: Create DeflateSettings** - + ## LZMA Settings @@ -50,7 +50,7 @@ The configurable parameters of the `LzmaSettings` class are as follows: **Example 2: Create LzmaSettings** - + ## Store Settings @@ -58,7 +58,7 @@ Store settings store the data without applying any compression. **Example 3: Create StoreSettings** - + ## See Also diff --git a/libraries/radziplibrary/features/protect-ziparchive.md b/libraries/radziplibrary/features/protect-ziparchive.md index 1b7c4313..56671ff2 100644 --- a/libraries/radziplibrary/features/protect-ziparchive.md +++ b/libraries/radziplibrary/features/protect-ziparchive.md @@ -32,7 +32,7 @@ To create a password-protected ZIP archive, pass a `PasswordEncryptionSettings` **Example 1: Create a password-protected ZIP archive** - + >tip Always dispose of the ZIP archive object when all operations are completed. Declare and instantiate the ZIP archive object in a `using` statement. If that is not possible, call the `Dispose()` method when you complete all operations. @@ -42,7 +42,7 @@ To open a password-protected `ZipArchive`, pass a `DefaultEncryptionSettings` ob **Example 2: Open and read a password-protected ZIP archive** - + >tip Always dispose of the ZIP archive object when all operations are completed. Declare and instantiate the ZIP archive object in a `using` statement. If that is not possible, call the `Dispose()` method when you complete all operations. diff --git a/libraries/radziplibrary/features/update-ziparchive.md b/libraries/radziplibrary/features/update-ziparchive.md index 1be9debf..e04e1229 100644 --- a/libraries/radziplibrary/features/update-ziparchive.md +++ b/libraries/radziplibrary/features/update-ziparchive.md @@ -18,7 +18,7 @@ The code snippet from **Example 1** opens a ZIP archive in update mode using the **Example 1: Open for update** - + ## Add Entry @@ -36,7 +36,7 @@ To add a new entry into the ZIP archive, perform the following steps: **Example 2: Add entry** - + ## Delete Entry @@ -46,7 +46,7 @@ The `ZipArchive` class provides a `GetEntry()` method, which allows you access t **Example 3: Delete entry** - + ## Update Entry @@ -62,7 +62,7 @@ To update an existing entry in the ZIP archive, perform the following steps: **Example 4: Update entry** - + ## Copy Entry diff --git a/libraries/radziplibrary/features/ziparchive-entry.md b/libraries/radziplibrary/features/ziparchive-entry.md index ebfedfb9..47647025 100644 --- a/libraries/radziplibrary/features/ziparchive-entry.md +++ b/libraries/radziplibrary/features/ziparchive-entry.md @@ -32,27 +32,27 @@ The following table describes the properties of `ZipArchiveEntry`: **Example 1: Get the compressed length of an entry** - + **Example 2: Set external attributes of an entry** - + **Example 3: Get the relative path of an entry** - + **Example 4: Set the last write time of an entry** - + **Example 5: Get the length of an entry** - + **Example 6: Get the name of an entry** - + ### Methods @@ -80,7 +80,7 @@ Retrieves a wrapper for the specified entry in the ZIP archive. **Example 7: Get ZipArchiveEntry** - + ### Create ZipArchiveEntry @@ -88,7 +88,7 @@ Creates an empty entry that has the specified path and entry name in the ZIP arc **Example 8: Create ZipArchiveEntry** - + ### Extract ZipArchiveEntry @@ -96,7 +96,7 @@ Extracts an entry to a specific folder or directory. **Example 9: Extract a ZipArchiveEntry to a folder** - + >tip You can also achieve this by using the [Zip Extensions]({%slug radziplibrary-zipextensions%}) `ExtractToFile` method. @@ -110,17 +110,17 @@ The following example includes all the properties discussed in the previous sect **Example 10: Complete example** - + ### Working with Folders and Directories **Example 11: Create folders and directories** - + **Example 12: Open files in folders and directories** - + ## See Also diff --git a/libraries/radziplibrary/gettingstarted.md b/libraries/radziplibrary/gettingstarted.md index 600db8f9..f82b28e0 100644 --- a/libraries/radziplibrary/gettingstarted.md +++ b/libraries/radziplibrary/gettingstarted.md @@ -32,7 +32,7 @@ The following code snippet shows how to open an existing ZIP archive with the `Z **Example 1: Open Archive** - + The `archive` variable holds the compressed files in the selected ZIP. You can access these files through the `ZipArchive.Entries` property. It holds a collection of [ZipArchiveEntry]({%slug radziplibrary-update-ziparchive%}) elements that describe the archived files. Use these elements to get the name of the compressed file, its uncompressed and compressed size, and other file attributes. @@ -42,7 +42,7 @@ The `archive` variable holds the compressed files in the selected ZIP. You can a **Example 2: Create Archive** - + >tip If you use `StreamWriter` to write content to the stream, call the `Flush()` method to flush the data to the stream. @@ -52,7 +52,7 @@ The constructor of `ZipArchive` lets you set whether to keep the stream associat **Example 3: Create Archive in a MemoryStream** - + For more examples, go to the [Developer Focused Examples]({%slug radziplibrary-sdk-examples%}) section of the library.
PDF Accessibility Checker toolLogical Structure