diff --git a/common/pom.xml b/common/pom.xml index c6063172..a2456780 100644 --- a/common/pom.xml +++ b/common/pom.xml @@ -138,12 +138,12 @@ ${UserAgentUtils.version} - + net.coobird diff --git a/common/src/main/java/com/jeesite/common/image/ImageGeo.java b/common/src/main/java/com/jeesite/common/image/ImageGeo.java index 6b697390..b7181ef5 100644 --- a/common/src/main/java/com/jeesite/common/image/ImageGeo.java +++ b/common/src/main/java/com/jeesite/common/image/ImageGeo.java @@ -1,66 +1,66 @@ -/** - * Copyright (c) 2013-Now http://jeesite.com All rights reserved. - */ -package com.jeesite.common.image; - -import java.io.File; - -import com.drew.imaging.jpeg.JpegMetadataReader; -import com.drew.lang.Rational; -import com.drew.metadata.Metadata; -import com.drew.metadata.exif.GpsDirectory; - -/** - * 图片地理信息获取 - * @author ThinkGem - */ -public class ImageGeo { - - public double lat = 0.0; - public double lon = 0.0; - public double alt = 0.0; - public boolean error = false; - - public ImageGeo(String filename) { - try { - error = false; - File jpegFile = new File(filename); - Metadata metadata = JpegMetadataReader.readMetadata(jpegFile); - - GpsDirectory gpsdir = (GpsDirectory) metadata.getDirectoriesOfType(GpsDirectory.class); - Rational latpart[] = gpsdir.getRationalArray(GpsDirectory.TAG_LATITUDE); - Rational lonpart[] = gpsdir.getRationalArray(GpsDirectory.TAG_LONGITUDE); - String northing = gpsdir.getString(GpsDirectory.TAG_LATITUDE_REF); - String easting = gpsdir.getString(GpsDirectory.TAG_LONGITUDE_REF); - - try { - alt = gpsdir.getDouble(GpsDirectory.TAG_ALTITUDE); - } catch (Exception ex) {} - - double latsign = 1.0d; - if (northing.equalsIgnoreCase("S")) { - latsign = -1.0d; - } - double lonsign = 1.0d; - if (easting.equalsIgnoreCase("W")) { - lonsign = -1.0d; - } - - lat = (Math.abs(latpart[0].doubleValue()) + latpart[1].doubleValue() / 60.0d + latpart[2].doubleValue() / 3600.0d) * latsign; - lon = (Math.abs(lonpart[0].doubleValue()) + lonpart[1].doubleValue() / 60.0d + lonpart[2].doubleValue() / 3600.0d) * lonsign; - - if (Double.isNaN(lat) || Double.isNaN(lon)) { - error = true; - } - } catch (Exception ex) { - error = true; - } - System.out.println(filename + ": (" + lat + ", " + lon + ")"); - } - -// public static void main(String[] args) { -// ImageGeo imageGeo = new ImageGeo(ImageGeo.class.getResource("IMAG0068.jpg").getFile()); -// System.out.println(imageGeo.lon + "," + imageGeo.lat); +///** +// * Copyright (c) 2013-Now http://jeesite.com All rights reserved. +// */ +//package com.jeesite.common.image; +// +//import java.io.File; +// +//import com.drew.imaging.jpeg.JpegMetadataReader; +//import com.drew.lang.Rational; +//import com.drew.metadata.Metadata; +//import com.drew.metadata.exif.GpsDirectory; +// +///** +// * 图片地理信息获取 +// * @author ThinkGem +// */ +//public class ImageGeo { +// +// public double lat = 0.0; +// public double lon = 0.0; +// public double alt = 0.0; +// public boolean error = false; +// +// public ImageGeo(String filename) { +// try { +// error = false; +// File jpegFile = new File(filename); +// Metadata metadata = JpegMetadataReader.readMetadata(jpegFile); +// +// GpsDirectory gpsdir = (GpsDirectory) metadata.getDirectoriesOfType(GpsDirectory.class); +// Rational latpart[] = gpsdir.getRationalArray(GpsDirectory.TAG_LATITUDE); +// Rational lonpart[] = gpsdir.getRationalArray(GpsDirectory.TAG_LONGITUDE); +// String northing = gpsdir.getString(GpsDirectory.TAG_LATITUDE_REF); +// String easting = gpsdir.getString(GpsDirectory.TAG_LONGITUDE_REF); +// +// try { +// alt = gpsdir.getDouble(GpsDirectory.TAG_ALTITUDE); +// } catch (Exception ex) {} +// +// double latsign = 1.0d; +// if (northing.equalsIgnoreCase("S")) { +// latsign = -1.0d; +// } +// double lonsign = 1.0d; +// if (easting.equalsIgnoreCase("W")) { +// lonsign = -1.0d; +// } +// +// lat = (Math.abs(latpart[0].doubleValue()) + latpart[1].doubleValue() / 60.0d + latpart[2].doubleValue() / 3600.0d) * latsign; +// lon = (Math.abs(lonpart[0].doubleValue()) + lonpart[1].doubleValue() / 60.0d + lonpart[2].doubleValue() / 3600.0d) * lonsign; +// +// if (Double.isNaN(lat) || Double.isNaN(lon)) { +// error = true; +// } +// } catch (Exception ex) { +// error = true; +// } +// System.out.println(filename + ": (" + lat + ", " + lon + ")"); // } - -} +// +//// public static void main(String[] args) { +//// ImageGeo imageGeo = new ImageGeo(ImageGeo.class.getResource("IMAG0068.jpg").getFile()); +//// System.out.println(imageGeo.lon + "," + imageGeo.lat); +//// } +// +//} diff --git a/parent/pom.xml b/parent/pom.xml index a37d95c5..196d4c3b 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -32,7 +32,7 @@ 1.5 1.1.1 1.21 - 2.11.0 + 0.4.8 3.4.1 1.1.0