1. Thumbnail
Saat menjelajahi album, Anda mungkin perlu menghasilkan thumbnail yang sesuai.
Langsung unggah kode:
Public ImageUtil {private Logger Log = LoggerFactory.getLogger (getClass ()); * @param w lebar thumbnail* @param h thumbnail tinggi* @param prevfix Hasilkan awalan thumbnail * @param memaksa apakah akan memaksa thumbnail untuk dihasilkan sesuai dengan lebar dan tinggi (jika salah, thumbnail skala terbaik dihasilkan) */ public void thumbnailimage (string imageTepath, int w, string previx, boolean force) {file imgfile = {imagePath) {imagePATH) (ImagePATH); [BMP, BMP, JPG, JPG, WBMP, JPEG, PNG, PNG, JPEG, WBMP, GIF, GIF] Jenis String = Arrays.tostring (Imageo.getReaderFormatnames ()); apakah akhirannya legal jika (sufiks == null || type.tolowercase (). indexOf (suffix.tolowercase ()) <0) {log.error ("Maaf, Sufiks gambar adalah ilegal. null); = Integer.parseint (java.text.decimalformat ("0"). Format (tinggi * w/(lebar * 1.0)))); ") .Format (lebar * h/(tinggi * 1.0))); log.debug (" Ubah lebar gambar, lebar: {}, tinggi: {}. ", w, h);}} } BufferedImage BI = BufferedImage (W, H, BufferedImage.type_int_rgb); , file baru (p.substring (0, p.LastIndexof (file.separator)) + file.separator + prevfix +imgfile.getName ())); ailimage ("c:/user/cm/desktop/my page/gambar/girlnoimg.jpg", 100, 150, default_prevfix, default_force);Jalankan metode utama secara langsung dan isi parameter yang sesuai.
2. Bekerja sama dengan JS untuk menghasilkan gambar yang dipotong
Ketika kami memodifikasi informasi Weibo dan QQ pribadi kami, kami dapat mengunggah avatar pribadi kami, dan kemudian memotong avatar pribadi kami dan mengunggahnya. Ukuran dan gaya gambar yang dipangkas diimplementasikan melalui JavaScript, tetapi tidak menghasilkan gambar baru. Namun, gambar cropped JS memberikan koordinat x dan y dan lebar dan tinggi gambar.
melangkah:
1. Pertama, saya menggunakan JS untuk mewujudkan fungsi pemotongan dan penelusuran gambar melalui halaman. Selain itu, kami juga dapat menggunakan plug-in, seperti JCROP, yang merupakan plug-in pemotongan gambar yang sangat bagus.
Alamat unduhan: http://download.csdn.net/detail/u012385190/9733480
Render terakhir adalah seperti di atas.
2. Java menghasilkan dan menyimpan gambar potongan
Public Imageutil2 {private Logger Log = LoggerFactory.getLogger (getClass ()); cimg, outputStream output, java.awt.rectangle rect) {if (srcimg.exists ()) {java.io.fileInputStream fis = null ] String type = arrays.toString (Imageo.getReaderFormatnames ()) .replace ("]", ","); // Dapatkan sufiks gambar if (srcimg.getname (). Indexof (".")> -1) {suffix = srcimg.getname (). suffix.tolowercase () + ",") <0) {log.error ("Maaf, sufiks gambar ilegal. Sufiks gambar standar adalah {}." + tipe); ; Imageo.write (bi, sufiks, output); = null) iis.close (); } // menghasilkan jalur target public void cutimage (file srcimg, string destsimgpath, java.awt.rectangle rect) {file destsimg = new file (destsimgpath); swith (file.separator)) p = p + file.separator; java.io.fileOutputStream (p+ default_cut_prevfix+ "_"+ srcimg.getname ()), rect)} catch (public filenotfoundException e) {log.warn ("gambar tidak ada."); g, int x, int y, lebar int, int tinggi) {cutimage (file baru (srcimg), Destsimg, Java.awt.rectangle baru (x, y, lebar, tinggi)); gambar baru (). cutimage ("c: /users/cm/desktop/jcrop-master/demos/demo_files/sago.jpg", "C:/Users/CM/Desktop/My Page/Images/IMGS", 124, 110, 196, 176);Metode ini dapat dijalankan langsung di Main. Empat parameter yang dilewati adalah jalur gambar, nilai kiri, nilai atas, panjang dan lebar.
Mari kita analisis cara mendapatkan empat parameter ini:
1. Mengambil Cut JS saya sebagai contoh, saya mendapatkan yang berikut melalui F12:
Bagian merah dalam gambar adalah div dari potongan gambar. Seperti pada gambar, x/y/lebar/tinggi saya masing -masing adalah 40,28.224.228.
Catatan: Di JS, saya mendefinisikan panjang dan lebar div dan gambar sebagai 300*300. Jika gambar yang Anda uji bukan 300*300, maka efek yang Anda uji langsung di Java di atas akan berbeda dari apa yang Anda lihat di ujung depan, karena saya menentukan lebar dan tinggi gambar ujung depan Anda sebagai 300*300, sedangkan gambar Anda yang sebenarnya (mis., Gambar di Java) tidak.
Jadi bagaimana jika masalah ini ditangani?
Dapatkan panjang dan lebar gambar asli dalam kode Java Anda, dan kemudian tentukan apakah panjang dan lebar gambar asli adalah 300*300. (Kode saya tidak memprosesnya, saya akan memprosesnya sendiri jika saya membutuhkannya, dan menghapus thumbnail setelah menggunakan gambar)
2. Jcrop Mendapat Parameter
Seperti yang ditunjukkan pada gambar, JCROP secara langsung menyediakan parameter dan dapat digunakan secara langsung. Tetapi satu kerugian adalah bahwa area ukuran gambar dari halaman front-end tidak diperbaiki.
Jadi secara ringkas, disarankan untuk menggunakan JS pertama, dan kemudian menentukan apakah panjang dan lebar gambar asli adalah 300, dan menghasilkan thumbnail 300*300, kemudian gunakan thumbnail sebagai prototipe tanaman, dan kemudian hapus thumbnail setelah menggunakannya.
Di atas adalah contoh pemangkasan gambar Java dan menghasilkan thumbnail yang diperkenalkan kepada Anda oleh editor. Terima kasih banyak atas dukungan Anda ke situs web Wulin.com!