Есть скрипт, который генерирует картинку:
файл image.php
<?php
include('Barcode.php');
//$code = '01062001'; // barcode, of course ;)
//global $db,$auth;
//$code = $db->selectCell('select code from ?_schools where user = ?', $auth->id);
$code = $_GET['code'];
$im = imagecreatetruecolor(170, 60);
$black = ImageColorAllocate($im,0x00,0x00,0x00);
$white = ImageColorAllocate($im,0xff,0xff,0xff);
imagefilledrectangle($im, 0, 0, 300, 300, $white);
$data = Barcode::gd($im, $black, 75, 30, 0, 'code11', array('code'=>$code), 2, 50);
header('Content-type: image/gif');
imagegif($im);
imagedestroy($im);
?>
вывожу картинку так:
файл form.php
<?
global $db,$auth;
$codes = $db->selectCell('select code from ?_schools where user = ?', $auth->id);
?>
<center><img src="scripts/Users/ajax/barcode/image.php?code=<? echo $codes;?>" />
<?
echo "<br><center>$codes</center>";
?>
Затем сохраняю картинку на сервер:
файл form.php
<?
$url="http://registration.gra-sonyashnyk.com.ua/scripts/Users/ajax/barcode/image.php?code= ".$codes;
$img=file_get_contents($url);
//$arr=parse_url ($url);
$name=basename("$codes");
file_put_contents("images/barcodes/".$name.".gif",$img);
?>
теперь нужно отправить эту картинку в excel файл:
$sheet->insertBitmap(0, 7, $_SERVER[DOCUMENT_ROOT]."/images/barcodes/".$sc['code'].".gif");
Проблема такая:
gif изображение не могу импортировать в excel. импортируется только изображения формата bmp (я пробовал вывести, и все работало). Но у меня не получается вставить gif. Подскажите, как мне сохранять картинки в формате bmp или вставить картинку в excel в формате gif. Заранее спасибо)
Спустя 17 минут, 47 секунд (8.08.2012 - 21:11) Игорь_Vasinsky написал(а):
Цитата |
header('Content-type: image/gif'); |
header("Content-type: " . image_type_to_mime_type(IMAGETYPE_WBMP));
нее?
Спустя 15 минут, 52 секунды (8.08.2012 - 21:26) Александр Мутылев написал(а):
Цитата (Игорь_Vasinsky @ 8.08.2012 - 19:11) | ||
header("Content-type: " . image_type_to_mime_type(IMAGETYPE_WBMP)); нее? |
а с этим что делать:
imagegif($im);?
Спустя 2 минуты, 13 секунд (8.08.2012 - 21:29) Игорь_Vasinsky написал(а):
незнай.. наверно http://www.php.net/manual/ru/function.imagewbmp.php
Спустя 1 минута, 13 секунд (8.08.2012 - 21:30) Александр Мутылев написал(а):
Цитата (Игорь_Vasinsky @ 8.08.2012 - 19:29) |
незнай.. наверно http://www.php.net/manual/ru/function.imagewbmp.php |
ок, сейчас попробую) спасибо)
Спустя 14 часов, 39 минут, 10 секунд (9.08.2012 - 12:09) Александр Мутылев написал(а):
А не подскажите, что нужно сделать что-бы эта строчка:
выводила в excel gif изображения?
Я так понимаю, что нужно изменить это insertBitmap. но как?
$sheet->insertBitmap(0, 7, $_SERVER[DOCUMENT_ROOT]."/images/barcodes/".$sc['code'].".bmp");
выводила в excel gif изображения?
Я так понимаю, что нужно изменить это insertBitmap. но как?
Спустя 13 минут, 8 секунд (9.08.2012 - 12:22) Игорь_Vasinsky написал(а):
Нее?
$sheet->insertBitmap(0, 7, file_get_contents($_SERVER[DOCUMENT_ROOT]."/images/barcodes/".$sc['code'].".bmp"));
Спустя 11 минут, 16 секунд (9.08.2012 - 12:33) Александр Мутылев написал(а):
Цитата (Игорь_Vasinsky @ 9.08.2012 - 10:22) |
Нее?$sheet->insertBitmap(0, 7, file_get_contents($_SERVER[DOCUMENT_ROOT]."/images/barcodes/".$sc['code'].".bmp")); |
Это было бы замечательно)), но так файл сохраняется в формате gif, при экспорте в excel он вызывает ошибку. то-есть если файл gif то после точки можно ставить только gif. я так пробовал. даже photoshop не открывает gif, если после точки bmp.
Вообще не знаю, что делать
![unsure.gif](http://phpforum.su/html/emoticons/unsure.gif)
Спустя 1 минута, 15 секунд (9.08.2012 - 12:35) Игорь_Vasinsky написал(а):
или так
файл должен быть в формате BMP, это не значит что ему можно дорисовать расширение и радоваться.
файл должен быть в формате BMP, это не значит что ему можно дорисовать расширение и радоваться.
$img = "data:image/jpeg;base64," . base64_encode(file_get_contents($_SERVER[DOCUMENT_ROOT]."/images/barcodes/".$sc['code']));
$sheet->insertBitmap(0, 7, $img);
Спустя 12 минут, 3 секунды (9.08.2012 - 12:47) Александр Мутылев написал(а):
Цитата (Игорь_Vasinsky @ 9.08.2012 - 10:35) |
или так файл должен быть в формате BMP, это не значит что ему можно дорисовать расширение и радоваться. $img = "data:image/jpeg;base64," . base64_encode(file_get_contents($_SERVER[DOCUMENT_ROOT]."/images/barcodes/".$sc['code'])); |
Ошибка:
Warning: filesize() [function.filesize]: stat failed for data:image/jpeg;base64,R0lGODdhqgA8AIAAAAQCBPz+/CwAAAAAqgA8AAAC/oyPqcvtD6OctNqLs968+w+G4kiW5omm6sqaAGC8MRy8cm3P883Ttp/D7YC9oU6 IKyJ/xmXw1lQyD9CIlIg9Tq89btZ5jQLF3qNYGzRbx+Bvl/0+J910dHgu39LyXzXkrlfmRAb3ZMiHiKcYh5Q45fcAaChIebhoqWdXSKipltmGUPW3eVnZeckJOoiq+vnpmNa4hpbKWHlbKKlbxwpbJRpJG pgrPEnMt0tbeizr2ic7qjx8ikuNee3L+8rKCOmQzI29bG3ayuyslB26N7s6bU5+fg1eDU8l/ggdLG1sHf9vz5a8curuUaA3r5jAWtoaMpRT0FsDhOUE1lsYkA7B/nBNJDKgKA+gxZAZH/biqMjjApD+zF10iPIdxoj6vilsyNIlSYwjW9IEZpMfT3z9dLYcanKbs441J95E9jTcUIQief1kF81dUaTjjJaMudUq2F9Y92mdGhUdzrQDSV49yLaix rZHYcoUuzRl049xd86tWvAlxLHsgDoVuhYx1MVn+/okvA6uYqmOvXLNe3cw5liG+U5W+zkhY7lJLb2dkPNy2NJULeMlSlZy49F0XQeuPROyQdSVVaOlXZc1m9MSUttd3dV379fgVCowfluwbulKYRcuG3Q25dDUrXN3q9t5AujTRW/X3j1d+L0rl0fHfZx89ebsn7svn54t4JOb0WPz/h5ccn991V9izXi3W3H3FUgbafiBx2CC7eQHoG3l7TdfVOJFhp55FJ7nYGb8Ibjhbh+e6KFfwnlCYn3jLYggaCCqKKBmLXbWXo XKNUhjhDKSRR+O9ukYn4E/9ohchpOVyM+KHaIYoIhKasekVk6iGGKMKa4TJHaHPYnkbzNGmaRp6wn5IpHvYaglm+pFWKV8WkJJY in /home/grason/registrations/registration.gra-sonyashnyk.com.ua/lib/PEAR/Spreadsheet/Excel/Writer/Works heet.php on line 3451
![blink.gif](http://phpforum.su/html/emoticons/blink.gif)
Спустя 8 минут, 17 секунд (9.08.2012 - 12:55) Игорь_Vasinsky написал(а):
Цитата |
/home/grason/registrations/registration.gra-sonyashnyk.com.ua/lib/PEAR/Spreadsheet/Excel/Writer/Wor ks heet.php on line 3451 |
чё там?
В мануале сказано:
$sheet->insertBitmap 3й аргумент - строка
Спустя 7 минут, 15 секунд (9.08.2012 - 13:02) Игорь_Vasinsky написал(а):
лол
Спустя 32 секунды (9.08.2012 - 13:03) Александр Мутылев написал(а):
Цитата (Игорь_Vasinsky @ 9.08.2012 - 11:02) |
лол |
Дай мыло, я скину файл.
Спустя 2 минуты, 52 секунды (9.08.2012 - 13:06) Игорь_Vasinsky написал(а):
)) вы такие интересные господа, мне делать нечего майлы раздавать и копаться в файлах???
мне достаточно строчку показать.
мне достаточно строчку показать.
Спустя 2 минуты, 4 секунды (9.08.2012 - 13:08) Александр Мутылев написал(а):
ок) вот:
3451 // Length for this record is no more than 2048 + 6
.52 $length = 0x0006 + min($note_length, 2048);
.53 $header = pack("vv", $record, $length);
.54 $data = pack("vvv", $row, $col, $note_length);
.55 $this->_append($header . $data . substr($note, 0, 2048));
Спустя 3 минуты, 15 секунд (9.08.2012 - 13:11) Игорь_Vasinsky написал(а):
Цитата |
Length for this record is no more than 2048 + 6 |
не понял.. ограничение чтоли на 2кб?
я хз.. ну попробуй вот так
Цитата |
Length for this record is no more than 2048*10 + 6 |