¿Cómo usar PHP para incluir una imagen en un archivo de Word?

Alguien me ha pedido que haga una aplicación en php que genere un archivo .doc con una imagen y algunas tablas. Mi primer acercamiento fue:

<?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);
?>

Esto utiliza la técnica de datos uri de incrustar una imagen.

Esto generará un archivo html que se mostrará correctamente en los navegadores web, pero falta la imagen en Microsoft Office Word, al menos en la configuración estándar. Luego, mientras editaba el archivo con Word, reemplacé la imagen con una imagen del archivo y Microsoft Word cambió el contenido del archivo a Open XML y agregó una carpeta, new_files donde colocó la imagen importada (que era un .png ), una versión .gif de la imagen y un archivo 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>

Ahora, esto tampoco es lo suficientemente bueno, ya que quiero que todo se mantenga en un solo archivo .doc. ¿Hay alguna manera de incrustar una imagen en un archivo .doc con formato OpenXML?

Respuestas a la pregunta(7)

Su respuesta a la pregunta