annotate servlet/src/digilib/image/ImageLoaderDocuInfo.java @ 122:a32e8c80e2f2

Servlet Version 1.10b1 - more intelligent handling of resolutions - different handling of mo=lores
author robcast
date Wed, 11 Jun 2003 22:51:28 +0200
parents
children 837a633a0407
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
122
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
1 /* ImageLoaderDocuInfo -- DocuInfo implementation using ImageLoader API
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
2
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
3 Digital Image Library servlet components
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
4
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
5 Copyright (C) 2003 Robert Casties (robcast@mail.berlios.de)
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
6
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
7 This program is free software; you can redistribute it and/or modify it
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
8 under the terms of the GNU General Public License as published by the
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
9 Free Software Foundation; either version 2 of the License, or (at your
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
10 option) any later version.
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
11
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
12 Please read license.txt for the full details. A copy of the GPL
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
13 may be found at http://www.gnu.org/copyleft/lgpl.html
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
14
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
15 You should have received a copy of the GNU General Public License
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
16 along with this program; if not, write to the Free Software
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
18
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
19 * Created on 11.06.2003
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
20 *
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
21 */
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
22 package digilib.image;
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
23
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
24 import java.awt.Dimension;
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
25 import java.io.IOException;
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
26
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
27 import digilib.io.DocuFile;
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
28 import digilib.io.FileOps;
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
29
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
30 /**
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
31 * @author casties
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
32 *
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
33 */
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
34 public class ImageLoaderDocuInfo implements DocuInfo {
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
35
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
36 private ImageLoaderDocuImage img = new ImageLoaderDocuImage();
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
37
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
38 /* check image size and type and store in DocuFile f */
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
39 public boolean checkFile(DocuFile f) throws IOException {
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
40 // see if f is already loaded
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
41 if ((img.reader == null) || (img.imgFile != f.getFile())) {
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
42 img.preloadImage(f.getFile());
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
43 }
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
44 Dimension d =
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
45 new Dimension(img.reader.getWidth(0), img.reader.getHeight(0));
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
46 f.setSize(d);
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
47 String t = img.reader.getFormatName();
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
48 t = FileOps.mimeForFile(f.getFile());
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
49 f.setMimetype(t);
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
50 f.setChecked(true);
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
51 return true;
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
52 }
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
53
a32e8c80e2f2 Servlet Version 1.10b1
robcast
parents:
diff changeset
54 }