Atom Лента - Форум КриптоПро - Тема:Визуальная Подпись PDF-документов с использованием КриптоПро .NET - 10Форум КриптоПро - Atom Лентаurn:https:--www-cryptopro-ru:AtomLenta:ForumKriptoPro:Tema:Vizual'najaPodpis'PDF-dokumentovsispol'zovaniemKriptoPro.NET-10:1Copyright 2024 Форум КриптоПро2024-03-28T17:31:19Zhttps://www.cryptopro.ru/forum2/Images/YAFLogo.pngForum Adminhttps://www.cryptopro.ruforum@cryptopro.ruSerg_0908https://www.cryptopro.ru/forum2/default.aspx?g=profile&u=57894&name=Serg_0908Serg_0908https://www.cryptopro.ru/forum2/default.aspx?g=profile&u=57894&name=Serg_0908kroligoffhttps://www.cryptopro.ru/forum2/default.aspx?g=profile&u=45678&name=kroligoffkroligoffhttps://www.cryptopro.ru/forum2/default.aspx?g=profile&u=45678&name=kroligoffYetAnotherForum.NETurn:https:--www-cryptopro-ru:ftPosts:st1:meid120610:1Визуальная Подпись PDF-документов с использованием КриптоПро .NET<table class="content postContainer_Alt" width="100%"><tr><td>Добрый день! У меня вопрос, с какими параметрами вам удалось выполнить запуск примера <br />подписи PDF - документа ?<br /><br />Я установил КриптоПро Net x64 последнй версии, КриптоПро CSP 5.0,<br />исправил в примере тип сертификата:<br /><br /> Gost3410_2012_256CryptoServiceProvider cert_key = certificate.PrivateKey as Gost3410_2012_256CryptoServiceProvider;<br /><br />(у меня такой для тестирования)<br /><br />При выполнении возникает исключение в функции <br /><br /> signedCms.ComputeSignature(cmsSigner, false);<br /><br />Не поможете объяснить, в чем может быть проблема ?[attach]9251[/attach]</td></tr></table>2020-11-18T08:40:34+03:002020-11-18T08:40:34+03:00Serg_0908<table class="content postContainer_Alt" width="100%"><tr><td>Добрый день! У меня вопрос, с какими параметрами вам удалось выполнить запуск примера <br />подписи PDF - документа ?<br /><br />Я установил КриптоПро Net x64 последнй версии, КриптоПро CSP 5.0,<br />исправил в примере тип сертификата:<br /><br /> Gost3410_2012_256CryptoServiceProvider cert_key = certificate.PrivateKey as Gost3410_2012_256CryptoServiceProvider;<br /><br />(у меня такой для тестирования)<br /><br />При выполнении возникает исключение в функции <br /><br /> signedCms.ComputeSignature(cmsSigner, false);<br /><br />Не поможете объяснить, в чем может быть проблема ?[attach]9251[/attach]</td></tr></table>urn:https:--www-cryptopro-ru:ftPosts:st1:meid119799:1Визуальная Подпись PDF-документов с использованием КриптоПро .NET<table class="content postContainer" width="100%"><tr><td>Да еще, если требуется добавить новую подпись в PDF уже имеющий документ с подписью , необходимо <br /> PdfSigner signer = new PdfSigner(reader, new FileStream(dest, FileMode.Create), tmp,<br /> new StampingProperties().UseAppendMode());<br /><br />использовать AppendMode, иначе 1 подпись будет испорчена</td></tr></table>2020-10-16T12:25:06+03:002020-10-16T12:25:06+03:00kroligoff<table class="content postContainer" width="100%"><tr><td>Да еще, если требуется добавить новую подпись в PDF уже имеющий документ с подписью , необходимо <br /> PdfSigner signer = new PdfSigner(reader, new FileStream(dest, FileMode.Create), tmp,<br /> new StampingProperties().UseAppendMode());<br /><br />использовать AppendMode, иначе 1 подпись будет испорчена</td></tr></table>urn:https:--www-cryptopro-ru:ftPosts:st1:meid119771:1Визуальная Подпись PDF-документов с использованием КриптоПро .NET<table class="content postContainer_Alt" width="100%"><tr><td>Потратил много времени чтобы добиться корректного отображения визуальной подписи в блоке подписи PDF,<br />внятных примеров нет.<br />Используя пример Simple35 из .NET SDK<br /><br />Оставлю тут для других людей, не удаляйте пожалуйста <img src="/forum2/Images/Emoticons/eusa_whistle.gif" alt="Whistle" /> :<br /><br />можно добавить после<br />sap.SignDate = DateTime.Now;<br /><br /><div class="code"><strong>Код:</strong><div class="innercode"><pre class="line-numbers"><code class="language-csharp">sap.Acro6Layers = true;
sap.SignatureRenderingMode = PdfSignatureAppearance.RenderingMode.DESCRIPTION;
sap.SetVisibleSignature(new iTextSharp.text.Rectangle(30, 830, 170, 770), 1, "Signature"); //reader.NumberOfPages
// vvvvv
PdfTemplate layer2 = sap.GetLayer(2);
String text = "Это блок подписи\n "
+ "Линия 2\n"
+ "Линия 3\n";
Font font = new Font();
float size = font.Size;
float MARGIN = 2;
Rectangle dataRect = new Rectangle(
MARGIN,
MARGIN,
sap.Rect.Width- MARGIN,
sap.Rect.Height - MARGIN);
if (size <= 0)
{
Rectangle sr = new Rectangle(dataRect.Width, dataRect.Height);
size = ColumnText.FitText(font, text, sr, 12, sap.RunDirection);
}
ColumnText ct = new ColumnText(layer2);
ct.RunDirection=(sap.RunDirection);
ct.SetSimpleColumn(new Phrase(text, font), dataRect.Left, dataRect.Bottom, dataRect.Right, dataRect.Top, size, Element.ALIGN_LEFT);
ct.Go();</code></pre>
</div></div></td></tr></table>2020-10-15T16:38:08+03:002020-10-15T16:38:08+03:00kroligoff<table class="content postContainer_Alt" width="100%"><tr><td>Потратил много времени чтобы добиться корректного отображения визуальной подписи в блоке подписи PDF,<br />внятных примеров нет.<br />Используя пример Simple35 из .NET SDK<br /><br />Оставлю тут для других людей, не удаляйте пожалуйста <img src="/forum2/Images/Emoticons/eusa_whistle.gif" alt="Whistle" /> :<br /><br />можно добавить после<br />sap.SignDate = DateTime.Now;<br /><br /><div class="code"><strong>Код:</strong><div class="innercode"><pre class="line-numbers"><code class="language-csharp">sap.Acro6Layers = true;
sap.SignatureRenderingMode = PdfSignatureAppearance.RenderingMode.DESCRIPTION;
sap.SetVisibleSignature(new iTextSharp.text.Rectangle(30, 830, 170, 770), 1, "Signature"); //reader.NumberOfPages
// vvvvv
PdfTemplate layer2 = sap.GetLayer(2);
String text = "Это блок подписи\n "
+ "Линия 2\n"
+ "Линия 3\n";
Font font = new Font();
float size = font.Size;
float MARGIN = 2;
Rectangle dataRect = new Rectangle(
MARGIN,
MARGIN,
sap.Rect.Width- MARGIN,
sap.Rect.Height - MARGIN);
if (size <= 0)
{
Rectangle sr = new Rectangle(dataRect.Width, dataRect.Height);
size = ColumnText.FitText(font, text, sr, 12, sap.RunDirection);
}
ColumnText ct = new ColumnText(layer2);
ct.RunDirection=(sap.RunDirection);
ct.SetSimpleColumn(new Phrase(text, font), dataRect.Left, dataRect.Bottom, dataRect.Right, dataRect.Top, size, Element.ALIGN_LEFT);
ct.Go();</code></pre>
</div></div></td></tr></table>