diff --git a/engine/org.eclipse.birt.report.engine.emitter.pptx/src/org/eclipse/birt/report/engine/emitter/pptx/PPTXRender.java b/engine/org.eclipse.birt.report.engine.emitter.pptx/src/org/eclipse/birt/report/engine/emitter/pptx/PPTXRender.java index 0b60ee563ac..8a331b861e3 100644 --- a/engine/org.eclipse.birt.report.engine.emitter.pptx/src/org/eclipse/birt/report/engine/emitter/pptx/PPTXRender.java +++ b/engine/org.eclipse.birt.report.engine.emitter.pptx/src/org/eclipse/birt/report/engine/emitter/pptx/PPTXRender.java @@ -64,7 +64,7 @@ public class PPTXRender extends PageDeviceRender * * the default value is TRUE. */ - public static final String OPTION_EDIT_MODE = "org.eclipse.birt.report.emitter.PPTX.editMode"; + public static final String OPTION_EDIT_MODE = "org.eclipse.birt.report.emitter.PPTX.editMode"; //$NON-NLS-1$ /** The default output PPT file name. */ public static final String REPORT_FILE = "Report.pptx"; //$NON-NLS-1$ @@ -202,9 +202,15 @@ public void visitContainer( IContainerArea container ) { if ( container instanceof PageArea ) { + if( editMode ) + { newPage( container ); new SlideWriter( this ).writeSlide( (PageArea) container ); this.pageGraphic.dispose( ); + } + else{ + visitPage( (PageArea) container ); + } } else if ( container instanceof TableArea ) { @@ -433,4 +439,9 @@ public boolean isTextWrap() { return isTextWrap; } + + public boolean isEditMode( ) + { + return editMode; + } } diff --git a/engine/org.eclipse.birt.report.engine.emitter.pptx/src/org/eclipse/birt/report/engine/emitter/pptx/writer/Presentation.java b/engine/org.eclipse.birt.report.engine.emitter.pptx/src/org/eclipse/birt/report/engine/emitter/pptx/writer/Presentation.java index 1c6a581310f..f474ab61859 100644 --- a/engine/org.eclipse.birt.report.engine.emitter.pptx/src/org/eclipse/birt/report/engine/emitter/pptx/writer/Presentation.java +++ b/engine/org.eclipse.birt.report.engine.emitter.pptx/src/org/eclipse/birt/report/engine/emitter/pptx/writer/Presentation.java @@ -116,7 +116,10 @@ private void outputSlideMasters() throws IOException writer.attribute( TAG_RELATIONSHIP_ID, slideMaster.getPart( ) .getRelationshipId( ) ); writer.closeTag( TAG_SLIDE_MASTER_ID ); - new SlideWriter( render ).writeSlideMaster( slideMaster ); + if ( render.isEditMode( ) ) + { + new SlideWriter( render ).writeSlideMaster( slideMaster ); + } slideMaster.close( ); } writer.closeTag( TAG_SLIDE_MASTER_ID_LIST );