好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Java实现图片旋转、指定图像大小和水平翻转

本文实例为大家分享了java实现图片旋转、指定图像大小、水平翻转,供大家参考,具体内容如下

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

package com.zeph.j2se.image;

 

import java.awt.graphics2d;

import java.awt.renderinghints;

import java.awt.image.bufferedimage;

 

public class imageoperate {

  /**

  * 旋转图片为指定角度

  *

  * @param bufferedimage

  *   目标图像

  * @param degree

  *   旋转角度

  * @return

  */

  public static bufferedimage rotateimage( final bufferedimage bufferedimage,

  final int degree) {

  int w = bufferedimage.getwidth();

  int h = bufferedimage.getheight();

  int type = bufferedimage.getcolormodel().gettransparency();

  bufferedimage img;

  graphics2d graphics2d;

  (graphics2d = (img = new bufferedimage(w, h, type)).creategraphics())

  .setrenderinghint(renderinghints.key_interpolation,

   renderinghints.value_interpolation_bilinear);

  graphics2d.rotate(math.toradians(degree), w / 2 , h / 2 );

  graphics2d.drawimage(bufferedimage, 0 , 0 , null );

  graphics2d.dispose();

  return img;

  }

 

  /**

  * 变更图像为指定大小

  *

  * @param bufferedimage

  *   目标图像

  * @param w

  *   宽

  * @param h

  *   高

  * @return

  */

  public static bufferedimage resizeimage( final bufferedimage bufferedimage,

  final int w, final int h) {

  int type = bufferedimage.getcolormodel().gettransparency();

  bufferedimage img;

  graphics2d graphics2d;

  (graphics2d = (img = new bufferedimage(w, h, type)).creategraphics())

  .setrenderinghint(renderinghints.key_interpolation,

   renderinghints.value_interpolation_bilinear);

  graphics2d.drawimage(bufferedimage, 0 , 0 , w, h, 0 , 0 ,

  bufferedimage.getwidth(), bufferedimage.getheight(), null );

  graphics2d.dispose();

  return img;

  }

 

  /**

  * 水平翻转图像

  *

  * @param bufferedimage

  *   目标图像

  * @return

  */

  public static bufferedimage flipimage( final bufferedimage bufferedimage) {

  int w = bufferedimage.getwidth();

  int h = bufferedimage.getheight();

  bufferedimage img;

  graphics2d graphics2d;

  (graphics2d = (img = new bufferedimage(w, h, bufferedimage

  .getcolormodel().gettransparency())).creategraphics())

  .drawimage(bufferedimage, 0 , 0 , w, h, w, 0 , 0 , h, null );

  graphics2d.dispose();

  return img;

  }

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

原文链接:https://blog.csdn.net/benweizhu/article/details/7307720

查看更多关于Java实现图片旋转、指定图像大小和水平翻转的详细内容...

  阅读:24次