java运用ascii实现动画效果_java实现仿抖音字符动图效果

当然,有了原理我们还需要通过实践来验证。我们来编写一个java程序实现将上面给出的test.png这张图片字符化。我将使用字符来描述一张图片称为图片字符化。

首先定义一个字符串,用于做替换的。

private final static String IMG_ASCII = "@#&$%*o!;.";

编写一个方法,该方法要做的事情如下:

根据传递进来的图片路径信息读取图片,就是将图片文件加载到内存中。

// 读取图片文件到内存

BufferedImage image = ImageIO.read(new File(imgPath));

获取图片的宽高,根据宽度限制循环范围遍历图片的每一个像素,获取到每一个像素的rgb值。

// 获取图片宽度和高度

int width = image.getWidth();

int height = image.getHeight();

// 遍历图片像素,x横坐标,y纵坐标

for (int y = 0; y 

for (int x = 0; x 

int rgb = image.getRGB( x,y);

}

}

由于获取到的这个rgb值是包含r、g、b的值在里面的,所以需要分解分别获取到r的值、g的值和b的值。

//返回的颜色值是个整数,即四个字节,这四个字节保存的值从高位到低位分别位透明度a、r、g、b。

int r = (rgb & 0xff0000)>>16;

int g = (rgb  & 0xff00)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值