diff options
author | Jeremias Maerki <jeremias@apache.org> | 2005-08-12 13:58:52 +0000 |
---|---|---|
committer | Jeremias Maerki <jeremias@apache.org> | 2005-08-12 13:58:52 +0000 |
commit | 9d9ff7ecdb911a61c1eaea6c42661e7132f05a2c (patch) | |
tree | fcfefc43f225df42e73d9b1b62d421de63b12e12 /test/java/org/apache/fop/visual/ReferenceBitmapLoader.java | |
parent | 0a6c44e1bafc9c1c8d77858b18e5f37e2d07e7da (diff) | |
download | xmlgraphics-fop-9d9ff7ecdb911a61c1eaea6c42661e7132f05a2c.tar.gz xmlgraphics-fop-9d9ff7ecdb911a61c1eaea6c42661e7132f05a2c.zip |
Initial upload of the visual testing facility. Docs in code. A Wiki page will follow shortly.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@232300 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'test/java/org/apache/fop/visual/ReferenceBitmapLoader.java')
-rw-r--r-- | test/java/org/apache/fop/visual/ReferenceBitmapLoader.java | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/test/java/org/apache/fop/visual/ReferenceBitmapLoader.java b/test/java/org/apache/fop/visual/ReferenceBitmapLoader.java new file mode 100644 index 000000000..0daec6a46 --- /dev/null +++ b/test/java/org/apache/fop/visual/ReferenceBitmapLoader.java @@ -0,0 +1,67 @@ +/* + * Copyright 2005 The Apache Software Foundation. + * + * 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. + */ + +/* $Id$ */ + +package org.apache.fop.visual; + +import java.awt.image.BufferedImage; +import java.io.File; + +import org.apache.avalon.framework.configuration.Configurable; +import org.apache.avalon.framework.configuration.Configuration; +import org.apache.avalon.framework.configuration.ConfigurationException; + +/** + * BitmapProducer implementation that simply loads preproduced reference bitmaps from a + * certain directory. + * <p> + * Here's what the configuration element looks like for the class: + * <p> + * <pre> + * <producer classname="org.apache.fop.visual.ReferenceBitmapLoader"> + * <directory>C:/Temp/ref-bitmaps</directory> + * </producer> + * </pre> + */ +public class ReferenceBitmapLoader extends AbstractBitmapProducer implements Configurable { + + private File bitmapDirectory; + + /** @see org.apache.avalon.framework.configuration.Configurable */ + public void configure(Configuration cfg) throws ConfigurationException { + this.bitmapDirectory = new File(cfg.getChild("directory").getValue(null)); + if (!bitmapDirectory.exists()) { + throw new ConfigurationException("Directory could not be found: " + bitmapDirectory); + } + } + + /** @see org.apache.fop.visual.BitmapProducer */ + public BufferedImage produce(File src, ProducerContext context) { + try { + File bitmap = new File(bitmapDirectory, src.getName() + ".png"); + if (bitmap.exists()) { + return BitmapComparator.getImage(bitmap); + } else { + return null; + } + } catch (Exception e) { + log.error(e); + return null; + } + } + +} |