import org.openxmlformats.schemas.drawingml.x2006.main.CTPath2DCubicBezierTo;\r
import org.openxmlformats.schemas.drawingml.x2006.main.CTPath2DLineTo;\r
import org.openxmlformats.schemas.drawingml.x2006.main.CTPath2DMoveTo;\r
+import org.openxmlformats.schemas.drawingml.x2006.main.CTPath2DQuadBezierTo;\r
import org.openxmlformats.schemas.drawingml.x2006.main.CTShapeProperties;\r
import org.openxmlformats.schemas.presentationml.x2006.main.CTShape;\r
import org.openxmlformats.schemas.presentationml.x2006.main.CTShapeNonVisual;\r
ln.setY(Units.toEMU(vals[1]) - y0);\r
numPoints++;\r
break;\r
+ case PathIterator.SEG_QUADTO:\r
+ CTPath2DQuadBezierTo qbez = ctPath.addNewQuadBezTo();\r
+ CTAdjPoint2D qp1 = qbez.addNewPt();\r
+ qp1.setX(Units.toEMU(vals[0]) - x0);\r
+ qp1.setY(Units.toEMU(vals[1]) - y0);\r
+ CTAdjPoint2D qp2 = qbez.addNewPt();\r
+ qp2.setX(Units.toEMU(vals[2]) - x0);\r
+ qp2.setY(Units.toEMU(vals[3]) - y0);\r
+ numPoints += 2;\r
+ break;\r
case PathIterator.SEG_CUBICTO:\r
CTPath2DCubicBezierTo bez = ctPath.addNewCubicBezTo();\r
CTAdjPoint2D p1 = bez.addNewPt();\r
CTAdjPoint2D pt = ((CTPath2DLineTo)ch).getPt();\r
path.lineTo((float)Units.toPoints((Long)pt.getX()),\r
(float)Units.toPoints((Long)pt.getY()));\r
+ } else if (ch instanceof CTPath2DQuadBezierTo){\r
+ CTPath2DQuadBezierTo bez = ((CTPath2DQuadBezierTo)ch);\r
+ CTAdjPoint2D pt1 = bez.getPtArray(0);\r
+ CTAdjPoint2D pt2 = bez.getPtArray(1);\r
+ path.quadTo(\r
+ (float) (Units.toPoints((Long) pt1.getX()) * scaleW),\r
+ (float) (Units.toPoints((Long) pt1.getY()) * scaleH),\r
+ (float) (Units.toPoints((Long) pt2.getX()) * scaleW),\r
+ (float) (Units.toPoints((Long) pt2.getY()) * scaleH));\r
} else if (ch instanceof CTPath2DCubicBezierTo){\r
CTPath2DCubicBezierTo bez = ((CTPath2DCubicBezierTo)ch);\r
CTAdjPoint2D pt1 = bez.getPtArray(0);\r
(float) (Units.toPoints((Long) pt2.getX()) * scaleW),\r
(float) (Units.toPoints((Long) pt2.getY()) * scaleH),\r
(float) (Units.toPoints((Long) pt3.getX()) * scaleW),\r
- (float) (Units.toPoints((Long) pt3.getY()) * scaleH) );\r
-\r
+ (float) (Units.toPoints((Long) pt3.getY()) * scaleH));\r
} else if (ch instanceof CTPath2DClose){\r
path.closePath();\r
}\r