mirror of
https://github.com/apache/poi.git
synced 2025-02-08 02:58:18 +00:00
removed test which is covered by TestPPTX2PNG
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1880910 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
b57da2dada
commit
afe4a109a8
@ -22,42 +22,28 @@ import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertNull;
|
||||
import static org.junit.Assert.assertSame;
|
||||
|
||||
import java.awt.BasicStroke;
|
||||
import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Rectangle;
|
||||
import java.awt.geom.Rectangle2D;
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.lang.reflect.Constructor;
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
import java.util.BitSet;
|
||||
import java.util.List;
|
||||
|
||||
import javax.imageio.ImageIO;
|
||||
|
||||
import org.apache.poi.POIDataSamples;
|
||||
import org.apache.poi.ddf.EscherBSERecord;
|
||||
import org.apache.poi.hssf.usermodel.DummyGraphics2d;
|
||||
import org.apache.poi.sl.draw.DrawFactory;
|
||||
import org.apache.poi.sl.usermodel.PictureData.PictureType;
|
||||
import org.apache.poi.sl.usermodel.Slide;
|
||||
import org.apache.poi.sl.usermodel.SlideShow;
|
||||
import org.junit.BeforeClass;
|
||||
import org.junit.Ignore;
|
||||
import org.junit.Test;
|
||||
|
||||
/**
|
||||
* Test Picture shape.
|
||||
*
|
||||
* @author Yegor Kozlov
|
||||
*/
|
||||
public final class TestPicture {
|
||||
private static POIDataSamples _slTests = POIDataSamples.getSlideShowInstance();
|
||||
private static final POIDataSamples _slTests = POIDataSamples.getSlideShowInstance();
|
||||
|
||||
@BeforeClass
|
||||
public static void disableImageIOCache() {
|
||||
@ -71,8 +57,7 @@ public final class TestPicture {
|
||||
*/
|
||||
@Test
|
||||
public void multiplePictures() throws IOException {
|
||||
HSLFSlideShow ppt = new HSLFSlideShow();
|
||||
|
||||
try (HSLFSlideShow ppt = new HSLFSlideShow()) {
|
||||
HSLFSlide s = ppt.createSlide();
|
||||
HSLFSlide s2 = ppt.createSlide();
|
||||
HSLFSlide s3 = ppt.createSlide();
|
||||
@ -98,8 +83,7 @@ public final class TestPicture {
|
||||
EscherBSERecord bse3 = pict.getEscherBSERecord();
|
||||
assertSame(bse2, bse3);
|
||||
assertEquals(3, bse1.getRef());
|
||||
|
||||
ppt.close();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@ -108,7 +92,7 @@ public final class TestPicture {
|
||||
*/
|
||||
@Test
|
||||
public void bug46122() throws IOException {
|
||||
HSLFSlideShow ppt = new HSLFSlideShow();
|
||||
try (HSLFSlideShow ppt = new HSLFSlideShow()) {
|
||||
HSLFSlide slide = ppt.createSlide();
|
||||
HSLFPictureData pd = HSLFPictureData.create(PictureType.PNG);
|
||||
|
||||
@ -121,13 +105,13 @@ public final class TestPicture {
|
||||
BufferedImage img = new BufferedImage(100, 100, BufferedImage.TYPE_INT_RGB);
|
||||
Graphics2D graphics = img.createGraphics();
|
||||
pict.draw(graphics, null);
|
||||
|
||||
ppt.close();
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void macImages() throws IOException {
|
||||
HSLFSlideShowImpl hss = new HSLFSlideShowImpl(_slTests.openResourceAsStream("53446.ppt"));
|
||||
try (InputStream is = _slTests.openResourceAsStream("53446.ppt");
|
||||
HSLFSlideShowImpl hss = new HSLFSlideShowImpl(is)) {
|
||||
|
||||
List<HSLFPictureData> pictures = hss.getPictureData();
|
||||
assertEquals(15, pictures.size());
|
||||
@ -160,65 +144,12 @@ public final class TestPicture {
|
||||
break;
|
||||
default:
|
||||
assertNotNull(image);
|
||||
assertNotNull(dimensions);
|
||||
assertEquals(dimensions[0], image.getWidth());
|
||||
assertEquals(dimensions[1], image.getHeight());
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
hss.close();
|
||||
}
|
||||
|
||||
@Test
|
||||
@Ignore("Just for visual validation - antialiasing is different on various systems")
|
||||
public void bug54541()
|
||||
throws IOException, ClassNotFoundException, SecurityException, NoSuchMethodException, IllegalArgumentException, InstantiationException, IllegalAccessException, InvocationTargetException {
|
||||
String[] files = {
|
||||
// "sample_pptx_grouping_issues.pptx",
|
||||
// "54542_cropped_bitmap.pptx",
|
||||
// "54541_cropped_bitmap.ppt",
|
||||
// "54541_cropped_bitmap2.ppt",
|
||||
"alterman_security.ppt",
|
||||
// "alterman_security3.pptx",
|
||||
};
|
||||
|
||||
BitSet pages = new BitSet();
|
||||
pages.set(2);
|
||||
|
||||
for (String file : files) {
|
||||
InputStream is = _slTests.openResourceAsStream(file);
|
||||
SlideShow<?,?> ss;
|
||||
if (file.endsWith("pptx")) {
|
||||
Class<?> cls = Class.forName("org.apache.poi.xslf.usermodel.XMLSlideShow");
|
||||
Constructor<?> ct = cls.getDeclaredConstructor(InputStream.class);
|
||||
ss = (SlideShow<?,?>)ct.newInstance(is);
|
||||
} else {
|
||||
ss = new HSLFSlideShow(is);
|
||||
}
|
||||
is.close();
|
||||
|
||||
boolean debugOut = false;
|
||||
Dimension pg = ss.getPageSize();
|
||||
for (Slide<?,?> slide : ss.getSlides()) {
|
||||
int slideNo = slide.getSlideNumber();
|
||||
if (!pages.get(slideNo-1)) {
|
||||
if (pages.nextSetBit(slideNo-1) == -1) break; else continue;
|
||||
}
|
||||
if (debugOut) {
|
||||
DummyGraphics2d graphics = new DummyGraphics2d();
|
||||
slide.draw(graphics);
|
||||
} else {
|
||||
BufferedImage img = new BufferedImage(pg.width, pg.height, BufferedImage.TYPE_INT_ARGB);
|
||||
Graphics2D graphics = img.createGraphics();
|
||||
slide.draw(graphics);
|
||||
graphics.setColor(Color.BLACK);
|
||||
graphics.setStroke(new BasicStroke(1));
|
||||
graphics.drawRect(0, 0, (int)pg.getWidth()-1, (int)pg.getHeight()-1);
|
||||
ImageIO.write(img, "PNG", new File(file.replaceFirst(".pptx?", "-")+slideNo+".png"));
|
||||
}
|
||||
}
|
||||
|
||||
ss.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user