Ich versuche, ein Bild mit einem Sepia-Filter auszudrucken, aber es druckt nur das gleiche (unbearbeitete) Bild zweimal. Wie bekomme ich meinen sepia Code unten um zu arbeiten? Der Code verwandelt das Bild in Graustufen und dann Sepia.Wie gebe ich ein Bild ein 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();
}
}
}
Sind Sie Art, dass Denk Javascript ist der große Bruder von Java oder so etwas? ;-) –
Was ist 'APImage'? Es ist nicht Teil der Java-Standardbibliothek. Was ist Pixel? –
@ErwinBolwidt Ich habe auch gegooglet, es ist http://home.wlu.edu/~lambertk/hsjava/edition4/whatsnew/imagedocs/images/apimage.html (einige seltsame Stück Code, IMHO ...) – Marco13