Skip to content

Commit 5bc4ee7

Browse files
committed
GroupDocs Signature 23.02 Examples update
1 parent 678dbf6 commit 5bc4ee7

37 files changed

Lines changed: 1027 additions & 12 deletions

File tree

Examples/GroupDocs.Signature.Examples.CSharp.Core/GroupDocs.Signature.Examples.CSharp.Core.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<Import Project="..\GroupDocs.Signature.Examples.CSharp\GroupDocs.Signature.Examples.CSharp.projitems" Label="Shared" />
99

1010
<ItemGroup>
11-
<PackageReference Include="GroupDocs.Signature" Version="23.1.0" />
11+
<PackageReference Include="GroupDocs.Signature" Version="23.2.0" />
1212
<PackageReference Include="Newtonsoft.Json" Version="13.0.2" />
1313
</ItemGroup>
1414

Examples/GroupDocs.Signature.Examples.CSharp.Core/RunExamples.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -261,7 +261,7 @@ static void Main(string[] args)
261261

262262
//Sign document with Barcode signature applying specific options
263263
SignWithBarcodeAdvanced.Run();
264-
264+
SignWithBarcodeTypes.Run();
265265
//Sign document with QR-Code signature applying specific options
266266
SignWithQRCodeAdvanced.Run();
267267

@@ -291,6 +291,10 @@ static void Main(string[] args)
291291
SignWithTextWatermarkNative.Run();
292292
#endregion
293293

294+
#region Sign with complex QR Code types
295+
SignWithQRCodeTypes.Run();
296+
#endregion
297+
294298
#region Sign QR-Code Encryption, Custom encryption, custom serialization
295299
SignWithQRCodeEncryptedText.Run();
296300
SignWithQRCodeEncryptedObject.Run();
@@ -486,6 +490,7 @@ static void Main(string[] args)
486490
#region Logging
487491
ConsoleLogging.Run();
488492
FileLogging.Run();
493+
//CustomLogging.Run();
489494
#endregion
490495

491496
#endregion // Advanced Usage

Examples/GroupDocs.Signature.Examples.CSharp.Framework/GroupDocs.Signature.Examples.CSharp.Framework.csproj

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,9 +54,8 @@
5454
<Reference Include="AWSSDK.S3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=885c28607f98e604, processorArchitecture=MSIL">
5555
<HintPath>..\packages\AWSSDK.S3.3.3.110.10\lib\net45\AWSSDK.S3.dll</HintPath>
5656
</Reference>
57-
<Reference Include="GroupDocs.Signature, Version=23.1.0.0, Culture=neutral, PublicKeyToken=716fcc553a201e56, processorArchitecture=MSIL">
58-
<HintPath>..\packages\GroupDocs.Signature.23.1.0\lib\net40\GroupDocs.Signature.dll</HintPath>
59-
<Private>True</Private>
57+
<Reference Include="GroupDocs.Signature, Version=23.2.0.0, Culture=neutral, PublicKeyToken=716fcc553a201e56, processorArchitecture=MSIL">
58+
<HintPath>..\packages\GroupDocs.Signature.23.2.0\lib\net40\GroupDocs.Signature.dll</HintPath>
6059
</Reference>
6160
<Reference Include="Microsoft.Azure.KeyVault.Core, Version=3.0.4.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
6261
<HintPath>..\packages\Microsoft.Azure.KeyVault.Core.3.0.4\lib\net461\Microsoft.Azure.KeyVault.Core.dll</HintPath>

Examples/GroupDocs.Signature.Examples.CSharp.Framework/RunExamples.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,7 @@ static void Main(string[] args)
260260
SignWithBase64ImageAdvanced.Run();
261261

262262
//Sign document with Barcode signature applying specific options
263+
SignWithBarcodeTypes.Run();
263264
SignWithBarcodeAdvanced.Run();
264265

265266
//Sign document with QR-Code signature applying specific options
@@ -291,6 +292,10 @@ static void Main(string[] args)
291292
SignWithTextWatermarkNative.Run();
292293
#endregion
293294

295+
#region Sign with complex QR Code types
296+
SignWithQRCodeTypes.Run();
297+
#endregion
298+
294299
#region Sign QR-Code Encryption, Custom encryption, custom serialization
295300
SignWithQRCodeEncryptedText.Run();
296301
SignWithQRCodeEncryptedObject.Run();
@@ -486,6 +491,7 @@ static void Main(string[] args)
486491
#region Logging
487492
ConsoleLogging.Run();
488493
FileLogging.Run();
494+
//CustomLogging.Run();
489495
#endregion
490496

491497
#endregion // Advanced Usage

Examples/GroupDocs.Signature.Examples.CSharp.Framework/packages.config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<packages>
33
<package id="AWSSDK.Core" version="3.3.104.14" targetFramework="net461" />
44
<package id="AWSSDK.S3" version="3.3.110.10" targetFramework="net461" />
5-
<package id="GroupDocs.Signature" version="23.1.0" targetFramework="net461" />
5+
<package id="GroupDocs.Signature" version="23.2.0" targetFramework="net461" />
66
<package id="Microsoft.Azure.KeyVault.Core" version="3.0.4" targetFramework="net461" />
77
<package id="Microsoft.Rest.ClientRuntime" version="2.3.21" targetFramework="net461" />
88
<package id="Microsoft.Rest.ClientRuntime.Azure" version="3.3.19" targetFramework="net461" />

Examples/GroupDocs.Signature.Examples.CSharp.Net/GroupDocs.Signature.Examples.CSharp.Net.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<Import Project="..\GroupDocs.Signature.Examples.CSharp\GroupDocs.Signature.Examples.CSharp.projitems" Label="Shared" />
99

1010
<ItemGroup>
11-
<PackageReference Include="GroupDocs.Signature" Version="23.1.0" />
11+
<PackageReference Include="GroupDocs.Signature" Version="23.2.0" />
1212
<PackageReference Include="Newtonsoft.Json" Version="13.0.2" />
1313
</ItemGroup>
1414

Examples/GroupDocs.Signature.Examples.CSharp.Net/RunExamples.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,7 @@ static void Main(string[] args)
260260
SignWithBase64ImageAdvanced.Run();
261261

262262
//Sign document with Barcode signature applying specific options
263+
SignWithBarcodeTypes.Run();
263264
SignWithBarcodeAdvanced.Run();
264265

265266
//Sign document with QR-Code signature applying specific options
@@ -291,6 +292,10 @@ static void Main(string[] args)
291292
SignWithTextWatermarkNative.Run();
292293
#endregion
293294

295+
#region Sign with complex QR Code types
296+
SignWithQRCodeTypes.Run();
297+
#endregion
298+
294299
#region Sign QR-Code Encryption, Custom encryption, custom serialization
295300
SignWithQRCodeEncryptedText.Run();
296301
SignWithQRCodeEncryptedObject.Run();
@@ -486,6 +491,7 @@ static void Main(string[] args)
486491
#region Logging
487492
ConsoleLogging.Run();
488493
FileLogging.Run();
494+
//CustomLogging.Run();
489495
#endregion
490496

491497
#endregion // Advanced Usage
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
using System;
2+
using System.IO;
3+
using System.Linq;
4+
using System.Collections.Generic;
5+
6+
namespace GroupDocs.Signature.Examples.CSharp.AdvancedUsage
7+
{
8+
using GroupDocs.Signature;
9+
using GroupDocs.Signature.Domain;
10+
using GroupDocs.Signature.Options;
11+
12+
public class ProcessingDigitalSignatureOverCRUD
13+
{
14+
/// <summary>
15+
/// Following example shows how to process Digital Signature over all signature life-cycle.
16+
/// First document is being signed with Digital Signature, then verified for it, searched for same and then finally deleting this signature.
17+
/// Please be aware the digital siganture can not be updated.
18+
/// </summary>
19+
public static void Run()
20+
{
21+
Console.WriteLine("\n--------------------------------------------------------------------------------------------------------------------");
22+
Console.WriteLine("[Example Advanced Usage] # ProcessingDigitalSignatureOverCRUD : Process Image Signature over all signature life-cycle\n");
23+
24+
// The path to the documents directory.
25+
string filePath = Constants.SAMPLE_WORDPROCESSING;
26+
string fileName = Path.GetFileName(filePath);
27+
string imagePath = Constants.ImageStamp;
28+
string certificatePath = Constants.CertificatePfx;
29+
string outputFilePath = Path.Combine(Constants.OutputPath, "ProcessingDigitalSignatureOverCRUD", fileName);
30+
List<string> signatureIds = new List<string>();
31+
// -----------------------------------------------------------------------------------------------------------------------------
32+
// STEP 1. Sign document with Digital Signature
33+
// -----------------------------------------------------------------------------------------------------------------------------
34+
using (Signature signature = new Signature(filePath))
35+
{
36+
DigitalSignOptions signOptions = new DigitalSignOptions(certificatePath)
37+
{
38+
// certificate password
39+
Password = "1234567890",
40+
// digital certificate details
41+
Reason = "Approved",
42+
Contact = "John Smith",
43+
Location = "New York",
44+
// image as digital certificate appearance on document pages
45+
ImageFilePath = imagePath,
46+
//
47+
Width = 160,
48+
Height = 80
49+
50+
};
51+
// sign document to file
52+
SignResult signResult = signature.Sign(outputFilePath, signOptions);
53+
Console.WriteLine("\nDocument {filePath} was signed with following signatures:");
54+
foreach (BaseSignature temp in signResult.Succeeded)
55+
{
56+
// collect newly created signature' Id
57+
signatureIds.Add(temp.SignatureId);
58+
Console.WriteLine($"Signature : {temp.SignatureType} Id:{temp.SignatureId}, Location: {temp.Left}x{temp.Top}. Size: {temp.Width}x{temp.Height}");
59+
}
60+
}
61+
// -----------------------------------------------------------------------------------------------------------------------------
62+
// STEP 2. Search document for Digital Signature
63+
// -----------------------------------------------------------------------------------------------------------------------------
64+
List<DigitalSignature> signatures;
65+
66+
using (Signature signature = new Signature(outputFilePath))
67+
{
68+
DigitalSearchOptions searchOptions = new DigitalSearchOptions()
69+
{
70+
// specify special pages to search on
71+
AllPages = true
72+
};
73+
// search for Digital signatures in document
74+
signatures = signature.Search<DigitalSignature>(searchOptions);
75+
Console.WriteLine("\nSource document contains following Digital signature(s).");
76+
// enumerate all signature for output
77+
foreach (DigitalSignature digitalSignature in signatures)
78+
{
79+
if (digitalSignature != null)
80+
{
81+
Console.WriteLine($"Found Digital signature #{digitalSignature.SignatureId} and '{digitalSignature.Thumbprint}'.");
82+
}
83+
}
84+
}
85+
// -----------------------------------------------------------------------------------------------------------------------------
86+
// STEP 3. Delete document Digital Signature by id
87+
// create list of Digital Signature by known SignatureId
88+
List<BaseSignature> signaturesToRemove = signatures.Select( p => p as BaseSignature).ToList();
89+
using (Signature signature = new Signature(outputFilePath))
90+
{
91+
// delete all signatures
92+
DeleteResult deleteResult = signature.Delete(signaturesToRemove);
93+
if (deleteResult.Succeeded.Count == signatures.Count)
94+
{
95+
Console.WriteLine("\nAll signatures were successfully deleted!");
96+
}
97+
else
98+
{
99+
Console.WriteLine($"Successfully deleted signatures : {deleteResult.Succeeded.Count}");
100+
Helper.WriteError($"Not deleted signatures : {deleteResult.Failed.Count}");
101+
}
102+
Console.WriteLine("List of deleted signatures:");
103+
foreach (BaseSignature temp in deleteResult.Succeeded)
104+
{
105+
Console.WriteLine($"Signature# Id:{temp.SignatureId}, Location: {temp.Left}x{temp.Top}. Size: {temp.Width}x{temp.Height}");
106+
}
107+
}
108+
}
109+
}
110+
}
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
using System;
2+
using System.IO;
3+
using System.Collections.Generic;
4+
5+
namespace GroupDocs.Signature.Examples.CSharp.AdvancedUsage
6+
{
7+
using GroupDocs.Signature;
8+
using GroupDocs.Signature.Domain;
9+
using GroupDocs.Signature.Options;
10+
11+
public class ProcessingFormFieldSignatureOverCRUD
12+
{
13+
/// <summary>
14+
/// Following example shows how to process Metadata Signature over all signature life-cycle.
15+
/// First document is being signed with Metadata Signature, then verified for it, searched for same, updating and finally deleting this signature.
16+
/// </summary>
17+
public static void Run()
18+
{
19+
Console.WriteLine("\n--------------------------------------------------------------------------------------------------------------------");
20+
Console.WriteLine("[Example Advanced Usage] # ProcessingFormFieldSignatureOverCRUD : Process Metadata Signature over all signature life-cycle\n");
21+
22+
// The path to the documents directory.
23+
string filePath = Constants.SAMPLE_PDF;
24+
string fileName = Path.GetFileName(filePath);
25+
26+
string outputFilePath = Path.Combine(Constants.OutputPath, "ProcessingFormFieldSignatureOverCRUD", fileName);
27+
List<string> signatureIds = new List<string>();
28+
// -----------------------------------------------------------------------------------------------------------------------------
29+
// STEP 1. Sign document with Metadata Signature(s)
30+
// -----------------------------------------------------------------------------------------------------------------------------
31+
using (Signature signature = new Signature(filePath))
32+
{
33+
// instantiate text form field signature
34+
FormFieldSignature textSignature = new TextFormFieldSignature("FieldText", "Value1");
35+
// instantiate options based on text form field signature
36+
FormFieldSignOptions signOptions = new FormFieldSignOptions(textSignature)
37+
{
38+
Top = 150,
39+
Left = 50,
40+
Height = 50,
41+
Width = 200
42+
};
43+
44+
// sign document to file
45+
SignResult signResult = signature.Sign(outputFilePath, signOptions);
46+
Console.WriteLine("\nDocument {filePath} was signed with following signatures:");
47+
foreach (BaseSignature temp in signResult.Succeeded)
48+
{
49+
// collect newly created signature' Id
50+
signatureIds.Add(temp.SignatureId);
51+
Console.WriteLine($"Signature : {temp.SignatureType} Id:{temp.SignatureId}");
52+
}
53+
}
54+
// -----------------------------------------------------------------------------------------------------------------------------
55+
// STEP 2. Search document for FormField Signature
56+
// -----------------------------------------------------------------------------------------------------------------------------
57+
using (Signature signature = new Signature(outputFilePath))
58+
{
59+
// search for signatures in document
60+
List<FormFieldSignature> signatures = signature.Search<FormFieldSignature>(SignatureType.FormField);
61+
Console.WriteLine($"\nSource document ['{filePath}'] contains following signatures.");
62+
foreach (var FormFieldSignature in signatures)
63+
{
64+
Console.WriteLine($"FormField signature found. Name : {FormFieldSignature.Name}. Value: {FormFieldSignature.Value}");
65+
}
66+
// -----------------------------------------------------------------------------------------------------------------------------
67+
// STEP 3. Update document Metadata Signature after searching it
68+
// -----------------------------------------------------------------------------------------------------------------------------
69+
70+
// -----------------------------------------------------------------------------------------------------------------------------
71+
// STEP 4. Update document Metadata Signature on saved SignatureId
72+
// create list of Image Signature by known SignatureId
73+
// -----------------------------------------------------------------------------------------------------------------------------
74+
75+
// -----------------------------------------------------------------------------------------------------------------------------
76+
// STEP 5. Delete document Metadata Signature by id
77+
// create list of Image Signature by known SignatureId
78+
79+
}
80+
}
81+
}
82+
}

0 commit comments

Comments
 (0)