繁体   English   中英

如何给图片添加棕褐色滤镜

[英]How to give a picture a Sepia filter

我正在尝试使用棕褐色滤镜将照片打印出来,但它只会打印同一张(未编辑的)图片两次。 如何在底部使用棕褐色代码来工作? 该代码将图片变成灰度,然后变成棕褐色。

import images.*;

public class Sepia{

 public static void main(String[]args){
  APImage image = new APImage("lobster.jpg");
  image.draw();
  APImage aCopy = image.clone();
  for (Pixel p: aCopy){
     int red = p.getRed();
     int green = p.getGreen();
     int blue = p.getBlue();
     int average = (red + green + blue) / 3;
     p.setRed(average);
     p.setGreen(average);
     p.setBlue(average);

     if (red < 63){
       red = (int)(red *1.1);
       blue = (int)(blue * 0.9);
     }else if (red < 192){
       red = (int)(red*1.15);
       blue = (int)(blue *0.85);
     }else{
       red = Math.min((int)(red*1.08),255);
       blue = (int)(blue *0.93);
     }

     aCopy.draw();
     aCopy.save();
   }
 }
}

尝试在抽奖之前添加此内容。

 p.setRed(red);
 p.setGreen(green);
 p.setBlue(blue);

同样,抽签并保存在for循环之外

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM