PDF Stamper 電子印鑑 C#サンプル
電子印鑑 作成・追加 C#サンプルと解説
PDF Stamperは、PDF文書に電子印鑑や文字列・画像などを追加するライブラリです。 (Stamper 概要はこちらです。)
価格見積り
開発言語サンプル: C# C/C++サンプル
オンライン作成
ダウンロード
PDF Stamperの無償体験版は、以下からダウンロードできます。無償体験版は、製品版と同じ機能を試用できます。
利用許諾契約書をご確認のうえダウンロードしてください。ダウンロードしますと、利用許諾契約書に同意したものとみなします。
「評価利用」や「電子印鑑作成」では、ライセンスキーが必要です。必ずダウンロードしてください。
PDFStamper-1_10_1.zip (Windows用 ライブラリ; 無償体験版)
StampApp-1_10_1.zip (Windows用 電子印鑑作成アプリケーション; 無償体験版)
体験版(評価)用 ライセンスキー (無償)
StampApp-1_10_1.zip (Windows用 電子印鑑作成アプリケーション; 無償体験版)
体験版(評価)用 ライセンスキー (無償)
インストール
ライブラリは無償でダウンロードおよび試用できます。
ダウンロードしてから、適当なフォルダーに解凍してください。
以下のようなフォルダーができますので適宜ご利用ください。
ダウンロードしてから、適当なフォルダーに解凍してください。
以下のようなフォルダーができますので適宜ご利用ください。
| doc | ライブラリ説明書、利用許諾契約書 |
| include | C/C++用ヘッダー(.h)ファイル |
| lib | DLLライブラリ、Libファイル |
| sample | C/C++言語、C# |
PDF文書に電子印鑑を作成・追加するC#サンプルと解説
PDF文書にXMLデータで指定した電子印鑑(検印)を作成追加するC#のサンプルコードです。
( C/C++サンプルコード )
using System;
using PDFTools.PdfStructure;
namespace Stamp
{
class Stamp
{
static void Main(string[] args)
{
//インスタンス生成
PdfStamp stmp = new PdfStamp();
//初期化
if (stmp.Initialize("0-0G6E-5WER638HK2E6") != 0)
{
Console.WriteLine("ライセンスキーが不正です。");
Environment.Exit(2);
}
//オープン
if (stmp.OpenDoc("in.pdf", null) != err.MLP_NO_ERROR)
{
Console.WriteLine("PDFファイルを開けません。");
Environment.Exit(3);
}
//スタンプ(電子印鑑)追加
stmp.PaintStampFile("電子印鑑.xml");
//PDFを出力
stmp.SavePDF("出力.pdf");
//文書クローズ
stmp.CloseDoc();
//後始末
stmp.Uninitialize();
}
}
}
| Initialize | 初期化 引数にライセンスキーを指定します。 成功すると、0(ゼロ)が戻ります。それ以外はエラーです。 |
||||||
| OpenDoc | PDFファイルを開く 指定したファイルが画像への変換対象になります。 成功すると、0(ゼロ)が戻ります。それ以外はエラーです。 引数に以下を指定します。
|
||||||
| PaintStampFile | XMLデータで指定された電子印鑑をPDF文書に追加します。 引数はXMLファイル名を指定します。 |
||||||
| SavePDF | 電子印鑑が追加された(変更された)PDFデータをファイルに出力します。 引数はPDFファイル名を指定します。 |
||||||
| CloseDoc | 開いたPDFファイルを閉じます。 | ||||||
| Uninitialize | 終了します。 |
電子印鑑を追加するためのXMLデータは以下です。
<?xml version="1.0" ?>
<pdfstamp xmlns="http://www.trustss.co.jp/2019/PDFStamp/">
<stamp pos="195 65" layer="annotation" unlock="true" page="1" BlendMode="Normal"
creator="田中" subject="検印" >
<circle size="40" sub="10" line-width="1" stroke-color="0 .75 .75 0" />
<text value="検" font-name="MS Mincho" font-size="10.5" color="0 .75 .75 0" expand="15 0 0 27" />
<text value="{Localtime:%Y.%m.%d}" format="true" font-name="Calibri" font-size="7"
color="0 .75 .75 0" expand="6 0 0 17.5" />
<text value="田中" font-name="MS Gothic" font-size="10" color="0 .75 .75 0" expand="11 0 0 3" />
</stamp>
</pdfstamp>
| pdfstamp タグ | スタンプ(電子印鑑)定義 | |
| 属性 | ||
| xmlns(必須) | サンプルのとおり指定します。 | |
| stamp タグ | 追加するスタンプの詳細指定 | |
| 属性 | ||
| page(必須) | スタンプを追加するページを指定 ページ番号で指定します。数字以外に、 "first"(先頭ページ)、"all"(全てのページ)などを指定できます。 | |
| pos | スタンプを追加する位置 "X座標 Y座標"と指定します。原点は左下です。 | |
| layer | スタンプを追加するオブジェクトを指定 "annotation":注釈として追加 "foreground":ページの最前面にページコンテンツとして追加 "background":ページの最背面にページコンテンツとして追加 | |
| unlock | "true"でAnnotationスタンプの場合に変更(移動・回転・拡大縮小)が可能 | |
| BlendMode | スタンプを表示する際のブレンドモードを指定 "Mornmal"や"Multiply"などを指定できます。 | |
| creator | スタンププロパティ「作成者」に表示する文字列 注釈として追加する場合だけ有効 | |
| subject | スタンププロパティ「タイトル」に表示する文字列 注釈として追加する場合だけ有効 | |
| circle タグ | 枠線定義 | |
| 属性 | ||
| size(必須) | 円(外周)の直径 | |
| sub | 日付部分の高さ | |
| line-width | 線の太さ | |
| stroke-color | 線の色 | |
| text タグ | 印鑑の文字列 | |
| 属性 | ||
| value(必須) | 表示する文字列 | |
| format | value属性の中かっこで囲まれたフォーマットに従って内容を変更します。 フォーマットはstrftime()の指定に準じます。 | |
| font-name | 文字列のフォント | |
| font-size | 文字列の大きさ | |
| color | 文字列の色(グレースケール、RGB、CMYKで指定可能) | |
| wmode | 横書き(horizontal)、縦書き指定(vertical) | |
| expand | 文字列と境界の間隙を拡張 | |

結果PDF
オンライン電子印鑑(日付印)作成
オンラインで電子印鑑(サンプル)を作成します。
設定を変更して「作成」ボタン(設定を変更すると表示されます)で再作成します。
画像は2倍(144DPI)に拡大されています。
ダウンロード(
、
)
設定を変更して「作成」ボタン(設定を変更すると表示されます)で再作成します。
画像は2倍(144DPI)に拡大されています。
無償評価版
PDF Stamper の無償体験版は、以下からダウンロードできます。無償体験版は、製品版と同じ機能が使えます。
利用許諾をご確認のうえダウンロードしてください。ダウンロードしますと、利用許諾に同意したものとみなします。
評価利用では、ライセンスキーが必要ですので必ずダウンロードしてください。
利用許諾をご確認のうえダウンロードしてください。ダウンロードしますと、利用許諾に同意したものとみなします。
評価利用では、ライセンスキーが必要ですので必ずダウンロードしてください。
PDFStamper-1_10_1.zip (Windows用 ライブラリ; 無償体験版)
StampApp-1_10_1.zip (Windows用 電子印鑑作成アプリケーション; 無償体験版)
体験版(評価)用 ライセンスキー(無償)
StampApp-1_10_1.zip (Windows用 電子印鑑作成アプリケーション; 無償体験版)
体験版(評価)用 ライセンスキー(無償)