wie Sie php verwenden, um ein Bild in eine word-Datei?
Jemand hat mich gebeten eine app machen in php generiert .doc-Datei mit einem Bild und ein paar Tabellen. Mein Erster Ansatz war:
<?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);
?>
Diese nutzt die Daten, die uri Technik der Einbettung eines Bildes.
Dies erzeugt eine html-Datei, die gerendert wird, ok in web-Browsern, aber das Bild fehlt in Microsoft Office Word, zumindest in der standard-setup. Dann, während der Bearbeitung die Datei mit Word, ich habe ersetzen Sie das Bild mit einem Bild aus Datei-und Microsoft Word verändert den Inhalt der Datei in Open XML, und Hinzugefügt, einen Ordner new_files, wo er legte das importierte Bild (das war ein .png), ein .gif version des Bildes und eine xml-Datei:
<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>
Nun, das ist nicht gut genug, da ich will, dass das alles gehalten in einem einzigen .doc-Datei.
Gibt es eine Möglichkeit zum einbetten eines Bildes in einer OpenXML-Format .doc-Datei?
Du musst angemeldet sein, um einen Kommentar abzugeben.
schauen Sie hier http://www.tkachenko.com/blog/archives/000106.html
doc
(xml -) Datei. oder Sie können speichern Sie Ihre doc-Datei als xml und dann überprüfen Sie die interne Struktur, scheint es die Art, wie ich dieseEs ist PHPWord Projekt zum manipulieren von MS Word aus in PHP.
PHPWord schreiben Sie http://phpword.codeplex.com/ (Hinweis: die noch in der Beta. Ich habe PHpExcel von der gleichen Kerl eine Menge... nie versucht, die Word-version).
Haben Sie einen Blick auf die phpdocx-Bibliothek für die Generierung von real .docx-Dateien nicht als html-Dateien mit ein .doc-Erweiterung
PS die Erweiterung sollte streng sein .docx statt .doc für Open XML-Word-2007-Dateien
OpenTBS erstellen können DOCX (und andere OpenXML-Dateien) dynamische Dokumente in PHP mit der Technik der Schablonen.
Keine temporären Dateien erforderlich, kein Befehl-Linien, die alle in PHP.
Sie können hinzufügen oder löschen Sie Bilder. Das erstellte Dokument kann erzeugt werden, wie ein HTML-download, eine Datei auf dem server gespeichert, oder als binäre Inhalt in der PHP.
Es kann auch Zusammenführen von OpenDocument-Dateien (ODT, ODS, ODF, ...)
http://www.tinybutstrong.com/opentbs.php
Wenn rich-text ist ok versuchen PhpRtf.
Ich würde PHPExcel. Sie können mit OpenXML auch.
Hier der link: http://phpexcel.codeplex.com/