Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package org.pptx4j.convert.out.svginhtml;
  
  
  import org.slf4j.Logger;
 
 public class PictureExporter extends AbstractWordXmlPicture {

<p:pic> <p:nvPicPr> <p:cNvPr id="1026" name="Picture 2"/> <p:cNvPicPr> <a:picLocks noChangeAspect="1" noChangeArrowheads="1"/> </p:cNvPicPr> <p:nvPr/> </p:nvPicPr> <p:blipFill> <a:blip r:embed="rId2"/> <----------------------- <a:srcRect/> <a:stretch> <a:fillRect/> </a:stretch> </p:blipFill> <p:spPr bwMode="auto"> <a:xfrm> <a:off x="1357290" y="3643314"/> <a:ext cx="619125" cy="742950"/> </a:xfrm> <a:prstGeom prst="rect"> <a:avLst/> </a:prstGeom> <a:noFill/> <a:ln w="9525"> <a:noFill/> <a:miter lim="800000"/> <a:headEnd/> <a:tailEnd/> </a:ln> <a:effectLst/> </p:spPr> </p:pic>
 
 
 	protected static Logger log = LoggerFactory.getLogger(PictureExporter.class);	
 
 	public static DocumentFragment createHtmlImg(
     		NodeIterator wpInline) {
 
     	PictureExporter converter = createPicture(contextwpInline);
     	
     	DocumentFragment df = getHtmlDocumentFragment(converter);
     	
     	// Now wrap
     	// <div style="position: absolute; width:300px; height:39px; left:360px; top:255px; border: red dashed;">
     	// around it
     	CTPoint2D offset = converter.pic.getSpPr().getXfrm().getOff();
     	Dimensions xy = converter.readDimensionsoffset.getX(), offset.getY() );
     	
     	/*
     	 *  TODO, USE:
     	 *  
     	 *       	// Geometrical transforms
     	CTTransform2D xfrm = cxnSp.getSpPr().getXfrm();
     	Box b = new Box(xfrm.getOff().getX(), xfrm.getOff().getY(),
     			xfrm.getExt().getCx(), xfrm.getExt().getCy() );
     	
     	if (xfrm.getRot()!=0) {
     		b.rotate(xfrm.getRot());
     	}
     	if (xfrm.isFlipH() ) {
     		b.flipH();
     	}
     	if (xfrm.isFlipV() ) {
     		b.flipV();
     	}
     	
     	// Convert from EMU to pixels
     	b.toPixels();
 
     	 * 
     	 */
     	
     	Element div = df.getOwnerDocument().createElement("div");
     	
    	div.setAttribute("style""position:absolute; left:" + xy.width + "px; top:" + xy.height + "px;");
    	
    	Node img = df.getFirstChild();
    	
    	df.removeChild(img);
    	df.appendChild(div);
    	
    	div.appendChild(img);
    	
    	return df;
    }
    public static PictureExporter createPicture(SvgConversionContext context,
    		NodeIterator anchorOrInline) {
    	
    	PictureExporter converter = new PictureExporter();
    	
    	
    	
		try {
    		Node n = anchorOrInline.nextNode();
    		converter.pic = (org.pptx4j.pml.Pic)XmlUtils.unmarshal(n....org.pptx4j.pml.Pic.class);
catch (JAXBException e1) {
		}
		.info("** image: " + converter.pic.getClass().getName() );
    	
    	if (converter.pic.getBlipFill()==null
    			|| converter.pic.getBlipFill().getBlip()==null) {
    		.error("blip missing!!");
    		return null;    		    		
    	}
    	
    	CTBlip blip = converter.pic.getBlipFill().getBlip();
    	
    	String imgRelId = blip.getEmbed();    	
    	if (imgRelId!=null) {
    		converter.handleImageRel(context.getImageHandler(), imgRelId
    	} else if (blip.getLink()!=null) {
    		converter.handleImageRel(context.getImageHandler(), blip.getLink(), 
    	} else {
    		.error("not linked or embedded?!");
    	}
    	converter.dimensions = converter.readDimensions(
    			converter.pic.getSpPr().getXfrm().getExt());
    		// TODO: <a:off x="1357290" y="3643314"/>
    	
		return converter;
	}
    private final int extentToPixelConversionFactor = 9525; //12700;	
    
    private Dimensions readDimensions(long xlong y) {
    	Dimensions dimensions = new Dimensions();
    	
		dimensions.width= (intx / ;
		dimensions.widthUnit = "px";
		dimensions.height= (inty / ;
		dimensions.heightUnit = "px";
    	
    	return dimensions;
    }
    
    private Dimensions readDimensions(CTPositiveSize2D size2d) {
    	
    	/*
              <p:spPr bwMode="auto">
                <a:xfrm>
                  <a:off x="1357290" y="3643314"/>
                  <a:ext cx="619125" cy="742950"/>
                </a:xfrm>
    	 */
    	if (size2d==null) {
    		.warn("wp:inline/wp:extent missing!");
    		return null;
    	}
    	
    	return readDimensions(size2d.getCx(), size2d.getCy() );
    	
    }
New to GrepCode? Check out our FAQ X