Domanda

Sai quali sono le informazioni di base deve includere un paragrafo (<w:p/>) in document.xml all'interno di un documento * .docx, che specifica un'immagine? So ci deve essere:

<a:blip r:embed="rId4" /> 

specificando il rapporto id, ma che altro? E 'molto difficile trovare in Google e sperimentare con il taglio di tag da un documento pronto o leggendo le specifiche prende un sacco di tempo.

Un esempio con tutte le variabili necessarie sarebbe molto apprezzato.

È stato utile?

Soluzione

La parola è piuttosto schizzinoso relativa al codice XML di input fornito. Per incorporare un'immagine, è necessario fornire un po 'di informazioni. Ecco un semplice esempio:

document.xml

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<w:document xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" 
            xmlns:v="urn:schemas-microsoft-com:vml" 
            xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" 
            xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">
  <w:body>
    <w:p>
      <w:r>
        <w:drawing>
          <wp:inline distT="0" distB="0" distL="0" distR="0">
            <wp:extent cx="5943600" cy="3717290"/>
            <wp:docPr id="1" name="Picture 0" descr="vlcsnap-325726.png"/>
            <a:graphic xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main">
              <a:graphicData uri="http://schemas.openxmlformats.org/drawingml/2006/picture">
                <pic:pic xmlns:pic="http://schemas.openxmlformats.org/drawingml/2006/picture">
                  <pic:nvPicPr>
                    <pic:cNvPr id="0" name="myImage.png"/>
                    <pic:cNvPicPr/>
                  </pic:nvPicPr>
                  <pic:blipFill>
                    <a:blip r:embed="rId4"/>
                    <a:stretch>
                      <a:fillRect/>
                    </a:stretch>
                  </pic:blipFill>
                  <pic:spPr>
                    <a:xfrm>
                      <a:off x="0" y="0"/>
                      <a:ext cx="5943600" cy="3717290"/>
                    </a:xfrm>
                    <a:prstGeom prst="rect">
                      <a:avLst/>
                    </a:prstGeom>
                  </pic:spPr>
                </pic:pic>
              </a:graphicData>
            </a:graphic>
          </wp:inline>
        </w:drawing>
      </w:r>
    </w:p>
  </w:body>
</w:document>

document.xml.rels

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
  <!-- other relationships go here -->
  <Relationship Id="rId4" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image" Target="media/image1.png"/>
</Relationships>

E, naturalmente, l'immagine deve essere aggiunto al pacchetto nella posizione corretta (media / image1.png)

Dato che tutto questo è piuttosto complicato ti consiglierei di utilizzare il SDK 2.0 OpenXML forniti da Microsoft o da un'altra libreria, ad esempio, OpenXML4J . Queste librerie, in particolare quella di Microsoft possono rendere il vostro lavoro molto più facile.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top