
C# で QR コードを使用して PDF にデジタル署名する
現代では、QR コードを使用してデジタル署名された PDF はより安全になり、自動化されたデジタル処理システムで迅速に検証できるようになりました。 QR コードを使用するもう 1 つの理由は、多くの有用な情報を含めることができることです。 C# で QR コードを使用して PDF ファイルに電子署名する方法を知りたい場合は、適切な場所にたどり着きました。
この記事では、次の点について説明します。
- QR コードで PDF にデジタル署名するための C# ライブラリ
- C# で QR コードを使用して PDF にデジタル署名する手順
- C# で QR コードを使用して PDF にデジタル署名 - 高度なオプション
QR コードで PDF にデジタル署名するための C# ライブラリ
DLL を ダウンロード するか、NuGet パッケージ マネージャー コンソールでコマンド (以下に示す) を実行してインストールすることができます。
Install-Package GroupDocs.Signature
C# で QR コードを使用して PDF にデジタル署名する手順
インストール後、数行のコードを書き始めましょう。
以下の手順とコード スニペットに従ってください。
- Signature クラスをインスタンス化し、ソース ドキュメントのパスをコンストラクタ パラメータとして渡します。
- QrCodeSignOptions クラスのインスタンスを初期化し、EncodeType および Text プロパティを設定します。
- Signature クラスの Sign メソッドを呼び出し、出力ファイルのパスと QrCodeSignOptions を渡します。
次のコード サンプルをコピーして C# ファイルに貼り付けるだけです。
using (Signature signature = new Signature("sample.pdf")) | |
{ | |
// create QRCode option with predefined QRCode text | |
QrCodeSignOptions options = new QrCodeSignOptions("JohnSmith") | |
{ | |
// setup QRCode encoding type | |
EncodeType = QrCodeTypes.QR, | |
// set signature position | |
Left = 100, | |
Top = 100 | |
}; | |
signature.Sign("SampleSigned.pdf", options); | |
} |
出力は次の画像で確認できます。

C# で QR コードを使用して PDF に eSign - 高度なオプション
PDF eSign ライブラリは、QrCodeSignOptions クラスでいくつかの追加の便利なオプションを提供します。このクラスを使用して、署名の配置、余白、境界線、フォント、色、および背景を指定できます。さらに、SignResult クラスを使用して、新しく作成した署名の結果を検証できます。
詳細オプションを使用して QR コードを作成する手順は次のとおりです。
- ソース ドキュメントのパスをコンストラクタ パラメータとして指定して、Signature クラスの新しいインスタンスを初期化します。
- QrCodeSignOptions クラスのインスタンスをインスタンス化します。
- 署名のテキストとエンコード タイプを設定します。
- 署名の位置を設定します。
- 署名の配置、余白、境界線、フォント、色、および背景を指定します。
- Signature クラスの Sign メソッドを呼び出し、出力ファイルのパスと QrCodeSignOptions を渡します。
- 必要に応じて、SignResult オブジェクトを取得して、新しく作成された署名を分析または検証できます。
次の C# コードは、高度なオプションを使用して QR コードで PDF に署名する方法を示しています。
using (Signature signature = new Signature("sample.pdf")) | |
{ | |
// create QRCode option with predefined QRCode text | |
QrCodeSignOptions options = new QrCodeSignOptions("12345678") | |
{ | |
// setup QRCode encoding type | |
EncodeType = QrCodeTypes.QR, | |
// set signature position | |
Left = 100, | |
Top = 100, | |
// set signature alignment | |
// when VerticalAlignment is set the Top coordinate will be ignored. | |
// Use Margin properties Top, Bottom to provide vertical offset | |
VerticalAlignment = VerticalAlignment.Top, | |
// when HorizontalAlignment is set the Left coordinate will be ignored. | |
// Use Margin properties Left, Right to provide horizontal offset | |
HorizontalAlignment = HorizontalAlignment.Right, | |
Margin = new Padding() { Top = 20, Right = 20 }, | |
// adjust signature appearance | |
// setup signature border | |
Border = new Border() | |
{ | |
Color = Color.DarkGreen, | |
DashStyle = GroupDocs.Signature.Domain.DashStyle.DashLongDashDot, | |
Transparency = 0.5, | |
Visible = true, | |
Weight = 2 | |
}, | |
// set text color and Font | |
ForeColor = Color.Red, | |
Font = new SignatureFont { Size = 12, FamilyName = "Comic Sans MS" }, | |
// setup background | |
Background = new Background() | |
{ | |
Color = Color.LimeGreen, | |
Transparency = 0.5, | |
Brush = new LinearGradientBrush(Color.LimeGreen, Color.DarkGreen) | |
} | |
}; | |
// sign document to file and pouplate the SignResut | |
SignResult signResult = signature.Sign("signed.pdf", options); | |
Console.WriteLine("\nList of newly created signatures:"); | |
int number = 1; | |
foreach (BaseSignature temp in signResult.Succeeded) | |
{ | |
Console.WriteLine($"Signature #{number++}: Type: {temp.SignatureType} Id:{temp.SignatureId}, Location: {temp.Left}x{temp.Top}. Size: {temp.Width}x{temp.Height}"); | |
} | |
} |
以下の画像に示すような出力が得られます。

無料ライセンスを取得する
無料の一時ライセンス を利用して、評価制限なしで API をテストできます。
結論
この記事では、電子署名ライブラリを使用してC# で QR コードを使用して PDF にデジタル署名する方法を学びました。さらに、PDF ドキュメントに QR コード サインを追加するための高度なオプションについても学びました。デジタル署名ライブラリのその他の機能については、ドキュメント を参照してください。
さらに、Getting Started guide に従うことをお勧めします。
質問する
ご質問やご質問は フォーラム でお知らせください。