QR Code (Quick Response code) je typ strojově čitelného čárového kódu Matrix ve formě pole černých a bílých čtverců. Jde o optický štítek, který obsahuje informace čitelné pomocí QR čtečky. Můžeme programově generovat QR kódy a podepisovat dokumenty a obrázky v cloudu. V tomto článku se naučíme, jak vygenerovat QR kód pro podepisování PDF dokumentů pomocí REST API v PHP.
Tento článek bude obsahovat následující témata:
- QR Code Generator REST API a PHP SDK
- Vygenerujte QR kód pro podepsání PDF v PHP
- Vygenerujte aztécký QR kód pro podepisování PDF v PHP
- Vytvořte DataMatrix QR kód pro podepisování PDF v PHP
- Ověřte podpisy QR kódu v PHP
QR Code Generator REST API a PHP SDK
Pro generování QR kódů pro podepisování PDF dokumentů budeme používat PHP SDK of GroupDocs.Signature Cloud API. Umožňuje vytvářet, ověřovat a prohledávat různé typy podpisů, jako jsou obrázky, čárové kódy, QR-kódy, textové, digitální a razítkové podpisy. Podporuje následující typy QR kódů:
- Aztécký kód
- Kód DataMatrix
- GS1 DataMatrix
- GS1 QR
- QR
Nainstalujte jej pomocí následujícího příkazu v konzole:
composer require groupdocscloud/groupdocs-signature-cloud
Po instalaci použijte autoload od skladatelů k použití sady SDK, jak je uvedeno níže:
require_once('vendor/autoload.php');
Před provedením uvedených kroků získejte své ID klienta a tajný klíč z řídicího panelu. Jakmile budete mít své ID a tajemství, přidejte kód, jak je uvedeno níže:
// Tento příklad kódu ukazuje, jak do kódu přidat ID klienta a tajný klíč.
static $ClientId = '659fe7da-715b-4744-a0f7-cf469a392b73';
static $ClientSecret = 'b377c36cfa28fa69960ebac6b6e36421';
static $ApiBaseUrl = 'https://api.groupdocs.cloud';
static $MyStorage = '';
// Inicializujte konfiguraci
$configuration = new GroupDocs\Signature\Configuration();
// Nastavení konfigurací
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);
$configuration->setApiBaseUrl(self::$ApiBaseUrl);
Vygenerujte QR kód pro podepsání PDF pomocí REST API v PHP
Můžeme vygenerovat QR kód pro podepsání dokumentů PDF v cloudu podle jednoduchých kroků uvedených níže:
- Nahrát PDF do cloudu
- Vygenerujte QR kód pro podepsání PDF
- Stáhnout podepsaný soubor
Nahrajte dokument
Nejprve nahrajeme dokument PDF do cloudu pomocí níže uvedeného příkladu kódu:
// Tento příklad kódu ukazuje, jak nahrát soubor PDF do cloudu.
// Inicializujte rozhraní API
$apiInstance = new GroupDocs\Signature\FileApi($configuration);
// Vstupní cesta k souboru
$file = "C:\\Files\\Signature\\sample.pdf";
// Žádost o nahrání souboru
$request = new GroupDocs\Signature\Model\Requests\UploadFileRequest("sample.pdf", $file, self::$MyStorage, null);
// Nahrát soubor
$response = $apiInstance->uploadFile($request);
V důsledku toho bude nahraný soubor PDF dostupný v sekce souborů řídicího panelu v cloudu.
Vygenerujte QR kód pro podepsání PDF v PHP
Můžeme programově vygenerovat QR kód a podepsat nahraný dokument PDF podle následujících kroků:
- Nejprve vytvořte instanci SignApi.
- Dále zadejte cestu k vstupnímu souboru PDF.
- Poté nastavte cestu k výstupnímu souboru.
- Dále inicializujte objekt SignQRCodeOptions.
- Poté nastavte QRCodeType na „QR“. Navíc nastavte text a jeho polohu.
- Volitelně nastavte možnosti, jako je Page, RotationAngle, HorizontalAlignment, Border, Padding atd.
- Poté vytvořte CreateSignaturesRequest s definovaným SignSettings.
- Nakonec získejte výsledky voláním metody createSignatures().
Následující ukázka kódu ukazuje, jak vygenerovat QR kód a podepsat dokument PDF pomocí REST API v PHP.
// Tento příklad kódu ukazuje, jak vygenerovat QR kód pro podepsání dokumentu PDF.
// Instance SignatureAPI
$apiInstance = new GroupDocs\Signature\SignApi($configuration);
// Vstupní cesta k souboru
$fileInfo = new GroupDocs\Signature\Model\FileInfo();
$fileInfo->setFilePath("sample.pdf");
// Definujte SignSettings
$settings = new GroupDocs\Signature\Model\SignSettings();
$settings->setFileInfo($fileInfo);
// Definujte SaveOptions
$saveOptions = new GroupDocs\Signature\Model\SaveOptions();
$saveOptions->setOutputFilePath("QR_out.pdf");
$settings->setSaveOptions($saveOptions);
// Definujte možnosti kódu QR podpisu
$options = new GroupDocs\Signature\Model\SignQRCodeOptions();
$options->setPage(1);
$options->setAllPages(false);
$options->setSignatureType(GroupDocs\Signature\Model\OptionsBase::SIGNATURE_TYPE_QR_CODE);
$options->setQRCodeType("QR");
$options->setText("This is sample QR.");
$options->setLeft(260);
$options->setTop(350);
$options->setWidth(100);
$options->setHeight(100);
// Barva
$color = new GroupDocs\Signature\Model\Barva();
$color->setWeb("Black");
// okraj
$border = new GroupDocs\Signature\Model\okrajLine();
$border->setBarva($color);
$border->setVisible(true);
$border->setWeight(12);
$options->setokraj($border);
// Vycpávka
$padding = new GroupDocs\Signature\Model\Vycpávka();
$padding->setAll(5);
$options->setMargin($padding);
$options->setMarginMeasureType(GroupDocs\Signature\Model\SignTextOptions::MARGIN_MEASURE_TYPE_PIXELS);
$settings->setOptions([$options]);
// Vytvořit žádost o podpis
$request = new GroupDocs\Signature\Model\Requests\createSignaturesRequest($settings);
// Vytvářejte podpisy
$response = $apiInstance->createSignatures($request);
echo "Response: ", $response->getFileInfo();
Stáhněte si PDF podepsané QR kódem
Výše uvedená ukázka kódu uloží podepsaný soubor PDF do cloudu. Lze jej stáhnout pomocí následující ukázky kódu:
// Tento příklad kódu ukazuje, jak stáhnout soubor PDF z cloudu.
// Inicializujte rozhraní API
$apiInstance = new GroupDocs\Signature\FileApi($configuration);
// Žádost o stažení souboru
$request = new GroupDocs\Signature\Model\Requests\DownloadFileRequest("Aztec_QR_out.pdf", self::$MyStorage, null);
// Stáhnout soubor
$response = $apiInstance->downloadFile($request);
Vygenerujte aztécký kód pro podepisování PDF v PHP
Aztécký kód je nejsnadněji tisknutelný a snadno skenovatelný dvourozměrný (2D) QR kód. Můžeme vygenerovat aztécký kód pro podepsání nahraného dokumentu PDF podle výše uvedených kroků. Stačí však nastavit QRCodeType na „Aztec“.
Následující ukázka kódu ukazuje, jak vygenerovat aztécký kód a podepsat dokument PDF pomocí REST API v PHP.
// Tento příklad kódu ukazuje, jak generovat aztécký kód v PHP.
// Instance SignatureAPI
$apiInstance = new GroupDocs\Signature\SignApi($configuration);
// Vstupní cesta k souboru
$fileInfo = new GroupDocs\Signature\Model\FileInfo();
$fileInfo->setFilePath("sample.pdf");
// Definujte SignSettings
$settings = new GroupDocs\Signature\Model\SignSettings();
$settings->setFileInfo($fileInfo);
// Definujte SaveOptions
$saveOptions = new GroupDocs\Signature\Model\SaveOptions();
$saveOptions->setOutputFilePath("QR_out.pdf");
$settings->setSaveOptions($saveOptions);
// Definujte možnosti kódu QR podpisu
$options = new GroupDocs\Signature\Model\SignQRCodeOptions();
$options->setPage(1);
$options->setAllPages(false);
$options->setSignatureType(GroupDocs\Signature\Model\OptionsBase::SIGNATURE_TYPE_QR_CODE);
$options->setQRCodeType("Aztec");
$options->setText("This is a sample Aztec QR code.");
$options->setLeft(260);
$options->setTop(350);
$options->setWidth(100);
$options->setHeight(100);
// Barva
$color = new GroupDocs\Signature\Model\Barva();
$color->setWeb("Black");
// okraj
$border = new GroupDocs\Signature\Model\okrajLine();
$border->setBarva($color);
$border->setVisible(true);
$border->setWeight(12);
$options->setokraj($border);
// Vycpávka
$padding = new GroupDocs\Signature\Model\Vycpávka();
$padding->setAll(2);
$options->setMargin($padding);
$options->setMarginMeasureType(GroupDocs\Signature\Model\SignTextOptions::MARGIN_MEASURE_TYPE_PIXELS);
$settings->setOptions([$options]);
// Vytvořit žádost o podpis
$request = new GroupDocs\Signature\Model\Requests\createSignaturesRequest($settings);
// Vytvářejte podpisy
$response = $apiInstance->createSignatures($request);
echo "Response: ", $response->getFileInfo();
Vytvořte kód DataMatrix pro podepisování PDF v PHP
Můžeme také vygenerovat kód DataMatrix podle výše uvedených kroků. Potřebujeme však pouze nastavit QRCodeType na „DataMatrix“.
Následující ukázka kódu ukazuje, jak vygenerovat kód DataMatrix a podepsat dokument PDF pomocí REST API v PHP.
// Tento příklad kódu ukazuje, jak generovat kód DataMatrix v PHP.
// Instance SignatureAPI
$apiInstance = new GroupDocs\Signature\SignApi($configuration);
// Vstupní cesta k souboru
$fileInfo = new GroupDocs\Signature\Model\FileInfo();
$fileInfo->setFilePath("sample.pdf");
// Definujte SignSettings
$settings = new GroupDocs\Signature\Model\SignSettings();
$settings->setFileInfo($fileInfo);
// Definujte SaveOptions
$saveOptions = new GroupDocs\Signature\Model\SaveOptions();
$saveOptions->setOutputFilePath("QR_out.pdf");
$settings->setSaveOptions($saveOptions);
// Definujte možnosti kódu QR podpisu
$options = new GroupDocs\Signature\Model\SignQRCodeOptions();
$options->setPage(1);
$options->setAllPages(false);
$options->setSignatureType(GroupDocs\Signature\Model\OptionsBase::SIGNATURE_TYPE_QR_CODE);
$options->setQRCodeType("DataMatrix");
$options->setText("This is a sample DataMatrix QR code.");
$options->setLeft(260);
$options->setTop(350);
$options->setWidth(100);
$options->setHeight(100);
// Barva
$color = new GroupDocs\Signature\Model\Barva();
$color->setWeb("Black");
// okraj
$border = new GroupDocs\Signature\Model\okrajLine();
$border->setBarva($color);
$border->setVisible(true);
$border->setWeight(12);
$options->setokraj($border);
// Vycpávka
$padding = new GroupDocs\Signature\Model\Vycpávka();
$padding->setAll(2);
$options->setMargin($padding);
$options->setMarginMeasureType(GroupDocs\Signature\Model\SignTextOptions::MARGIN_MEASURE_TYPE_PIXELS);
$settings->setOptions([$options]);
// Vytvořit žádost o podpis
$request = new GroupDocs\Signature\Model\Requests\createSignaturesRequest($settings);
// Vytvářejte podpisy
$response = $apiInstance->createSignatures($request);
echo "Response: ", $response->getFileInfo();
Ověřte podpisy QR kódu v PHP
Vygenerované podpisy QR kódu můžete snadno ověřit podle následujících kroků:
- Nejprve vytvořte instanci SignApi.
- Nastavte cestu k souboru PDF.
- Definujte VerifyQRCodeOptions.
- Zadejte typ podpisu, text a kód.
- Definujte VerifySettings a přiřaďte VerifyQRCodeOptions k VerifySettings.
- Poté vytvořte VerifySignatureRequest s VerifySettings.
- Nakonec získejte výsledky voláním metody verifySignatures().
Následující ukázka kódu ukazuje, jak ověřit podpisy QR kódu pomocí REST API v PHP.
// Tento příklad kódu ukazuje, jak ověřit podpisy kódu QR.
// Instance SignatureAPI
$apiInstance = new GroupDocs\Signature\SignApi($configuration);
// Vstupní cesta k souboru
$fileInfo = new GroupDocs\Signature\Model\FileInfo();
$fileInfo->setFilePath("QR_out.pdf");
// Definujte nastavení ověření
$settings = new GroupDocs\Signature\Model\VerifySettings();
$settings->setFileInfo($fileInfo);
// Definujte možnosti ověření QR kódu
$options = new GroupDocs\Signature\Model\VerifyQRCodeOptions();
$options->setPage(1);
$options->setAllPages(false);
$options->setSignatureType(GroupDocs\Signature\Model\OptionsBase::SIGNATURE_TYPE_QR_CODE);
$options->setQRCodeType("QR");
$options->setText("This is sample QR.");
$settings->setOptions([$options]);
// Ověřte žádost o podpisy
$request = new GroupDocs\Signature\Model\Requests\VerifySignaturesRequest($settings);
// Ověřte podpisy
$response = $apiInstance->verifySignatures($request);
echo "Response: ", $response;
Vyzkoušejte online
Vyzkoušejte prosím následující bezplatný online nástroj pro podpis PDF, který je vyvinut pomocí výše uvedeného API. https://products.groupdocs.app/signature/pdf
Závěr
V tomto článku jsme se naučili, jak:
- generování QR kódu v PHP;
- podepsat PDF dokument pomocí QR kódu v PHP;
- ověřovat elektronické podpisy v PHP;
- programově nahrát soubor PDF do cloudu;
- stáhněte si podepsaný soubor PDF z cloudu.
Kromě toho se můžete dozvědět více o GroupDocs.Signature Cloud API pomocí dokumentace. Poskytujeme také sekci API Reference, která vám umožní vizualizovat a pracovat s našimi API přímo prostřednictvím prohlížeče. V případě jakýchkoliv nejasností nás neváhejte kontaktovat na fóru.