Skip to content

Commit aadd278

Browse files
authored
Merge branch 'hotfix/hotfix-v33.1.44' into Task(218028);SERPSTAT-Issue-fixes-Help-Domain-Redirect-Error-Doc-processing-4
2 parents 7325944 + 73a2d5d commit aadd278

5 files changed

Lines changed: 78 additions & 33 deletions

File tree

Document-Processing-toc.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7818,7 +7818,7 @@
78187818
Common
78197819
<ul>
78207820
<li>
7821-
<a href="/document-processing/common/font-manager/font-manager">Font Manager</a>
7821+
<a href="/document-processing/common/font-manager">Font Manager</a>
78227822
</li>
78237823
</ul>
78247824
</li>

Document-Processing/Common/Font-Manager/font-manager.md renamed to Document-Processing/Common/font-manager.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,3 +196,8 @@ A: Yes, FontManager is designed for multi-threaded environments and allows safe
196196
**Q: Will FontManager affect my existing document processing code?**
197197

198198
A: No, FontManager works transparently in the background. Your existing code will automatically benefit from improved memory management without modifications.
199+
200+
**Q: Does FontManager retain or cache fonts embedded in input documents or substituted fonts?**
201+
202+
A: No, Syncfusion Document Processing libraries intentionally do **not** retain or cache private fonts — including fonts embedded within input documents or font streams added through font substitution events. This ensures that sensitive or proprietary font data from one document is never persisted in the shared font cache or made accessible to other operations or threads.
203+
Only fonts loaded from the system's font directories are managed by the `FontManager` cache.

Document-Processing/PDF/PDF-Library/javascript/DigitalSignature.md

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,12 @@ let field: PdfSignatureField = new PdfSignatureField(page, 'Signature', {
3232
});
3333
// Create a new signature using PFX data and private key
3434
let sign: PdfSignature = PdfSignature.create(
35+
certData,
36+
password,
3537
{
3638
cryptographicStandard: CryptographicStandard.cms,
3739
digestAlgorithm: DigestAlgorithm.sha256
38-
},
39-
certData,
40-
password
40+
}
4141
);
4242
// Set the signature to the field
4343
field.setSignature(sign);
@@ -60,7 +60,7 @@ var form = document.form;
6060
// Create a new signature field
6161
var field = new ej.pdf.PdfSignatureField(page, 'Signature', {x: 10, y: 10, width: 100, height: 50});
6262
// Create a new signature using PFX data and private key
63-
var sign = ej.pdf.PdfSignature.create({cryptographicStandard: ej.pdf.CryptographicStandard.cms, digestAlgorithm: ej.pdf.DigestAlgorithm.sha256}, certData, password);
63+
var sign = ej.pdf.PdfSignature.create(certData, password, {cryptographicStandard: ej.pdf.CryptographicStandard.cms, digestAlgorithm: ej.pdf.DigestAlgorithm.sha256});
6464
// Set the signature to the field
6565
field.setSignature(sign);
6666
// Add the field into PDF form
@@ -94,12 +94,12 @@ let field: PdfSignatureField = new PdfSignatureField(page, 'Signature', {
9494
});
9595
// Create a new signature using PFX data and private key
9696
let sign: PdfSignature = PdfSignature.create(
97+
certData,
98+
password,
9799
{
98100
cryptographicStandard: CryptographicStandard.cms,
99101
digestAlgorithm: DigestAlgorithm.sha256
100-
},
101-
certData,
102-
password
102+
}
103103
);
104104
// Set the signature to the field
105105
field.setSignature(sign);
@@ -128,12 +128,12 @@ var field = new ej.pdf.PdfSignatureField(page, 'Signature', {
128128
});
129129
// Create a new signature using PFX data and private key
130130
var sign = ej.pdf.PdfSignature.create(
131+
certData,
132+
password,
131133
{
132134
cryptographicStandard: ej.pdf.CryptographicStandard.cms,
133135
digestAlgorithm: ej.pdf.DigestAlgorithm.sha256
134-
},
135-
certData,
136-
password
136+
}
137137
);
138138
// Set the signature to the field
139139
field.setSignature(sign);
@@ -875,12 +875,12 @@ let externalSignatureCallback = (
875875
};
876876
// Create a new signature using external signing with public certificate collection
877877
let signature: PdfSignature = PdfSignature.create(
878+
externalSignatureCallback,
879+
publicCertificates,
878880
{
879881
cryptographicStandard: CryptographicStandard.cms,
880882
algorithm: DigestAlgorithm.sha256
881-
},
882-
externalSignatureCallback,
883-
publicCertificates
883+
}
884884
);
885885
// Set the signature to the field
886886
field.setSignature(signature);
@@ -921,12 +921,12 @@ var externalSignatureCallback = function (data, options) {
921921
};
922922
// Create a new signature using external signing with public certificate collection
923923
var signature = ej.pdf.PdfSignature.create(
924+
externalSignatureCallback,
925+
publicCertificates,
924926
{
925927
cryptographicStandard: ej.pdf.CryptographicStandard.cms,
926928
algorithm: ej.pdf.DigestAlgorithm.sha256
927-
},
928-
externalSignatureCallback,
929-
publicCertificates
929+
}
930930
);
931931
// Set the signature to the field
932932
field.setSignature(signature);

Document-Processing/PDF/PDF-Library/javascript/Split-Documents.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ document.splitEvent = documentSplitEvent;
2626
document.split();
2727
// Event to invoke while splitting PDF document data
2828
function documentSplitEvent(sender: PdfDocument, args: PdfDocumentSplitEventArgs): void {
29-
Save.save('output_' + args.splitIndex + '.pdf', new Blob([args.pdfData], { type: 'application/pdf' }));
29+
Save.save('output_' + args.index + '.pdf', new Blob([args.pdfData], { type: 'application/pdf' }));
3030
}
3131
// Destroy the document
3232
document.destroy();
@@ -41,7 +41,7 @@ document.splitEvent = documentSplitEvent;
4141
document.split();
4242
// Event to invoke while splitting PDF document data
4343
function documentSplitEvent(sender, args): void {
44-
Save.save('output_' + args.splitIndex + '.pdf', new Blob([args.pdfData], { type: 'application/pdf' }));
44+
Save.save('output_' + args.index + '.pdf', new Blob([args.pdfData], { type: 'application/pdf' }));
4545
}
4646
// Destroy the document
4747
document.destroy();
@@ -65,7 +65,7 @@ document.splitEvent = documentSplitEvent;
6565
document.splitByPageRanges([[0, 4], [5, 9]]);
6666
// Event to invoke while splitting PDF document data
6767
function documentSplitEvent(sender: PdfDocument, args: PdfDocumentSplitEventArgs): void {
68-
Save.save('output_' + args.splitIndex + '.pdf', new Blob([args.pdfData], { type: 'application/pdf' }));
68+
Save.save('output_' + args.index + '.pdf', new Blob([args.pdfData], { type: 'application/pdf' }));
6969
}
7070
// Destroy the document
7171
document.destroy();
@@ -80,7 +80,7 @@ document.splitEvent = documentSplitEvent;
8080
document.splitByPageRanges([[0, 4], [5, 9]]);
8181
// Event to invoke while splitting PDF document data
8282
function documentSplitEvent(sender, args): void {
83-
Save.save('output_' + args.splitIndex + '.pdf', new Blob([args.pdfData], { type: 'application/pdf' }));
83+
Save.save('output_' + args.index + '.pdf', new Blob([args.pdfData], { type: 'application/pdf' }));
8484
}
8585
// Destroy the document
8686
document.destroy();
@@ -104,7 +104,7 @@ document.splitEvent = documentSplitEvent;
104104
document.splitByFixedNumber(1);
105105
// Event to invoke while splitting PDF document data
106106
function documentSplitEvent(sender: PdfDocument, args: PdfDocumentSplitEventArgs): void {
107-
Save.save('output_' + args.splitIndex + '.pdf', new Blob([args.pdfData], { type: 'application/pdf' }));
107+
Save.save('output_' + args.index + '.pdf', new Blob([args.pdfData], { type: 'application/pdf' }));
108108
}
109109
// Destroy the document
110110
document.destroy();
@@ -119,7 +119,7 @@ document.splitEvent = documentSplitEvent;
119119
document.splitByFixedNumber(1);
120120
// Event to invoke while splitting PDF document data
121121
function documentSplitEvent(sender, args): void {
122-
Save.save('output_' + args.splitIndex + '.pdf', new Blob([args.pdfData], { type: 'application/pdf' }));
122+
Save.save('output_' + args.index + '.pdf', new Blob([args.pdfData], { type: 'application/pdf' }));
123123
}
124124
// Destroy the document
125125
document.destroy();

Document-Processing/Skills/document-sdk.md

Lines changed: 50 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,52 @@ This guide introduces **Syncfusion Document SDK Skills**, a knowledge package th
1313

1414
Syncfusion<sup style="font-size:70%">&reg;</sup> Document SDK Skills eliminate common issues with generic AI suggestions by grounding the assistant in accurate Syncfusion<sup style="font-size:70%">&reg;</sup> Document SDK library APIs, document processing patterns, and platform-specific configuration for the following libraries:
1515

16-
| Document Processing Libraries | Skills |
17-
|---|---|
18-
| [Word (DocIO)](https://help.syncfusion.com/document-processing/word/word-library/overview) | [syncfusion-dotnet-word](https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-dotnet-word) <br> [syncfusion-java-word](https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-java-word) |
19-
| [PDF](https://help.syncfusion.com/document-processing/pdf/pdf-library/overview) | [syncfusion-dotnet-pdf](https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-dotnet-pdf) <br> [syncfusion-dotnet-pdf-to-image](https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-dotnet-pdf-to-image) <br> [syncfusion-flutter-pdf](https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-flutter-pdf) <br> [syncfusion-javascript-pdf](https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-javascript-pdf) |
20-
| [Excel (XlsIO)](https://help.syncfusion.com/document-processing/excel/excel-library/overview) | [syncfusion-dotnet-excel](https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-dotnet-excel) <br> [syncfusion-flutter-excel](https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-flutter-excel) |
21-
| [PowerPoint (Presentation)](https://help.syncfusion.com/document-processing/powerpoint/powerpoint-library/overview) | [syncfusion-dotnet-powerpoint](https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-dotnet-powerpoint) |
22-
| [Markdown](https://help.syncfusion.com/document-processing/word/word-library/net/convert-markdown-to-word-document-in-csharp) | [syncfusion-dotnet-markdown](https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-dotnet-markdown) |
23-
| [Smart Data Extraction](https://help.syncfusion.com/document-processing/data-extraction/overview) | [syncfusion-dotnet-smart-data-extraction](https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-dotnet-smart-data-extraction) |
16+
<table>
17+
<thead>
18+
<tr>
19+
<th>Document Processing Libraries</th>
20+
<th>Skills</th>
21+
</tr>
22+
</thead>
23+
<tbody>
24+
<tr>
25+
<td><a href="https://help.syncfusion.com/document-processing/word/word-library/overview">Word (DocIO)</a></td>
26+
<td>
27+
<a href="https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-dotnet-word">syncfusion-dotnet-word</a><br>
28+
<a href="https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-java-word">syncfusion-java-word</a>
29+
</td>
30+
</tr>
31+
<tr>
32+
<td><a href="https://help.syncfusion.com/document-processing/pdf/pdf-library/overview">PDF</a></td>
33+
<td>
34+
<a href="https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-dotnet-pdf">syncfusion-dotnet-pdf</a><br>
35+
<a href="https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-dotnet-pdf-to-image">syncfusion-dotnet-pdf-to-image</a><br>
36+
<a href="https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-flutter-pdf">syncfusion-flutter-pdf</a><br>
37+
<a href="https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-javascript-pdf">syncfusion-javascript-pdf</a>
38+
</td>
39+
</tr>
40+
<tr>
41+
<td><a href="https://help.syncfusion.com/document-processing/excel/excel-library/overview">Excel (XlsIO)</a></td>
42+
<td>
43+
<a href="https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-dotnet-excel">syncfusion-dotnet-excel</a><br>
44+
<a href="https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-flutter-excel">syncfusion-flutter-excel</a>
45+
</td>
46+
</tr>
47+
<tr>
48+
<td><a href="https://help.syncfusion.com/document-processing/powerpoint/powerpoint-library/overview">PowerPoint (Presentation)</a></td>
49+
<td><a href="https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-dotnet-powerpoint">syncfusion-dotnet-powerpoint</a></td>
50+
</tr>
51+
<tr>
52+
<td><a href="https://help.syncfusion.com/document-processing/word/word-library/net/convert-markdown-to-word-document-in-csharp">Markdown</a></td>
53+
<td><a href="https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-dotnet-markdown">syncfusion-dotnet-markdown</a></td>
54+
</tr>
55+
<tr>
56+
<td><a href="https://help.syncfusion.com/document-processing/data-extraction/overview">Smart Data Extraction</a></td>
57+
<td><a href="https://github.com/syncfusion/document-sdk-skills/tree/master/skills/syncfusion-dotnet-smart-data-extraction">syncfusion-dotnet-smart-data-extraction</a></td>
58+
</tr>
59+
</tbody>
60+
</table>
61+
2462
## Prerequisites
2563

2664
Before installing Syncfusion<sup style="font-size:70%">&reg;</sup> Document SDK Skills, ensure the following tools are available on your machine:
@@ -32,7 +70,7 @@ Before installing Syncfusion<sup style="font-size:70%">&reg;</sup> Document SDK
3270

3371
## Installation
3472

35-
Choose one of the following commands to install [Syncfusion<sup style="font-size:70%">&reg;</sup> Document SDK Skills](https://github.com/syncfusion/document-sdk-skills) based on your preference. You can also explore Syncfusion<sup style="font-size:70%">&reg;</sup> skills from the [marketplace](https://skills.sh/syncfusion/).
73+
Use one of the following commands to install [Syncfusion<sup style="font-size:70%">&reg;</sup> Document SDK Skills](https://github.com/syncfusion/document-sdk-skills) based on your preference. You can also explore Syncfusion<sup style="font-size:70%">&reg;</sup> skills from the [marketplace](https://skills.sh/syncfusion/).
3674

3775
To install all document SDK skills at once, use the following command:
3876

@@ -141,7 +179,7 @@ To learn more about the Skills CLI, refer [here](https://skills.sh/docs).
141179
- Executes the script using dotnet script and generates the output document.
142180
- Performs cleanup by deleting the temporary `.csx` script.
143181

144-
3. **Register licensing key** Configuring the Syncfusion<sup style="font-size:70%">&reg;</sup> license key from `SyncfusionLicense.txt` or the `SYNCFUSION_LICENSE_KEY` environment variable.
182+
3. **Register licensing key** Configuring the Syncfusion<sup style="font-size:70%">&reg;</sup> license key from `SyncfusionLicense.txt` file at workspace root folder or the `SYNCFUSION_LICENSE_KEY` environment variable.
145183

146184
### Using the AI Assistant
147185

@@ -179,6 +217,8 @@ npx skills list
179217
{% endhighlight %}
180218
{% endtabs %}
181219

220+
> **Note:** If you installed Syncfusion skills globally, add the `--global` flag at the end of the command (for example, `npx skills list --global`, `npx skills remove <skill-name> --global` ).
221+
182222
### Remove a Skill
183223

184224
Uninstall a specific skill from your environment:

0 commit comments

Comments
 (0)