将数据库mysql中的文件映像插入excel

时间:2012-02-03 07:50:04

标签: php javascript mysql html excel

PHP for master在这里我有一点问题是从php adn html数据库中捕获图像数据到excel。

这里我用一个表作为媒体html:

<?php
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=tes.xls");
header("Pragma: no-cache");
header("Expires: 0");
?>
<table>
<tr>
<td> Name </ td>
<td> Address </ td>
<td> <img src='foto_saya.jpg' width='100px' height='100px'>> </ td>
</ tr>
</ table>

我想问的是excel foto_saya中的输出列图像大小是100x100 但是它出现了原始大小的diexcel图像文件, 然后我已经使用了style = "width: 100px; height: 100px" 它仍然不影响任何事情, 也许有人可以帮我解决这个问题。 谢谢。

1 个答案:

答案 0 :(得分:0)

您无法使用style属性配置要在Excel中显示的图像大小。

如果您希望图像在不使用样式规则的情况下显示特定尺寸,则需要使用GD图像库调整其大小。

这看起来像这样:

<?php
// The file
$filename = 'test.png';

// Content type
header('Content-Type: image/jpeg');

// Get new dimensions
list($width, $height) = getimagesize($filename);
$new_width = 100; // pixels
$new_height = 100; // pixels

// Resample
$image_p = imagecreatetruecolor($new_width, $new_height);
$image = imagecreatefrompng($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

// Output
imagepng($image_p, 'test-resized.png');
?>

然后,您将需要为HTML使用已调整大小的图像:

<table>
<tr>
<td> Name </ td>
<td> Address </ td>
<td> <img src='test-resized.png' width='100px' height='100px'>> </ td>
</ tr>
</ table>