diff --git a/reference/SignPDF/SignPDF.cpp b/reference/SignPDF/SignPDF.cpp new file mode 100644 index 000000000..594ca22f2 --- /dev/null +++ b/reference/SignPDF/SignPDF.cpp @@ -0,0 +1,27 @@ +#include +#include +#include + +using namespace Upp; + +CONSOLE_APP_MAIN +{ + PdfDraw pdf; + + PdfSignatureInfo f; + + f.cert = LoadDataFile("certificate.pem"); + f.pkey = LoadDataFile("privatekey.pem"); + + f.name = "Mahrai Ziller"; + f.location = "Masaq"; + f.reason = "I'd like to sign this pdf"; + f.contact_info = "Email me!"; + + pdf.DrawText(200, 200, "Hello world!", Serif(200), Magenta()); + SaveFile(GetHomeDirFile("invislble_signature.pdf"), pdf.Finish(&f)); + + SaveFile(GetHomeDirFile("signature_field.pdf"), + Pdf(ParseQTF("[9* Hello world!&&&&&&&&[^<>^ Mahrai Ziller]"), + Size(3968, 6074), 200, false, &f)); +} diff --git a/reference/SignPDF/SignPDF.upp b/reference/SignPDF/SignPDF.upp new file mode 100644 index 000000000..c82f9cfa6 --- /dev/null +++ b/reference/SignPDF/SignPDF.upp @@ -0,0 +1,14 @@ +uses + Core, + PdfDraw, + Core/SSL, + RichText; + +file + certificate.pem, + privatekey.pem, + SignPDF.cpp; + +mainconfig + "" = ""; + diff --git a/reference/SignPDF/certificate.pem b/reference/SignPDF/certificate.pem new file mode 100644 index 000000000..fb5ad4f7c --- /dev/null +++ b/reference/SignPDF/certificate.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICVzCCAcACCQDKDpTIkLkBjDANBgkqhkiG9w0BAQUFADBwMQswCQYDVQQGEwJD +WjELMAkGA1UECAwCQ1oxDTALBgNVBAcMBHRlc3QxDTALBgNVBAoMBHRlc3QxDTAL +BgNVBAsMBHRlc3QxEjAQBgNVBAMMCWxvY2FsaG9zdDETMBEGCSqGSIb3DQEJARYE +dGVzdDAeFw0xNDAzMDIxNTQ1MjVaFw0xNjEyMjAxNTQ1MjVaMHAxCzAJBgNVBAYT +AkNaMQswCQYDVQQIDAJDWjENMAsGA1UEBwwEdGVzdDENMAsGA1UECgwEdGVzdDEN +MAsGA1UECwwEdGVzdDESMBAGA1UEAwwJbG9jYWxob3N0MRMwEQYJKoZIhvcNAQkB +FgR0ZXN0MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDioZOQ8350EYK+GSg2 +uxEdcpqiRLgVVzwpDGYS2w0ongU/wE6kpWqvVoq8tYg+19uUQRQnTl1AE9XGvvfc +PeO1cr1tmjDse85TJMwzOPjEcbFXV4VaUdR04NbsZR9gXy7kXMDu1pwfuOuWsUkU +or1QeeQygeIo4hMw+HGEs1GVZwIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAJiS4a0v +BqY1MzuwAamrgfDMTquF/Dm8OrFM9JHSSYdjabgDBpyjVMNZ1R+mkt4MP9iqfT9T +MLeGg++W3IvqwY6KfKS2NqFrphTah6vW1TziinyLEgcIqwThVRTjNLRcMJmP1FQr +GOmkNO242TKanRs1Pq1jZNZXPVRXXf0S+gfQ +-----END CERTIFICATE----- diff --git a/reference/SignPDF/init b/reference/SignPDF/init new file mode 100644 index 000000000..ba02e8eca --- /dev/null +++ b/reference/SignPDF/init @@ -0,0 +1,7 @@ +#ifndef _SignPDF_icpp_init_stub +#define _SignPDF_icpp_init_stub +#include "Core/init" +#include "PdfDraw/init" +#include "Core/SSL/init" +#include "RichText/init" +#endif diff --git a/reference/SignPDF/privatekey.pem b/reference/SignPDF/privatekey.pem new file mode 100644 index 000000000..08c5e678e --- /dev/null +++ b/reference/SignPDF/privatekey.pem @@ -0,0 +1,15 @@ +-----BEGIN RSA PRIVATE KEY----- +MIICXQIBAAKBgQDioZOQ8350EYK+GSg2uxEdcpqiRLgVVzwpDGYS2w0ongU/wE6k +pWqvVoq8tYg+19uUQRQnTl1AE9XGvvfcPeO1cr1tmjDse85TJMwzOPjEcbFXV4Va +UdR04NbsZR9gXy7kXMDu1pwfuOuWsUkUor1QeeQygeIo4hMw+HGEs1GVZwIDAQAB +AoGBAIGsiB4JZRKOrmuNQ3hFg16BI7+zaE01tAOcx48EbbwO5tv6ckU9LRUUhJ/D +kyi6JDbpIdn3ud2fO9PTk0ke1Hn7ehHn47k39Ady/4TZUlYohjrNjBbSQs4FD3A8 +npq5wiHg4Bokfz2Bd9HzSaaIC8gZvDXg6OBBby4HzQ4KoFlRAkEA88bqfDVZ4d7m +7rjppvTI5IleH2rmAm7tQSRg9j6qZxw0ZYiOCyyNMnzb0TjdEhPH0b6SZqWMYh3b +MDzGFu7JSQJBAO3+lDK7Zkia9UtOm17qUvTcMzi5rmW8kfeog5Tzwx80mUsvC7Gk +MZX7XDajKMz5rhW8ex4iDcMQM8/RQEu+mS8CQCoEfyYpi/SClwtOk/dS+c1qX+7K +XhrNQ9eWjZ/j7TsYgW9+ufzzEONC4iCNzIzxG9/rGRDYN/oxazZFQ19wiQECQHc3 +iIslPqZuISP5G3FfVfDcgTgQI2FJJaF2o3sw5HQ0R/nWdjglNMWZpWalMqIDDIZM +5SuCCXzGF/4pJtkKf/cCQQDM09LC+cJMVPyzDmgEUu+izq8HtN7LYoxL2ikf1gLD +qTGUlTl9/+b5UVc95OpWykU7y6C+F3Vi2US1a3tU214u +-----END RSA PRIVATE KEY-----