Я генерирую GIF штрих-код с помощью Pear Barcode2.
в настоящее время это работает, и я могу видеть изображение в виде файла GIF изображения. поэтому страница отображается не в формате HTML, а как отдельное изображение.
мой код:
$small_graph_height = 55;
$small_graph_width = 1.2;
$large_graph_height = 55;
$large_graph_width = 1.14;
$type = "gif";
$code = "code39";
$to_browser = TRUE;
include_once "application/libraries/Image/Barcode2.php";
$ticketno='TDN4993';
$productserial_str = empty($productserial_str) ? ucfirst($ticketno) : $productserial_str;
$productserial_type = $code;
$productserial_imgtype = $type;
$productserial_bSendToBrowser = $to_browser;
$productserial_height = $large_graph_height;
$productserial_width = $large_graph_width;
$productserial_img = Image_Barcode2::draw($productserial_str, $productserial_type, $productserial_imgtype, $productserial_bSendToBrowser, $productserial_height, $productserial_width);
ob_start();
imagepng($productserial_img);
$productserial_imgBase64 = base64_encode(ob_get_contents());
ob_end_clean();
imagedestroy($productserial_img);
$image= '<img class="ProductSerial" src="data:image/' . $productserial_imgtype . ';base64,' . $productserial_imgBase64 . '">';
echo $image;
я хочу сохранить это изображение непосредственно на жестком диске сервера, а не показывать его пользователю.
Я пытался использовать PHP imagegif, но ему не нравится тот факт, что $ image в строковом формате.
Любой совет будет приветствоваться. Спасибо как всегда
Если вам нужно сохранить образ на диск, вам нужно будет использовать imgpng()
функция.
Пример, который я получил от Вот.
imagepng($bc->draw($data, $type, 'png', false),'ur_image_location');
$small_graph_height = 55;
$small_graph_width = 1.2;
$large_graph_height = 55;
$large_graph_width = 1.14;
$type = "gif";
$code = "code39";
$to_browser = TRUE;
include_once "application/libraries/Image/Barcode2.php";
$ticketno='TDN4993';
$productserial_str = empty($productserial_str) ? ucfirst($ticketno) : $productserial_str;
$productserial_type = $code;
$productserial_imgtype = $type;
$productserial_bSendToBrowser = $to_browser;
$productserial_height = $large_graph_height;
$productserial_width = $large_graph_width;
$productserial_img = Image_Barcode2::draw($productserial_str, $productserial_type, $productserial_imgtype, $productserial_bSendToBrowser, $productserial_height, $productserial_width);
ob_start();
imagepng($productserial_img);
$png = ob_get_contents();
ob_end_clean();
file_put_contents('barcode.png', $png);
echo 'image saved to file barcode.png';