aboutsummaryrefslogtreecommitdiffstats
path: root/src/java/org/apache/fop/image/analyser/PNGReader.java
diff options
context:
space:
mode:
authorVincent Hennebert <vhennebert@apache.org>2008-03-18 15:01:43 +0000
committerVincent Hennebert <vhennebert@apache.org>2008-03-18 15:01:43 +0000
commitbc8128695c25fdeb81f4e15aacc7247200a420d2 (patch)
treef31ced186a0e447b52dadbd6cef177bd095472f7 /src/java/org/apache/fop/image/analyser/PNGReader.java
parentb0644700fd13beb3286888fbea4dd4a0461d6d54 (diff)
downloadxmlgraphics-fop-bc8128695c25fdeb81f4e15aacc7247200a420d2.tar.gz
xmlgraphics-fop-bc8128695c25fdeb81f4e15aacc7247200a420d2.zip
Merged revisions 636400-636405,636407-638388 via svnmerge from
https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/fop-0_95 ........ r636403 | vhennebert | 2008-03-12 16:24:48 +0000 (Wed, 12 Mar 2008) | 2 lines Updated copyright years ........ r637075 | vhennebert | 2008-03-14 12:19:45 +0000 (Fri, 14 Mar 2008) | 4 lines Bugzilla #44412: Bugfix: When there was a forced break after a block with (conditional) borders the border-after wasn't painted. Changes made by Jeremias ........ r637119 | jeremias | 2008-03-14 14:41:03 +0000 (Fri, 14 Mar 2008) | 2 lines Bugzilla #44412: Bugfix: The before border of a block is no longer swallowed if its first child issues a break-before. ........ r637791 | jeremias | 2008-03-17 08:59:51 +0000 (Mon, 17 Mar 2008) | 3 lines Removed old image adapters. Removed support for Java 1.3 building as it didn't work anymore anyway. Added a check to require Java 1.4 for building. ........ r637857 | jeremias | 2008-03-17 12:24:33 +0000 (Mon, 17 Mar 2008) | 3 lines Partially reverted revision 637791: Restored JAI as a required dependency for distribution builds (used for error diffusion dithering in the PCL Renderer). It is optional otherwise. Updated the licensing info and release notes to make the changes clear. ........ r637993 | vhennebert | 2008-03-17 17:48:44 +0000 (Mon, 17 Mar 2008) | 3 lines Bugzilla #44621: when the after border of a cell, in the trailing case, is bigger than in the normal case, the generated sequence of Knuth elements was wrong, leading to content being swallowed This is a partial fix only: the content is no longer swallowed, but the penalty is wrong (shorter than it should be). This will lead to the table overflowing the region-body without warning. ........ r638048 | vhennebert | 2008-03-17 20:00:36 +0000 (Mon, 17 Mar 2008) | 2 lines Changed the documentation to reflect the move to Java 1.4 as a minimum requirement ........ r638308 | vhennebert | 2008-03-18 10:26:32 +0000 (Tue, 18 Mar 2008) | 2 lines Simplified the getNextKnuthElements method a little bit ........ r638316 | vhennebert | 2008-03-18 11:06:59 +0000 (Tue, 18 Mar 2008) | 2 lines Removed the 'jdk1.4' suffix appended to the binary artifacts. There's no point in making the distinction anymore since there is only one binary now ........ r638317 | vhennebert | 2008-03-18 11:08:29 +0000 (Tue, 18 Mar 2008) | 2 lines Updated the probable date of the release ........ git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@638396 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/java/org/apache/fop/image/analyser/PNGReader.java')
-rw-r--r--src/java/org/apache/fop/image/analyser/PNGReader.java115
1 files changed, 0 insertions, 115 deletions
diff --git a/src/java/org/apache/fop/image/analyser/PNGReader.java b/src/java/org/apache/fop/image/analyser/PNGReader.java
deleted file mode 100644
index ab6c64775..000000000
--- a/src/java/org/apache/fop/image/analyser/PNGReader.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.image.analyser;
-
-// Java
-import java.io.InputStream;
-import java.io.IOException;
-
-// FOP
-import org.apache.fop.image.FopImage;
-import org.apache.fop.apps.FOUserAgent;
-
-/**
- * ImageReader object for PNG image type.
- *
- * @author Pankaj Narula
- * @version $Id$
- */
-public class PNGReader implements ImageReader {
-
- private static final int PNG_SIG_LENGTH = 24;
-
- /** {@inheritDoc} */
- public FopImage.ImageInfo verifySignature(String uri, InputStream bis,
- FOUserAgent ua) throws IOException {
- byte[] header = getDefaultHeader(bis);
- boolean supported = ((header[0] == (byte) 0x89)
- && (header[1] == (byte) 0x50)
- && (header[2] == (byte) 0x4e)
- && (header[3] == (byte) 0x47)
- && (header[4] == (byte) 0x0d)
- && (header[5] == (byte) 0x0a)
- && (header[6] == (byte) 0x1a)
- && (header[7] == (byte) 0x0a));
-
- if (supported) {
- FopImage.ImageInfo info = new FopImage.ImageInfo();
- info.dpiHorizontal = ua.getFactory().getSourceResolution();
- info.dpiVertical = info.dpiHorizontal;
-
- getDimension(header, info);
- info.originalURI = uri;
- info.mimeType = getMimeType();
- info.inputStream = bis;
- return info;
- } else {
- return null;
- }
- }
-
- /**
- * Returns the MIME type supported by this implementation.
- *
- * @return The MIME type
- */
- public String getMimeType() {
- return "image/png";
- }
-
- private void getDimension(byte[] header, FopImage.ImageInfo info) {
- // png is always big endian
- int byte1 = header[16] & 0xff;
- int byte2 = header[17] & 0xff;
- int byte3 = header[18] & 0xff;
- int byte4 = header[19] & 0xff;
- long l = (long) ((byte1 << 24)
- | (byte2 << 16)
- | (byte3 << 8)
- | (byte4));
- info.width = (int) l;
-
- byte1 = header[20] & 0xff;
- byte2 = header[21] & 0xff;
- byte3 = header[22] & 0xff;
- byte4 = header[23] & 0xff;
- l = (long) ((byte1 << 24) | (byte2 << 16) | (byte3 << 8) | byte4);
- info.height = (int) l;
- }
-
- private byte[] getDefaultHeader(InputStream imageStream)
- throws IOException {
- byte[] header = new byte[PNG_SIG_LENGTH];
- try {
- imageStream.mark(PNG_SIG_LENGTH + 1);
- imageStream.read(header);
- imageStream.reset();
- } catch (IOException ex) {
- try {
- imageStream.reset();
- } catch (IOException exbis) {
- // throw the original exception, not this one
- }
- throw ex;
- }
- return header;
- }
-
-}
/stable30'>backport/48015/stable30 Nextcloud server, a safe home for all your data: https://github.com/nextcloud/serverwww-data
aboutsummaryrefslogtreecommitdiffstats
path: root/AUTHORS
blob: 5f992b932ef63bd5662b4b99ffdce29fb28d7d4c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
ownCloud is written by:
	Frank Karlitschek
	Robin Appelman
	Jakob Sack
	Jan-Christoph Borchardt
	Michael Gapczynski
	François Kubler
	Kunal Ghosh
	Antonio José Gallo Sánchez
	Arthur Schiwon
	Kamil Domański
	Aldo Giambelluca
	Dominik Schmidt
	…

With help from many libraries and frameworks including:
	Open Collaboration Services
	SabreDAV
	jQuery
	…