Advertisement
Guest User

Untitled

a guest
Sep 18th, 2019
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.59 KB | None | 0 0
  1. /**
  2.  * Метод сохраняет генерирует QR-код и сохраняет его в файл
  3.  * @param $text string Текст, который надо закодировать QR-кодом
  4.  * @return string
  5.  */
  6. function downloadQR($text) {
  7.     $ch = curl_init ("https://chart.googleapis.com/chart?chs=300x300&cht=qr&chl=$text&choe=UTF-8");
  8.     curl_setopt($ch, CURLOPT_HEADER, 0);
  9.     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  10.     curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
  11.     $raw=curl_exec($ch);
  12.     curl_close ($ch);
  13.  
  14.     // путь до файла куда сохраняем QR-код
  15.     $fileName = '/tmp/' . time() . '.png';
  16.  
  17.     if (file_exists($fileName)) {
  18.         unlink($fileName);
  19.     }
  20.  
  21.     // сохраняем QR-код в файл
  22.     $fp = fopen($fileName,'x');
  23.     fwrite($fp, $raw);
  24.     fclose($fp);
  25.  
  26.     return $fileName;
  27. }
  28.  
  29. // твоя картинка с билетом
  30. $src = imagecreatefromjpeg('bilet.jpg');
  31.  
  32. // твоя картинка с QR-кодом
  33. $dest = imagecreatefrompng(downloadQR('ТВОЙ_ТЕКСТ_ДЛЯ_QR_кода'));
  34.  
  35. // склеиваем две картинки. Здесь поиграйся с параметрами чтбы правильно расположить QR-код на исходной картинке
  36. imagecopymerge($dest, $src, 0, 0, 0, 0, 0, 0, 0);
  37.  
  38. // после этого в $dest будет находится финальное изображение
  39. // дальше используй imagejpeg или imagepng для того чтобы сохранить $dest в конечный файл
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement