Vygenerujte QR kód pro podepsání PDF pomocí REST API v PHP.

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

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:

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ů:

  1. Nejprve vytvořte instanci SignApi.
  2. Dále zadejte cestu k vstupnímu souboru PDF.
  3. Poté nastavte cestu k výstupnímu souboru.
  4. Dále inicializujte objekt SignQRCodeOptions.
  5. Poté nastavte QRCodeType na „QR“. Navíc nastavte text a jeho polohu.
  6. Volitelně nastavte možnosti, jako je Page, RotationAngle, HorizontalAlignment, Border, Padding atd.
  7. Poté vytvořte CreateSignaturesRequest s definovaným SignSettings.
  8. 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();
Vygenerujte QR kód pro podepsání PDF pomocí REST API v PHP.

Vygenerujte QR kód pro podepsání PDF pomocí REST API v PHP.

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();
Vygenerujte aztécký QR kód pro podepisování PDF v PHP.

Vygenerujte aztécký kód pro podepisování PDF v PHP.

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();
Vytvořte DataMatrix QR kód pro podepisování PDF v PHP.

Vytvořte kód DataMatrix pro podepisování PDF v PHP.

Ověřte podpisy QR kódu v PHP

Vygenerované podpisy QR kódu můžete snadno ověřit podle následujících kroků:

  1. Nejprve vytvořte instanci SignApi.
  2. Nastavte cestu k souboru PDF.
  3. Definujte VerifyQRCodeOptions.
  4. Zadejte typ podpisu, text a kód.
  5. Definujte VerifySettings a přiřaďte VerifyQRCodeOptions k VerifySettings.
  6. Poté vytvořte VerifySignatureRequest s VerifySettings.
  7. 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.

Viz také