Changeset 177 for trunk/docx4j/src/main/java/org/docx4j/openpackaging/packages/WordprocessingMLPackage.java
- Timestamp:
- 03/12/08 08:10:43 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/docx4j/src/main/java/org/docx4j/openpackaging/packages/WordprocessingMLPackage.java
r176 r177 190 190 * our main document and style definition parts. 191 191 * 192 * For now, I've just edited it a little to accept our parts wrapped 193 * in a <w:wordDocument> element. Since that's a completely 194 * arbitrary format, it may be better in due course to process 195 * pck:package/pck:part 192 * I've adapted the stylesheet to process the 193 * pck:package/pck:part stuff emitted by Word 2007. 196 194 * 197 195 */ 198 196 199 197 // so, put the 2 parts together into a single document 200 // The JAXB object org.docx4j.wml. WordDocumentis198 // The JAXB object org.docx4j.wml.Package is 201 199 // custom built for this purpose. 202 200 203 // Create a org.docx4j.wml. WordDocumentobject201 // Create a org.docx4j.wml.Package object 204 202 org.docx4j.wml.ObjectFactory factory = new org.docx4j.wml.ObjectFactory(); 205 org.docx4j.wml.WordDocument wd = factory.createWordDocument(); 203 org.docx4j.wml.Package pkg = factory.createPackage(); 204 206 205 // Set its parts 206 207 207 // .. the main document part 208 org.docx4j.wml.Package.Part pkgPartDocument = factory.createPackagePart(); 209 208 210 MainDocumentPart documentPart = getMainDocumentPart(); 209 org.docx4j.wml.Document wmlDocumentEl = (org.docx4j.wml.Document)documentPart.getJaxbElement(); 210 wd.setDocument(wmlDocumentEl); 211 212 pkgPartDocument.setName(documentPart.getPartName().getName()); 213 pkgPartDocument.setContentType(documentPart.getContentType() ); 214 215 org.docx4j.wml.Package.Part.XmlData XmlDataDoc = factory.createPackagePartXmlData(); 216 217 org.docx4j.wml.Document wmlDocumentEl = (org.docx4j.wml.Document)documentPart.getJaxbElement(); 218 219 XmlDataDoc.setDocument(wmlDocumentEl); 220 pkgPartDocument.setXmlData(XmlDataDoc); 221 pkg.getPart().add(pkgPartDocument); 222 211 223 // .. the style part 224 org.docx4j.wml.Package.Part pkgPartStyles = factory.createPackagePart(); 225 212 226 org.docx4j.openpackaging.parts.WordprocessingML.StyleDefinitionsPart stylesPart = documentPart.getStyleDefinitionsPart(); 227 228 pkgPartDocument.setName(stylesPart.getPartName().getName()); 229 pkgPartDocument.setContentType(stylesPart.getContentType() ); 230 231 org.docx4j.wml.Package.Part.XmlData XmlDataStyles = factory.createPackagePartXmlData(); 232 213 233 org.docx4j.wml.Styles styles = (org.docx4j.wml.Styles)stylesPart.getJaxbElement(); 214 wd.setStyles(styles); 234 235 XmlDataStyles.setStyles(styles); 236 pkgPartStyles.setXmlData(XmlDataStyles); 237 pkg.getPart().add(pkgPartStyles); 238 215 239 // Now marshall it 216 240 JAXBContext jc = Context.jc; … … 218 242 org.w3c.dom.Document doc = org.docx4j.XmlUtils.neww3cDomDocument(); 219 243 220 marshaller.marshal( wd, doc);244 marshaller.marshal(pkg, doc); 221 245 222 246 log.info("wordDocument created for PDF rendering!"); … … 249 273 javax.xml.transform.Templates template = tfactory.newTemplates( 250 274 new javax.xml.transform.stream.StreamSource(is)); 251 252 275 // Use the template to create a transformer 253 276 javax.xml.transform.Transformer xformer = template.newTransformer(); … … 269 292 xformer.setParameter("substituterInstance", fontSubstituter); 270 293 xformer.setParameter("fontFamilyStack", fontFamilyStack); 271 272 294 273 295 //DEBUGGING
Note: See TracChangeset
for help on using the changeset viewer.
