Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   *  Copyright 2007-2008, Plutext Pty Ltd.
   *   
   *  This file is part of docx4j.
  
      docx4j is licensed under the Apache License, Version 2.0 (the "License"); 
      you may not use this file except in compliance with the License. 
  
      You may obtain a copy of the License at 
 
         http://www.apache.org/licenses/LICENSE-2.0 
 
     Unless required by applicable law or agreed to in writing, software 
     distributed under the License is distributed on an "AS IS" BASIS, 
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
     See the License for the specific language governing permissions and 
     limitations under the License.
 
  */
 
 package org.docx4j.openpackaging.parts.PresentationML;
 
 import java.util.List;
 
 
 
 
 
 public final class MainPresentationPart extends JaxbPmlPart<Presentation> {
 	
 	public MainPresentationPart(PartName partNamethrows InvalidFormatException {
 		super(partName);
 		init();
 	}
 
 		super(new PartName("/ppt/presentation.xml"));
 		init();
 	}
 	
 	public void init() {		
 		// Used if this Part is added to [Content_Types].xml 
 
 		// Used when this Part is added to a rels 
 		
 	}
 	
 	private final static String DEFAULT_SLIDE_SIZE = "<p:sldSz xmlns:p=\"http://schemas.openxmlformats.org/presentationml/2006/main\"" +
 			" cx=\"9144000\" cy=\"6858000\" type=\"screen4x3\"/>";
 	
 	
 	private final static String DEFAULT_NOTES_SIZE = "<p:notesSz xmlns:p=\"http://schemas.openxmlformats.org/presentationml/2006/main\" " +
 			"cx=\"6858000\" cy=\"9144000\"/>";

Since:
2.7
 
 			boolean landscape) {
 
 		Presentation.SldSz sldSz = Context.getpmlObjectFactory()
 
 			sldSz.setType("letter");
 			if (landscape) {
 				sldSz.setCx(9144000);
 				sldSz.setCy(6858000);
 			} else {
 				sldSz.setCx(6858000);
 				sldSz.setCy(9144000);
 			}
 			return sldSz;
 		}
 
 			sldSz.setType("A3");
 			if (landscape) {
 				sldSz.setCx(12801600);
				sldSz.setCy(9601200);
else {
				sldSz.setCx(9601200);
				sldSz.setCy(12801600);
			}
			return sldSz;
		}
			sldSz.setType("A4");
			if (landscape) {
				sldSz.setCx(9906000);
				sldSz.setCy(6858000);
else {
				sldSz.setCx(6858000);
				sldSz.setCy(9906000);
			}
			return sldSz;
		}
			sldSz.setType("screen4x3");
			if (landscape) {
				sldSz.setCx(9144000);
				sldSz.setCy(6858000);
else {
				sldSz.setCx(6858000);
				sldSz.setCy(9144000);
			}
			return sldSz;
		}
			sldSz.setType("screen16x9");
			if (landscape) {
				sldSz.setCx(9144000);
				sldSz.setCy(5143500);
else {
				sldSz.setCx(5143500);
				sldSz.setCy(9144000);
			}
			return sldSz;
		}
			sldSz.setType("screen16x10");
			if (landscape) {
				sldSz.setCx(9144000);
				sldSz.setCy(5715000);
else {
				sldSz.setCx(5715000);
				sldSz.setCy(9144000);
			}
			return sldSz;
		}
			sldSz.setType("ledger");
			if (landscape) {
				sldSz.setCx(12179300);
				sldSz.setCy(9134475);
else {
				sldSz.setCx(9134475);
				sldSz.setCy(12179300);
			}
			return sldSz;
		}
			sldSz.setType("B4ISO");
			if (landscape) {
				sldSz.setCx(10826750);
				sldSz.setCy(8120063);
else {
				sldSz.setCx(8120063);
				sldSz.setCy(10826750);
			}
			return sldSz;
		}
			sldSz.setType("B5ISO");
			if (landscape) {
				sldSz.setCx(7169150);
				sldSz.setCy(5376863);
else {
				sldSz.setCx(5376863);
				sldSz.setCy(7169150);
			}
			return sldSz;
		}
			sldSz.setType("35mm");
			if (landscape) {
				sldSz.setCx(10287000);
				sldSz.setCy(6858000);
else {
				sldSz.setCx(6858000);
				sldSz.setCy(10287000);
			}
			return sldSz;
		}
			sldSz.setType("overhead");
			if (landscape) {
				sldSz.setCx(9144000);
				sldSz.setCy(6858000);
else {
				sldSz.setCx(6858000);
				sldSz.setCy(9144000);
			}
			return sldSz;
		}
			sldSz.setType("banner");
			if (landscape) {
				sldSz.setCx(7315200);
				sldSz.setCy(914400);
else {
				sldSz.setCx(914400);
				sldSz.setCy(7315200);
			}
			return sldSz;
		}
		throw new NotImplementedException("No support for slide size "
sz.value());
	}
		return createJaxbPresentationElement(nulltrue);
	}

Since:
2.7
	public static Presentation createJaxbPresentationElement(SlideSizesWellKnown szboolean landscapethrows JAXBException {
		ObjectFactory factory = Context.getpmlObjectFactory(); 
		Presentation presentation = factory.createPresentation();
		// Create empty lists
		presentation.setSldMasterIdLst(masterIds);
		presentation.setSldIdLst(slideIds);
		presentation.setNotesSz
		if (sz==null) {
			presentation.setSldSz(
else {
			presentation.setSldSz(	MainPresentationPart.createSlideSize(szlandscape) );		
		}
		return presentation;
	}


Add a slide to this presentation.

	}


Since:
2.8.1
		Relationship rel = this.addTargetPart(slidePartmode);
		entry.setIdthis.getSlideId() );
		entry.setRid(rel.getId());
		return entry;
	}
		Relationship rel = this.addTargetPart(slideMasterPart);
		entry.setIdnew Long(this.getSlideLayoutOrMasterId()) );
		entry.setRid(rel.getId());
		return entry;
		}

Append the slide at the end of the presentation.

Parameters:
slidePart
Throws:
org.pptx4j.Pptx4jException
Since:
3.0
	public boolean addSlide(SlidePart slidePartthrows Pptx4jException {
		/* Powerpoint 2010 can't open a pptx in which a slide appears
		 * several times, for example:
		 * 
			  <p:sldIdLst>
			    <p:sldId id="256" r:id="rId2"/>
			    <p:sldId id="257" r:id="rId3"/>
			    <p:sldId id="258" r:id="rId2"/> <----- can't use rId2 again
			  </p:sldIdLst>		
		 * 
		 * Nor can 2 distinct relIds target the same part.
		 */
		try {
catch (InvalidFormatException e) {
			throw new Pptx4jException(e.getMessage(), e);
		}
	}

Inserts the slide at the specified position in the presentation. Shifts the element currently at that position (if any) and any subsequent elements to the right (adds one to their indices).

Parameters:
index
slidePart
Throws:
org.pptx4j.Pptx4jException
Since:
3.0
	public void addSlide(int indexSlidePart slidePartthrows Pptx4jException {
		List<SldIdsldIds = this.getJaxbElement().getSldIdLst().getSldId();
		int zeroBasedCount = sldIds.size(); 
		if (index< 0 || index>zeroBasedCount) {
			throw new Pptx4jException("Can't add slide at index " + index + ".  (There are " + sldIds.size() + " slides) ");			
		}
		try {
			sldIds.add(indexcreateSlideIdListEntry(rel));
catch (InvalidFormatException e) {
			throw new Pptx4jException(e.getMessage(), e);
		}
	}
		entry.setIdthis.getSlideId() );
		entry.setRid(rel.getId());
		return entry;
	}

Parameters:
index
Throws:
org.pptx4j.Pptx4jException
Since:
3.0
	public void removeSlide(int indexthrows Pptx4jException {
		List<SldIdsldIds = this.getJaxbElement().getSldIdLst().getSldId();
		int zeroBasedCount = sldIds.size() -1; 
		if (index< 0 || index>zeroBasedCount) {
			throw new Pptx4jException("No slide at index " + index + ".  (There are " + sldIds.size() + " slides) ");			
		}
		Part part = this.getRelationshipsPart().getPart(rel);
	}

Parameters:
rel
Throws:
org.pptx4j.Pptx4jException
Since:
3.0
	public void removeSlide(Relationship relthrows Pptx4jException {
		if (rel==nullthrow new Pptx4jException("Null relationship.");
		int index = -1;
		int i=0;
			if (entry.getRid().equals(rel.getId())) {
				index = i;
				break;
			}
			i++;
		}
		if (index>-1) {
else {
			throw new Pptx4jException("No slide is the target of that relationship.");
		}
	}
New to GrepCode? Check out our FAQ X