สร้างรหัส QR เพื่อลงนาม PDF โดยใช้ REST API ใน PHP

QR Code (Quick Response code) เป็นบาร์โค้ดประเภท Matrix ที่เครื่องอ่านได้ในรูปแบบของอาร์เรย์ของสี่เหลี่ยมขาวดำ เป็นฉลากแบบออปติกที่มีข้อมูลที่สามารถอ่านได้โดยใช้เครื่องอ่าน QR เราสามารถสร้างรหัส QR โดยทางโปรแกรมและลงนามในเอกสารและรูปภาพบนคลาวด์ ในบทความนี้ เราจะเรียนรู้วิธีสร้างรหัส QR เพื่อเซ็นเอกสาร PDF โดยใช้ REST API ใน PHP

หัวข้อต่อไปนี้จะครอบคลุมในบทความนี้:

QR Code Generator REST API และ PHP SDK

สำหรับการสร้างรหัส QR เพื่อลงนามในเอกสาร PDF เราจะใช้ API ของ PHP SDK of GroupDocs.Signature Cloud อนุญาตให้สร้าง ตรวจสอบ และค้นหาลายเซ็นประเภทต่างๆ เช่น รูปภาพ ‎บาร์โค้ด QR-Code ลายเซ็นแบบข้อความ ดิจิทัล และตราประทับ รองรับประเภทรหัส QR ต่อไปนี้:

  • รหัสแอซเท็ก
  • รหัสดาต้าเมทริกซ์
  • GS1 DataMatrix
  • GS1 QR
  • คิวอาร์

โปรดติดตั้งโดยใช้คำสั่งต่อไปนี้ในคอนโซล:

composer require groupdocscloud/groupdocs-signature-cloud

หลังการติดตั้ง โปรดใช้ autoload ของนักแต่งเพลงเพื่อใช้ SDK ดังที่แสดงด้านล่าง:

require_once('vendor/autoload.php');

โปรด รับรหัสลูกค้าและข้อมูลลับจากแดชบอร์ด ก่อนทำตามขั้นตอนดังกล่าว เมื่อคุณมี ID และรหัสลับของคุณแล้ว ให้เพิ่มรหัสตามที่แสดงด้านล่าง:

// ตัวอย่างโค้ดนี้สาธิตวิธีเพิ่มรหัสลูกค้าและข้อมูลลับในโค้ด
static $ClientId = '659fe7da-715b-4744-a0f7-cf469a392b73';
static $ClientSecret = 'b377c36cfa28fa69960ebac6b6e36421';

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

// เริ่มต้นการกำหนดค่า
$configuration = new GroupDocs\Signature\Configuration();

// การตั้งค่าการกำหนดค่า
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);
$configuration->setApiBaseUrl(self::$ApiBaseUrl);

สร้างรหัส QR เพื่อลงนาม PDF โดยใช้ REST API ใน PHP

เราสามารถสร้างรหัส QR เพื่อลงนามในเอกสาร PDF บนคลาวด์โดยทำตามขั้นตอนง่าย ๆ ที่กล่าวถึงด้านล่าง:

อัปโหลดเอกสาร

ประการแรก เราจะอัปโหลดเอกสาร PDF ไปยังคลาวด์โดยใช้ตัวอย่างโค้ดที่ระบุด้านล่าง:

// ตัวอย่างโค้ดนี้สาธิตวิธีอัปโหลดไฟล์ PDF ไปยังระบบคลาวด์
// เริ่มต้น API
$apiInstance = new GroupDocs\Signature\FileApi($configuration);

// เส้นทางไฟล์อินพุต
$file = "C:\\Files\\Signature\\sample.pdf";

// อัปโหลดคำขอไฟล์
$request = new GroupDocs\Signature\Model\Requests\UploadFileRequest("sample.pdf", $file, self::$MyStorage, null);

// อัพโหลดไฟล์
$response = $apiInstance->uploadFile($request);

ด้วยเหตุนี้ ไฟล์ PDF ที่อัปโหลดจะอยู่ใน ส่วนไฟล์ ของแดชบอร์ดบนระบบคลาวด์

สร้าง QR Code เพื่อลงชื่อ PDF ใน PHP

เราสามารถสร้างรหัส QR โดยทางโปรแกรมและลงนามในเอกสาร PDF ที่อัปโหลดโดยทำตามขั้นตอนด้านล่าง:

  1. ขั้นแรก สร้างอินสแตนซ์ของ SignApi
  2. ถัดไป ระบุเส้นทางไฟล์ PDF อินพุต
  3. จากนั้น ตั้งค่าพาธของไฟล์เอาต์พุต
  4. ถัดไป เริ่มต้นวัตถุ SignQRCodeOptions
  5. จากนั้นตั้งค่า QRCodeType เป็น “QR” นอกจากนี้ ตั้งค่าข้อความและตำแหน่งของข้อความ
  6. ตั้งค่าตัวเลือกเช่น Page, RotationAngle, HorizontalAlignment, Border, Padding เป็นต้น
  7. หลังจากนั้น สร้าง createSignaturesRequest ด้วย SignSettings ที่กำหนดไว้
  8. สุดท้าย รับผลลัพธ์โดยเรียกเมธอด createSignatures()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างโค้ด QR และลงนามในเอกสาร PDF โดยใช้ REST API ใน PHP

// ตัวอย่างรหัสนี้สาธิตวิธีสร้างรหัส QR เพื่อลงนามในเอกสาร PDF
// อินสแตนซ์ SignatureAPI
$apiInstance = new GroupDocs\Signature\SignApi($configuration);

// เส้นทางไฟล์อินพุต
$fileInfo = new GroupDocs\Signature\Model\FileInfo();
$fileInfo->setFilePath("sample.pdf");

// กำหนด SignSettings
$settings = new GroupDocs\Signature\Model\SignSettings();
$settings->setFileInfo($fileInfo);

// กำหนดตัวเลือกการบันทึก
$saveOptions = new GroupDocs\Signature\Model\SaveOptions();
$saveOptions->setOutputFilePath("QR_out.pdf");
$settings->setSaveOptions($saveOptions);

// กำหนดตัวเลือกการลงชื่อรหัส QR
$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);

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

// ชายแดน
$border = new GroupDocs\Signature\Model\ชายแดนLine();
$border->setสี($color);
$border->setVisible(true);
$border->setWeight(12);
$options->setชายแดน($border);

// การขยายความ
$padding = new GroupDocs\Signature\Model\การขยายความ();
$padding->setAll(5);
$options->setMargin($padding);
$options->setMarginMeasureType(GroupDocs\Signature\Model\SignTextOptions::MARGIN_MEASURE_TYPE_PIXELS);

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

// สร้างคำขอลายเซ็น
$request = new GroupDocs\Signature\Model\Requests\createSignaturesRequest($settings);

// สร้างลายเซ็น
$response = $apiInstance->createSignatures($request);

echo "Response: ", $response->getFileInfo();
สร้างรหัส QR เพื่อลงนาม PDF โดยใช้ REST API ใน PHP

สร้างรหัส QR เพื่อลงนาม PDF โดยใช้ REST API ใน PHP

ดาวน์โหลด PDF ที่ลงนามด้วย QR Code

ตัวอย่างโค้ดด้านบนจะบันทึกไฟล์ PDF ที่ลงชื่อไว้บนคลาวด์ สามารถดาวน์โหลดได้โดยใช้ตัวอย่างโค้ดต่อไปนี้:

// ตัวอย่างโค้ดนี้สาธิตวิธีดาวน์โหลดไฟล์ PDF จากระบบคลาวด์
// เริ่มต้น API
$apiInstance = new GroupDocs\Signature\FileApi($configuration);

// ดาวน์โหลดไฟล์คำขอ
$request = new GroupDocs\Signature\Model\Requests\DownloadFileRequest("Aztec_QR_out.pdf", self::$MyStorage, null);

// ดาวน์โหลดไฟล์
$response = $apiInstance->downloadFile($request);

สร้าง Aztec Code เพื่อลงชื่อ PDF ใน PHP

รหัส Aztec เป็นรหัส QR สองมิติ (2D) ที่พิมพ์ง่ายและสแกนง่ายที่สุด เราสามารถสร้างรหัส Aztec เพื่อลงนามในเอกสาร PDF ที่อัปโหลดโดยทำตามขั้นตอนที่กล่าวถึงก่อนหน้านี้ อย่างไรก็ตาม เราเพียงแค่ต้องตั้งค่า QRCodeType เป็น “Aztec”

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างโค้ด Aztec และลงนามในเอกสาร PDF โดยใช้ REST API ใน PHP

// ตัวอย่างโค้ดนี้สาธิตวิธีสร้างโค้ด Aztec ใน PHP
// อินสแตนซ์ SignatureAPI
$apiInstance = new GroupDocs\Signature\SignApi($configuration);

// เส้นทางไฟล์อินพุต
$fileInfo = new GroupDocs\Signature\Model\FileInfo();
$fileInfo->setFilePath("sample.pdf");

// กำหนด SignSettings
$settings = new GroupDocs\Signature\Model\SignSettings();
$settings->setFileInfo($fileInfo);

// กำหนดตัวเลือกการบันทึก
$saveOptions = new GroupDocs\Signature\Model\SaveOptions();
$saveOptions->setOutputFilePath("QR_out.pdf");
$settings->setSaveOptions($saveOptions);

// กำหนดตัวเลือกการลงชื่อรหัส QR
$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);

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

// ชายแดน
$border = new GroupDocs\Signature\Model\ชายแดนLine();
$border->setสี($color);
$border->setVisible(true);
$border->setWeight(12);
$options->setชายแดน($border);

// การขยายความ
$padding = new GroupDocs\Signature\Model\การขยายความ();
$padding->setAll(2);
$options->setMargin($padding);
$options->setMarginMeasureType(GroupDocs\Signature\Model\SignTextOptions::MARGIN_MEASURE_TYPE_PIXELS);

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

// สร้างคำขอลายเซ็น
$request = new GroupDocs\Signature\Model\Requests\createSignaturesRequest($settings);

// สร้างลายเซ็น
$response = $apiInstance->createSignatures($request);

echo "Response: ", $response->getFileInfo();
สร้าง Aztec QR Code เพื่อลงชื่อ PDF ใน PHP

สร้าง Aztec Code เพื่อลงชื่อ PDF ใน PHP

สร้างรหัส DataMatrix เพื่อลงนาม PDF ใน PHP

เรายังสามารถสร้างโค้ด DataMatrix ได้โดยทำตามขั้นตอนที่กล่าวถึงก่อนหน้านี้ อย่างไรก็ตาม เราต้องตั้งค่า QRCodeType เป็น “DataMatrix”

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างโค้ด DataMatrix และลงนามในเอกสาร PDF โดยใช้ REST API ใน PHP

// ตัวอย่างโค้ดนี้สาธิตวิธีสร้างโค้ด DataMatrix ใน PHP
// อินสแตนซ์ SignatureAPI
$apiInstance = new GroupDocs\Signature\SignApi($configuration);

// เส้นทางไฟล์อินพุต
$fileInfo = new GroupDocs\Signature\Model\FileInfo();
$fileInfo->setFilePath("sample.pdf");

// กำหนด SignSettings
$settings = new GroupDocs\Signature\Model\SignSettings();
$settings->setFileInfo($fileInfo);

// กำหนดตัวเลือกการบันทึก
$saveOptions = new GroupDocs\Signature\Model\SaveOptions();
$saveOptions->setOutputFilePath("QR_out.pdf");
$settings->setSaveOptions($saveOptions);

// กำหนดตัวเลือกการลงชื่อรหัส QR
$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);

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

// ชายแดน
$border = new GroupDocs\Signature\Model\ชายแดนLine();
$border->setสี($color);
$border->setVisible(true);
$border->setWeight(12);
$options->setชายแดน($border);

// การขยายความ
$padding = new GroupDocs\Signature\Model\การขยายความ();
$padding->setAll(2);
$options->setMargin($padding);
$options->setMarginMeasureType(GroupDocs\Signature\Model\SignTextOptions::MARGIN_MEASURE_TYPE_PIXELS);

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

// สร้างคำขอลายเซ็น
$request = new GroupDocs\Signature\Model\Requests\createSignaturesRequest($settings);

// สร้างลายเซ็น
$response = $apiInstance->createSignatures($request);

echo "Response: ", $response->getFileInfo();
สร้าง DataMatrix QR Code เพื่อลงชื่อ PDF ใน PHP

สร้างรหัส DataMatrix เพื่อลงนาม PDF ใน PHP

ตรวจสอบลายเซ็น QR Code ใน PHP

คุณสามารถตรวจสอบลายเซ็นรหัส QR ที่สร้างขึ้นได้อย่างง่ายดายโดยทำตามขั้นตอนด้านล่าง:

  1. ขั้นแรก สร้างอินสแตนซ์ของ SignApi
  2. กำหนดเส้นทางไฟล์ PDF
  3. กำหนดตัวเลือกการยืนยัน QRCode
  4. ระบุประเภทลายเซ็น ข้อความ และรหัส
  5. กำหนด VerifySettings และกำหนด VerifyQRCodeOptions ให้กับ VerifySettings
  6. หลังจากนั้น สร้าง VerifySignatureRequest ด้วย VerifySettings
  7. สุดท้าย รับผลลัพธ์โดยเรียกเมธอด verifySignatures()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการตรวจสอบลายเซ็นโค้ด QR โดยใช้ REST API ใน PHP

// ตัวอย่างโค้ดนี้สาธิตวิธีการตรวจสอบลายเซ็นคิวอาร์โค้ด
// อินสแตนซ์ SignatureAPI
$apiInstance = new GroupDocs\Signature\SignApi($configuration);

// เส้นทางไฟล์อินพุต
$fileInfo = new GroupDocs\Signature\Model\FileInfo();
$fileInfo->setFilePath("QR_out.pdf");

// กำหนดการตั้งค่าการตรวจสอบ
$settings = new GroupDocs\Signature\Model\VerifySettings();
$settings->setFileInfo($fileInfo);

// กำหนดตัวเลือกยืนยันรหัส 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]);

// ตรวจสอบคำขอลายเซ็น
$request = new GroupDocs\Signature\Model\Requests\VerifySignaturesRequest($settings);

// ตรวจสอบลายเซ็น
$response = $apiInstance->verifySignatures($request);

echo "Response: ", $response;

ลองออนไลน์

โปรดลองใช้เครื่องมือลายเซ็น PDF ออนไลน์ฟรีต่อไปนี้ ซึ่งพัฒนาโดยใช้ API ข้างต้น https://products.groupdocs.app/signature/pdf

บทสรุป

ในบทความนี้ เราได้เรียนรู้วิธีการ:

  • สร้างรหัส QR ใน PHP;
  • ลงนามในเอกสาร PDF ด้วยรหัส QR ใน PHP;
  • ตรวจสอบลายเซ็นอิเล็กทรอนิกส์ใน PHP;
  • อัปโหลดไฟล์ PDF ไปยังคลาวด์โดยทางโปรแกรม
  • ดาวน์โหลดไฟล์ PDF ที่ลงนามแล้วจากคลาวด์

นอกจากนี้ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ GroupDocs.Signature Cloud API โดยใช้ เอกสารประกอบ เรายังมีส่วน API Reference ที่ช่วยให้คุณแสดงภาพและโต้ตอบกับ API ของเราได้โดยตรงผ่านเบราว์เซอร์ ในกรณีที่มีความคลุมเครือ โปรดติดต่อเราได้ที่ ฟอรัม

ดูสิ่งนี้ด้วย