1. Миниатюра
При просмотре альбомов вам может потребоваться генерировать соответствующие миниатюры.
Прямая загрузка кода:
Public Class Imageutil {Private Logger log = loggerFactory.getLogger (getClass ()); Путь* @param w ширина миниатюры* @param h Сгенерировать префикс миниатюр * @param force, чтобы заставить миниатюр, сгенерированные миниатюры в соответствии с шириной и высотой (если ложь, сгенерирована лучшая масштаба) */ public void thenailmage (string imagepath, int w, int h, string prevfix, boolean force) {file imgile = new (imagepath); : [BMP, BMP, JPG, JPG, WBMP, JPEG, PNG, PNG, JPEG, WBMP, GIF, GIF] Строки Типы = Arrays.tostring (imageio.getReaderFormatNames ()); Независимо от того, является ли суффикс законным, если (суффикс == null || types.tolowercase (). indexof (суффикс.toloarcecase ()) <0) {log.error ("Извините, Суффикс изображения нелегальный суффикс изображения {}. " + типы); return;} log.debug (" Размер целевого изображения, ширина: {}, высота: {}. ); = Integer.parseint (new java.text.decimalformat ("0"). Формат (высота * w/(ширина * 1.0)); .format (ширина * h/(высота * 1.0)); } BufferedImage BI = New BufferedImage (W, H, BufferedImage.Type_int_rgb); Суффикс, новый файл (p.substring (0, p.lastindexof (file.separator)) + file.separator + prevfix +imgfile.getName ())); Image ("c:/users/cm/desktop/my page/images/girlnoimg.jpg", 100, 150, default_prevfix, default_force);Запустите основной метод напрямую и заполните соответствующие параметры.
2. сотрудничать с JS, чтобы генерировать обрезанные картинки
Когда мы изменяем нашу личную информацию Weibo и QQ, мы можем загрузить наши личные аватары, а затем вырезать наши личные аватары и загружать их. Размер и стиль обрезанных изображений реализованы через JavaScript, но он не генерирует новое изображение. Тем не менее, обрезанные изображения JS обеспечивают координаты X и Y и ширину и высоту изображения.
шаг:
1. Во -первых, я использовал JS, чтобы реализовать функцию вырезания и просмотра изображения через страницу. Кроме того, мы также можем использовать плагины, такие как JCROP, который является очень хорошим плагином для обрезки изображения.
Адрес загрузки: http://download.csdn.net/detail/u012385190/9733480
Окончательный рендеринг, как и выше.
2. Java генерирует и сохраняет вырезанные картинки
Public Class ImageUtil2 { , Outputstream output, java.awt.rectangle rect) {если (srcimg.exists ()) {java.io.fileinputstream fis = null; types = arrays.tostring (imageio.getreaderformatnames ()) .replace ("]", ","); // Получить суффикс изображения if (srcimg.getName (). Indexof (".")> -1) {суффикс = srcimg.getname (). Substring (srcimg.getname (). OF (Suffix.ToloWerCase () + ",") <0) {log.Error ("Извините, суффикс изображения является незаконным. Стандартный суффикс изображения - {}." + Типы); param.setsourceregion (rect); ImageIo.Write (BI, суффикс, вывод); ) iis.close (); / ith (file.separator)) p = p + file.separator; java.io.fileoutputstream (p+ default_cut_prevfix+ "_"+ srcimg.getname (), rect); , int x, int y, int width, int height) {cutimage (новый файл (srcimg), destimg, new java.awt.rectangle (x, y, width, height); Util2 (). Cutimage ("c:/users/cm/desktop/jcrop-master/demos/demo_files/sago.jpg", "C:/users/cm/desktop/my page/images/imgs", 124, 110, 196, 176);Этот метод может быть запущен непосредственно в основном. Четыре передаваемых параметров - это путь изображения, левое значение, верхнее значение, длина и ширина.
Давайте проанализируем, как получить эти четыре параметра:
1. В качестве примера вырезал мой JS, я получаю следующее через F12:
Красная часть на рисунке - это div срезанного изображения. Как и на рисунке, мой x/y/y/высота составляет 40,28,224 228 соответственно.
Примечание. В JS я определяю длину и ширину DIV и изображение как 300*300. Если размер изображения, который вы протестировали, не составляет 300*300, то эффект, который вы тестировали непосредственно в Java выше, будет отличаться от того, что вы видите на переднем конце, потому что я определяю ширину и высоту вашего изображения переднего конца как 300*300, в то время как ваше фактическое изображение (то есть изображение на Java) не является.
Так что, если эта проблема решена?
Получите длину и ширину исходного изображения в коде Java, а затем определите, являются ли длина и ширина исходного изображения 300*300. (Мой код не обрабатывает его, я обработаю его сам, если он мне понадобится, и удалю миниатюры после использования изображения)
2. Jcrop получает параметры
Как показано на рисунке, JCROP напрямую обеспечивает параметры и может использоваться напрямую. Но один недостаток состоит в том, что область размера изображения на передней части страницы не зафиксирована.
Таким образом, рекомендуется использовать первый JS, а затем определить, являются ли длина и ширина исходного изображения 300, и генерировать миниатюру 300*300, затем используйте миниатюру в качестве прототипа урожая, а затем удалите миниатюру после его использования.
Приведенный выше метод Java Image Cperting и генерирование миниатюров, представленное вам редактором. Большое спасибо за вашу поддержку сайту wulin.com!