如何使用PHP将图像包含在word文件中?

前端之家收集整理的这篇文章主要介绍了如何使用PHP将图像包含在word文件中?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_301_0@ 有人要我在PHP中创建一个应用程序,它将生成一个带有图像和几个表格的.doc文件.我的第一个方法是:
<?PHP
function data_uri($file,$mime) 
{  
  $contents = file_get_contents($file);
  $base64   = base64_encode($contents); 
  return ('data:' . $mime . ';base64,' . $base64);
}
$file = 'new.doc';
$fh = fopen($file,'w');
$uri = data_uri('pic.png','image/png');
fwrite($fh,'<table border="1"><tr><td><b>something</b></td><td>something else</td></tr><tr><td></td><td></td></tr></table>
<br/><img src="'.$uri.'" alt="some text" />
<br/>
<table border="1"><tr><td><b>ceva</b></td><td>altceva</td></tr><tr><td></td><td></td></tr></table>');
fclose($fh);
?>

这使用了嵌入图像的数据uri技术.

这将生成一个html文件,该文件将在Web浏览器中呈现,但Microsoft Office Word中缺少图像,至少在标准设置中是这样.然后,在使用Word编辑文件时,我用文件中的图像替换图像,Microsoft Word将文件内容更改为Open XML并添加了一个文件夹new_files,他放置导入的图像(这是一个.png文件) ),.gif版本的图像和xml文件

<xml xmlns:o="urn:schemas-microsoft-com:office:office">
  <o:MainFile HRef="../new.doc" /> 
  <o:File HRef="image001.jpg" /> 
  <o:File HRef="filelist.xml" /> 
</xml>

现在这还不够好,因为我希望将它们全部保存在单个.doc文件中.
有没有办法在OpenXML格式的.doc文件中嵌入图像?

看这里 http://www.tkachenko.com/blog/archives/000106.html
<w:pict>
    <v:shapetype id="_x0000_t75" ...>
    ... VML shape template definition ...
    </v:shapetype>
    <w:binData w:name="wordml://02000001.jpg">
    ... Base64 encoded image goes here ...
    </w:binData>
    <v:shape id="_x0000_i1025" type="#_x0000_t75" 
      style="width:212.4pt;height:159pt">
         <v:imagedata src="wordml://02000001.jpg" 
           o:title="Image title"/>
    </v:shape> 
</w:pict>

猜你在找的PHP相关文章