Skip to content

Commit 72ec487

Browse files
Merge pull request #616 from telerik/dess-pdf-cross-platform
Dess pdf cross platform
2 parents f2ae234 + bda7e05 commit 72ec487

File tree

6 files changed

+30
-16
lines changed

6 files changed

+30
-16
lines changed

_config.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -381,6 +381,7 @@ defaults:
381381
mindotnetversion: "8"
382382
maxdotnetversion: "9"
383383
dotnetversions: ".NET 8 and .NET 9"
384+
skiasharpversion: "3.116.1"
384385

385386
# Feedback Form Product Code
386387
productCode: TDP
Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,36 @@
11
---
22
title: Fonts
3+
description: Learn how to manage and embed fonts in PDF documents using Telerik RadPdfProcessing for cross-platform .NET applications.
34
page_title: Fonts
45
slug: radpdfprocessing-cross-platform-fonts
5-
tags: cross,platform
6+
tags: cross, platform, font, blazor, core, xamarin, winui, maui, net, standard, linux, ios
67
platforms: blazor, core, xamarin, winui, maui
78
published: True
89
position: 1
910
---
1011

1112
# Fonts
1213

13-
Unlike the .NET Framework one, RadPdfProcessing’s .NET Standard version does not offer a default mechanism to read fonts. The **FixedExtensibilityManager** class is exposed to help implement this functionality.
14+
Unlike the .NET Framework and .NET (Target OS: *Windows*) version, the RadPdfProcessing's **.NET Standard** and **.NET (Target OS: *None*)** version does not offer a default mechanism for reading fonts. The **FixedExtensibilityManager** class is exposed to help implement this functionality.
1415

1516
## Setting and Exporting Fonts
1617

17-
PdfProcessing needs to have access to the font data so that it can read it and add it to the PDF file. That is why, to allow the library to create and use fonts, you will need to provide an implementation of the **FontsProviderBase** abstract class and set this implementation to the <u>FontsProvider</u> property of the **FixedExtensibilityManager**.
18+
RadPdfProcessing needs access to the font data, so that it can read it and add it to the PDF file. That is why, to allow the library to create and use fonts, you will need to provide an implementation of the **FontsProviderBase** abstract class and set this implementation to the **<u>FontsProvider</u>** property of the **FixedExtensibilityManager**.
1819

1920
You can find a detailed **FixedExtensibilityManager** and **FontsProvider** descripiton and implementaion in the [How to implement a FontsProvider]({%slug pdfprocessing-implement-fontsprovider%}) article.
2021

21-
>important If the FontsProvider property is not set, a default font will be used when exporting the document.
22+
>caution If the FontsProvider property is not set, a default font will be used when exporting the document in cross-platform applications.
23+
24+
>important When converting a document (e.g. DOCX, HTML, etc.) to PDF format in **.NET Standard** and **.NET (Target OS: *None*)** projects, fonts from the original document are not automatically maintained in the PDF unless you explicitly provide the font data. This is especially important when the original document uses non-standard or custom fonts. The PdfProcessing library requires access to the actual font files to embed them in the PDF. If font data is not provided, the PDF model will substitute the missing fonts with standard ones, resulting in a mismatch between the original document and the exported PDF file.
2225
2326
## See Also
2427

2528
* [Standard Fonts]({%slug radpdfprocessing-concepts-fonts%})
26-
* [Cross-Platform Support]({%slug radpdfprocessing-cross-platform%})
29+
* [Cross-Platform Support]({%slug radpdfprocessing-cross-platform%})
30+
* [Images]({%slug radpdfprocessing-cross-platform-images%})
2731
* [Inserting Special Symbols in PDF using RadPdfProcessing]({%slug inserting-special-symbols-pdf-radpdfprocessing%})
2832
* [How to Eliminate Formatting Issues when Exporting XLSX to PDF Format]({%slug exporting-xlsx-to-pdf-formatting-issues%})
2933
* [Resolving Missing Content in Exported PDF Files]({%slug missing-content-word-to-pdf-radwordsprocessing%})
3034
* [Validating Fonts when Using Telerik Document Processing]({%slug validating-fonts-pdf-document-processing%})
3135

36+

libraries/radpdfprocessing/cross-platform/images.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
---
22
title: Images
3+
description: Discover how to work with images in Telerik RadPdfProcessing for cross-platform .NET applications.
34
page_title: Images
45
slug: radpdfprocessing-cross-platform-images
5-
tags: cross,platform
6+
tags: cross, platform, image, blazor, core, xamarin, winui, maui, net, standard, linux, ios
67
platforms: blazor, core, xamarin, winui, maui
78
published: True
89
position: 2
@@ -26,7 +27,7 @@ To export images different than Jpeg and Jpeg2000 or ImageQuality different than
2627
|Assembly/ NuGet package|Description|
2728
|----|----|
2829
|**Telerik.Documents.ImageUtils**|This assembly is currently not available in UI for Xamarin.|
29-
|**SkiaSharp.NativeAssets.*** (version 2.88.8)|May differ according to the used platform. For **Linux** use <b>SkiaSharp.NativeAssets.Linux.NoDependencies|
30+
|**SkiaSharp.NativeAssets.*** (version {{site.skiasharpversion}})|May differ according to the used platform. For **Linux** use <b>SkiaSharp.NativeAssets.Linux.NoDependencies|
3031
|**SkiaSharp.Views.Blazor** and **wasm-tools**|For Blazor Web Assembly.|
3132

3233
>important With the [R2 2023 changes](https://docs.telerik.com/devtools/document-processing/libraries/radpdfprocessing/changes-and-backward-compatibility/backward-compatibility#whats-different-in-2023-r2) SkiaSharp replaced ImageSharp as the required dependency.
@@ -118,3 +119,7 @@ The following example depends on the [Magick.NET](https://www.nuget.org/packages
118119

119120
>note A complete SDK example of a custom implementation JpegImageConverterBase is available on our [GitHub repository](https://github.com/telerik/document-processing-sdk/tree/master/PdfProcessing/CustomJpegImageConverter).
120121
122+
## See Also
123+
124+
* [Cross-Platform Support]({%slug radpdfprocessing-cross-platform%})
125+
* [Fonts]({%slug radpdfprocessing-cross-platform-fonts%})

libraries/radpdfprocessing/cross-platform/overview.md

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,29 @@
11
---
22
title: Overview
3+
description: Learn how to use Telerik RadPdfProcessing for cross-platform PDF generation, editing, and digital signing in .NET applications.
34
page_title: Overview
45
slug: radpdfprocessing-cross-platform
5-
tags: cross,platform
6+
tags: cross, platform, font, image, blazor, core, xamarin, winui, maui, net, standard, linux, ios
67
platforms: blazor, core, xamarin, winui, maui
78
published: True
89
position: 0
910
---
1011

11-
1212
# Cross-Platform Support
1313

14-
**Telerik Document Processing** comes with **.NET Core** & **.NET Standard** support. There is a set of binaries built against the .NET Core & .NET Standard which you can reference in an application.
14+
The [Telerik Document Processing]({%slug introduction%}) libraries are compatible across different .NET implementations, including .NET Standard, {{site.dotnetversions}} (Target OS: *None*), and newer versions. There is a set of binaries built against the .NET Standard version which you can reference in an application.
1515

16-
>note The binaries compatible with .NET Standard are distributed with the packages targeting .NET Standard and .NET Core. You can obtain the assemblies through the **UI for ASP.NET Core**, **UI for Blazor**, **UI for Xamarin**, and **UI for WinUI** suites. There are **NuGet** packages as well that you can access if you have a license for one of the above mentioned suites.
16+
>note The binaries compatible with .NET Standard, {{site.dotnetversions}} (Target OS: *None*) are distributed with the packages targeting .NET Standard. You can obtain the assemblies through the **UI for ASP.NET Core**, **UI for Blazor**, **UI for Xamarin**, and **UI for WinUI** suites. There are **NuGet** packages as well that you can access if you have a license for one of the above mentioned suites.
1717
1818
## Assembly References
1919

20-
In order to use the model of the **RadPdfProcessing** library in your cross-platform project, you need to add references to the following **.Net Standard** assemblies:
20+
In order to use the model of the **RadPdfProcessing** library in your cross-platform project, you need to add references to the following **.Net Standard** assemblies/ NuGet packages:
2121

2222
* **Telerik.Documents.Core.dll**
2323
* **Telerik.Documents.Fixed.dll**
2424
* ~~Telerik.Zip.dll~~*
2525

26-
>note *As of **Q2 2025** the Zip Library will no longer be used as an internal dependency in the rest of the Document Processing Libraries - PdfProcessing, WordsProcessing, SpreadProcessing, SpreadStreamProcessing. It will be replaced by the System.IO.Compression. We will continue to ship the Telerik Zip Library as a standalone library so clients can still use it separately.
26+
>note As of [Q2 2025](https://www.telerik.com/support/whats-new/telerik-document-processing/release-history/progress-telerik-document-processing-2025-2-520-changelog) the Zip Library will no longer be used as an internal dependency in the rest of the Document Processing Libraries - PdfProcessing, WordsProcessing, SpreadProcessing, SpreadStreamProcessing. It will be replaced by the System.IO.Compression. We will continue to ship the Telerik Zip Library as a standalone library so clients can still use it separately.
2727
2828
To export images different than Jpeg and Jpeg2000 or ImageQuality different than High you will need to add references to the following **.Net Standard** assembly:
2929

@@ -34,7 +34,7 @@ To export images different than Jpeg and Jpeg2000 or ImageQuality different than
3434
3535
## Fonts and Images
3636

37-
The .NET Framework version of PdfProcessing comes with out-of-the-box functionality to read fonts, convert images, and scale their quality. The .NET Standard specification, however, does not specify APIs to provide such functionalities built in the library.
37+
The .NET Framework and .NET (Target OS: *Windows*) versions of PdfProcessing comes with out-of-the-box functionality to read fonts, convert images, and scale their quality. The .NET Standard specification, however, does not specify APIs to provide such functionalities built in the library.
3838
In order to provide the necessary extensibility mechanisms for working with fonts and images, the .NET Standard version of **RadPdfProcessing** exposes the **FixedExtensibilityManager** class.
3939
More information, including code samples on how to configure the **FixedExtensibilityManager** is available in the [**Fonts**]({%slug radpdfprocessing-cross-platform-fonts%}) and [**Images**]({%slug radpdfprocessing-cross-platform-images%}) articles respectively.
4040

@@ -44,7 +44,9 @@ More information, including code samples on how to configure the **FixedExtensib
4444
* [RadFixedPage]({%slug radpdfprocessing-model-radfixedpage%})
4545
* [FixedContentEditor]({%slug radpdfprocessing-editing-fixedcontenteditor%})
4646
* [TextFragment]({%slug radpdfprocessing-model-textfragment%})
47-
47+
* [What Versions of Document Processing Libraries are Distributed with the Telerik Products](%slug distribute-telerik-document-processing-libraries-net-versions%)
48+
* [Fonts]({%slug radpdfprocessing-cross-platform-fonts%})
49+
* [Images]({%slug radpdfprocessing-cross-platform-images%})
4850

4951

5052

libraries/radpdfprocessing/features/handling-document-exceptions.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ As of **Q1 2025** the [PdfExportSettings]({%slug radpdfprocessing-formats-and-co
7272
| __NotSupportedStreamTypeException__| Represents an exception for a stream type which is not supported. A stream is not supported if it does not support read or seek. This exception has a SupportSeek and SupportRead properties which specify whether the stream supports them.|
7373
| __NotSupportedXObjectTypeException__| Represents an exception for a document with an XObject type which is not supported.|
7474
|**DuplicatedJavaScriptNameException**|Represents an exception for JavaScript with a duplicated name.|
75+
|**NotSupportedImageFormatException**|Represents an exception thrown when attempting to use an image format that is not supported by the library.|
7576
|**InvalidAnnotationException**|Represents an exception for an annotation which is not valid. *(Introduced in Q1 2025)*|
7677
|**NotSupportedAnnotationException**|Represents an exception for an annotation which is not supported.*(Introduced in Q1 2025)*|
7778
|**InvalidImageDataException**|Represents an exception for importing an invalid image data.*(Introduced in Q1 2025)*|

libraries/radpdfprocessing/formats-and-conversion/ocr/prerequisites.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ In order to use the **OcrFormatProvider** you need to add the following assembli
7979
<tr>
8080
<td><b>-</b></td>
8181
<td>
82-
<b>SkiaSharp.NativeAssets.*</b> (version 2.88.8)
82+
<b>SkiaSharp.NativeAssets.*</b> (version {{site.skiasharpversion}})
8383
<br>
8484
<sub><i>May differ according to the used platform. For <b>Linux</b> (since <b>Q2 2025</b>) use <b>SkiaSharp.NativeAssets.Linux.NoDependencies</b> and execute the <a href="#linux-specific-steps">required commands.</a></i></sub>
8585
</tr>

0 commit comments

Comments
 (0)