기본적으로이 값은 이미지의 회색 값을 아래의 ascii 코드로 변환해야하는 프로그램의 일부입니다. "메소드는 다음과 같아야합니다. char [] []의 타입을 돌려 준다. 공백을 인쇄하는 최초의 1 개 ("return null")에 성공했다.grayVal을 Ascii 문자로 변환하여 Ascii 코드로 변환
public static char[][] imageToASCII(Image img)
{
BufferedImage bufImg = convert(img);
for(int j=0; j<bufImg.getHeight(); j++)
{
for(int i=0; i<bufImg.getWidth(); i++)
{
int values=bufImg.getRGB(i,j);
Color oldColor = new Color(values);
int red = oldColor.getRed(); // get red value
int green = oldColor.getGreen(); // get green value
int blue = oldColor.getBlue();
double grayVal = 0.299*red + 0.587*green + 0.114*blue;
Color newColor = new Color((int)grayVal, (int)grayVal, (int)grayVal);
if(grayVal >= 230)
{
return null;
}
else if(grayVal >= 200 && grayVal < 230)
{
return .;
}
else if(grayVal >= 180 && grayVal < 200)
{
return *;
}
else if(grayVal >= 160 && grayVal < 180)
{
return :;
}
else if(grayVal >= 130 && grayVal < 160)
{
return o;
}
else if(grayVal >= 100 && grayVal < 130)
{
return &;
}
else if(grayVal >= 70 && grayVal < 100)
{
return 8;
}
else if(grayVal >=50 && grayVal < 70)
{
return #;
}
else
return @
}
}
}}
음을, 방법의 반환 유형은' char [] []'. 그것은 2 차원 문자 배열입니다. 그러나 당신은'return :'과 같은 것을 쓸 수 있습니다. 이것은 합법적 인 Java 문이 아니며'return '을 사용하더라도'', 그것은 여전히 char의 2 차원 배열이 아니라 단일 char입니다. – RealSkeptic
2 차원 배열의 문자를 반환 할 수 있습니까? – raymondT