Wygeneruj kod QR do podpisania PDF za pomocą REST API w PHP.

Kod QR (kod szybkiej odpowiedzi) to rodzaj czytelnego maszynowo kodu kreskowego Matrix w postaci tablicy czarno-białych kwadratów. Jest to etykieta optyczna zawierająca informacje czytelne za pomocą czytnika QR. Możemy programowo generować kody QR i podpisywać dokumenty i obrazy w chmurze. W tym artykule dowiemy się, jak wygenerować kod QR do podpisywania dokumentów PDF za pomocą REST API w PHP.

W tym artykule zostaną omówione następujące tematy:

QR Code Generator REST API i PHP SDK

Do generowania kodów QR do podpisywania dokumentów PDF będziemy używać PHP SDK of GroupDocs.Signature Cloud API. Umożliwia tworzenie, weryfikowanie i wyszukiwanie różnego rodzaju podpisów, takich jak podpisy graficzne, kody kreskowe, kody QR, tekstowe, cyfrowe i pieczątkowe. Obsługuje następujące typy kodów QR:

  • Kodeks Azteków
  • Kod DataMatrix
  • GS1 DataMatrix
  • GS1 QR
  • QR

Zainstaluj go za pomocą następującego polecenia w konsoli:

composer require groupdocscloud/groupdocs-signature-cloud

Po instalacji użyj autoload Composers, aby użyć SDK, jak pokazano poniżej:

require_once('vendor/autoload.php');

Proszę uzyskaj swój identyfikator klienta i klucz tajny z pulpitu nawigacyjnego przed wykonaniem wspomnianych kroków. Po uzyskaniu identyfikatora i tajnego kodu dodaj kod, jak pokazano poniżej:

// Ten przykład kodu pokazuje, jak dodać identyfikator klienta i klucz tajny w kodzie.
static $ClientId = '659fe7da-715b-4744-a0f7-cf469a392b73';
static $ClientSecret = 'b377c36cfa28fa69960ebac6b6e36421';

static $ApiBaseUrl = 'https://api.groupdocs.cloud';
static $MyStorage = '';

// Zainicjuj konfigurację
$configuration = new GroupDocs\Signature\Configuration();

// Ustawianie konfiguracji
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);
$configuration->setApiBaseUrl(self::$ApiBaseUrl);

Wygeneruj kod QR do podpisania PDF za pomocą REST API w PHP

Możemy wygenerować kod QR do podpisywania dokumentów PDF w chmurze, wykonując proste czynności wymienione poniżej:

Prześlij dokument

Najpierw prześlemy dokument PDF do chmury, korzystając z przykładowego kodu podanego poniżej:

// Ten przykład kodu demonstruje, jak przekazać plik PDF do chmury.
// Zainicjuj interfejs API
$apiInstance = new GroupDocs\Signature\FileApi($configuration);

// Wprowadź ścieżkę pliku
$file = "C:\\Files\\Signature\\sample.pdf";

// Prześlij prośbę o plik
$request = new GroupDocs\Signature\Model\Requests\UploadFileRequest("sample.pdf", $file, self::$MyStorage, null);

// Przesyłanie pliku
$response = $apiInstance->uploadFile($request);

W rezultacie przesłany plik PDF będzie dostępny w sekcji plików pulpitu nawigacyjnego w chmurze.

Wygeneruj kod QR do podpisania pliku PDF w PHP

Możemy programowo wygenerować kod QR i podpisać przesłany dokument PDF, wykonując czynności podane poniżej:

  1. Najpierw utwórz instancję SignApi.
  2. Następnie podaj ścieżkę wejściowego pliku PDF.
  3. Następnie ustaw ścieżkę pliku wyjściowego.
  4. Następnie zainicjuj obiekt SignQRCodeOptions.
  5. Następnie ustaw QRCodeType na „QR”. Ponadto ustaw tekst i jego położenie.
  6. Opcjonalnie ustaw opcje, takie jak Page, RotationAngle, HorizontalAlignment, Border, Padding itp.
  7. Następnie utwórz createSignaturesRequest ze zdefiniowanymi parametrami SignSettings.
  8. Na koniec uzyskaj wyniki, wywołując metodę createSignatures().

Poniższy przykładowy kod pokazuje, jak wygenerować kod QR i podpisać dokument PDF przy użyciu interfejsu API REST w języku PHP.

// Ten przykład kodu pokazuje, jak wygenerować kod QR w celu podpisania dokumentu PDF.
// Instancja SignatureAPI
$apiInstance = new GroupDocs\Signature\SignApi($configuration);

// Wprowadź ścieżkę pliku
$fileInfo = new GroupDocs\Signature\Model\FileInfo();
$fileInfo->setFilePath("sample.pdf");

// Zdefiniuj ustawienia znaku
$settings = new GroupDocs\Signature\Model\SignSettings();
$settings->setFileInfo($fileInfo);

// Zdefiniuj opcje zapisu
$saveOptions = new GroupDocs\Signature\Model\SaveOptions();
$saveOptions->setOutputFilePath("QR_out.pdf");
$settings->setSaveOptions($saveOptions);

// Zdefiniuj opcje kodu QR znaku
$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);

// Kolor
$color = new GroupDocs\Signature\Model\Kolor();
$color->setWeb("Black");

// Granica
$border = new GroupDocs\Signature\Model\GranicaLine();
$border->setKolor($color);
$border->setVisible(true);
$border->setWeight(12);
$options->setGranica($border);

// Wyściółka
$padding = new GroupDocs\Signature\Model\Wyściółka();
$padding->setAll(5);
$options->setMargin($padding);
$options->setMarginMeasureType(GroupDocs\Signature\Model\SignTextOptions::MARGIN_MEASURE_TYPE_PIXELS);

$settings->setOptions([$options]);

// Utwórz prośbę o podpis
$request = new GroupDocs\Signature\Model\Requests\createSignaturesRequest($settings);

// Twórz podpisy
$response = $apiInstance->createSignatures($request);

echo "Response: ", $response->getFileInfo();
Wygeneruj kod QR do podpisania PDF za pomocą REST API w PHP.

Wygeneruj kod QR do podpisania PDF za pomocą REST API w PHP.

Pobierz plik PDF podpisany kodem QR

Powyższy przykładowy kod zapisze podpisany plik PDF w chmurze. Można go pobrać, korzystając z następującego przykładowego kodu:

// Ten przykład kodu pokazuje, jak pobrać plik PDF z chmury.
// Zainicjuj interfejs API
$apiInstance = new GroupDocs\Signature\FileApi($configuration);

// Pobierz prośbę o plik
$request = new GroupDocs\Signature\Model\Requests\DownloadFileRequest("Aztec_QR_out.pdf", self::$MyStorage, null);

// Pobieranie pliku
$response = $apiInstance->downloadFile($request);

Wygeneruj kod Aztec do podpisania pliku PDF w PHP

Kod Aztec to najłatwiejszy do wydrukowania i zeskanowania dwuwymiarowy (2D) kod QR. Możemy wygenerować kod Aztec do podpisania przesłanego dokumentu PDF, wykonując czynności wymienione wcześniej. Jednak musimy tylko ustawić QRCodeType na „Aztec”.

Poniższy przykładowy kod pokazuje, jak wygenerować kod Aztec i podpisać dokument PDF przy użyciu interfejsu API REST w języku PHP.

// Ten przykład kodu pokazuje, jak wygenerować kod Aztec w PHP.
// Instancja SignatureAPI
$apiInstance = new GroupDocs\Signature\SignApi($configuration);

// Wprowadź ścieżkę pliku
$fileInfo = new GroupDocs\Signature\Model\FileInfo();
$fileInfo->setFilePath("sample.pdf");

// Zdefiniuj ustawienia znaku
$settings = new GroupDocs\Signature\Model\SignSettings();
$settings->setFileInfo($fileInfo);

// Zdefiniuj opcje zapisu
$saveOptions = new GroupDocs\Signature\Model\SaveOptions();
$saveOptions->setOutputFilePath("QR_out.pdf");
$settings->setSaveOptions($saveOptions);

// Zdefiniuj opcje kodu QR znaku
$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);

// Kolor
$color = new GroupDocs\Signature\Model\Kolor();
$color->setWeb("Black");

// Granica
$border = new GroupDocs\Signature\Model\GranicaLine();
$border->setKolor($color);
$border->setVisible(true);
$border->setWeight(12);
$options->setGranica($border);

// Wyściółka
$padding = new GroupDocs\Signature\Model\Wyściółka();
$padding->setAll(2);
$options->setMargin($padding);
$options->setMarginMeasureType(GroupDocs\Signature\Model\SignTextOptions::MARGIN_MEASURE_TYPE_PIXELS);

$settings->setOptions([$options]);

// Utwórz prośbę o podpis
$request = new GroupDocs\Signature\Model\Requests\createSignaturesRequest($settings);

// Twórz podpisy
$response = $apiInstance->createSignatures($request);

echo "Response: ", $response->getFileInfo();
Wygeneruj Aztec QR Code do podpisania PDF w PHP.

Wygeneruj kod Aztec do podpisania pliku PDF w PHP.

Utwórz kod DataMatrix do podpisywania plików PDF w PHP

Możemy również wygenerować kod DataMatrix, wykonując kroki wymienione wcześniej. Jednak musimy tylko ustawić QRCodeType na „DataMatrix”.

Poniższy przykładowy kod pokazuje, jak wygenerować kod DataMatrix i podpisać dokument PDF przy użyciu interfejsu API REST w języku PHP.

// Ten przykład kodu demonstruje sposób generowania kodu DataMatrix w języku PHP.
// Instancja SignatureAPI
$apiInstance = new GroupDocs\Signature\SignApi($configuration);

// Wprowadź ścieżkę pliku
$fileInfo = new GroupDocs\Signature\Model\FileInfo();
$fileInfo->setFilePath("sample.pdf");

// Zdefiniuj ustawienia znaku
$settings = new GroupDocs\Signature\Model\SignSettings();
$settings->setFileInfo($fileInfo);

// Zdefiniuj opcje zapisu
$saveOptions = new GroupDocs\Signature\Model\SaveOptions();
$saveOptions->setOutputFilePath("QR_out.pdf");
$settings->setSaveOptions($saveOptions);

// Zdefiniuj opcje kodu QR znaku
$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);

// Kolor
$color = new GroupDocs\Signature\Model\Kolor();
$color->setWeb("Black");

// Granica
$border = new GroupDocs\Signature\Model\GranicaLine();
$border->setKolor($color);
$border->setVisible(true);
$border->setWeight(12);
$options->setGranica($border);

// Wyściółka
$padding = new GroupDocs\Signature\Model\Wyściółka();
$padding->setAll(2);
$options->setMargin($padding);
$options->setMarginMeasureType(GroupDocs\Signature\Model\SignTextOptions::MARGIN_MEASURE_TYPE_PIXELS);

$settings->setOptions([$options]);

// Utwórz prośbę o podpis
$request = new GroupDocs\Signature\Model\Requests\createSignaturesRequest($settings);

// Twórz podpisy
$response = $apiInstance->createSignatures($request);

echo "Response: ", $response->getFileInfo();
Utwórz kod QR DataMatrix do podpisywania plików PDF w PHP.

Utwórz kod DataMatrix do podpisywania plików PDF w PHP.

Zweryfikuj podpisy QR Code w PHP

Możesz łatwo zweryfikować wygenerowane podpisy kodu QR, wykonując poniższe czynności:

  1. Najpierw utwórz instancję SignApi.
  2. Ustaw ścieżkę pliku PDF.
  3. Zdefiniuj VerifyQRCodeOptions.
  4. Podaj typ podpisu, tekst i kod.
  5. Zdefiniuj VerifySettings i przypisz VerifyQRCodeOptions do VerifySettings.
  6. Następnie utwórz VerifySignatureRequest za pomocą VerifySettings.
  7. Na koniec uzyskaj wyniki, wywołując metodę verifySignatures().

Poniższy przykładowy kod pokazuje, jak zweryfikować podpisy kodu QR przy użyciu interfejsu API REST w języku PHP.

// Ten przykład kodu pokazuje, jak zweryfikować podpisy kodu QR.
// Instancja SignatureAPI
$apiInstance = new GroupDocs\Signature\SignApi($configuration);

// Wprowadź ścieżkę pliku
$fileInfo = new GroupDocs\Signature\Model\FileInfo();
$fileInfo->setFilePath("QR_out.pdf");

// Zdefiniuj ustawienia weryfikacji
$settings = new GroupDocs\Signature\Model\VerifySettings();
$settings->setFileInfo($fileInfo);

// Zdefiniuj opcje weryfikacji kodu QR
$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]);

// Zweryfikuj żądanie podpisów
$request = new GroupDocs\Signature\Model\Requests\VerifySignaturesRequest($settings);

// Weryfikuj podpisy
$response = $apiInstance->verifySignatures($request);

echo "Response: ", $response;

Wypróbuj online

Wypróbuj następujące bezpłatne narzędzie do podpisu PDF online, które zostało opracowane przy użyciu powyższego interfejsu API. https://products.groupdocs.app/signature/pdf

Wniosek

W tym artykule dowiedzieliśmy się, jak:

  • wygenerować kod QR w PHP;
  • podpisz dokument PDF kodem QR w PHP;
  • weryfikować podpisy elektroniczne w PHP;
  • programowo przesłać plik PDF do chmury;
  • pobierz podpisany plik PDF z chmury.

Poza tym możesz dowiedzieć się więcej o GroupDocs.Signature Cloud API korzystając z dokumentacji. Udostępniamy również sekcję Informacje o interfejsach API, która umożliwia wizualizację i interakcję z naszymi interfejsami API bezpośrednio w przeglądarce. W przypadku jakichkolwiek niejasności prosimy o kontakt na forum.

Zobacz też