JavaFxを使用してJavaプログラムを作成しています。 2つのプログラムがあります。各プログラムの義務は、サーバーとクライアントです。クライアントはイメージをサーバーに送信します。私はImageView
クラスを使ってイメージを扱いました。イメージをサーバーに送るには、int
の2次元配列を作成し、イメージの各ピクセルを配列に格納して、ソケットを通して送信すると思います。 ,ImageView
クラスには、ピクセルを処理するメソッドがありません。私はImage
クラスが持っていることがわかりました。私はクラスを変更したくありません。だから誰も問題に対処する方法を知っている。また、以下の写真は、私が書いたものである:オブジェクトがImageViewであってもclass-Imageメソッドを使用できますか?
public void sendImage(ImageView sentObject)
{
int[][] pixel= new int[592][559];
try
{
for(int j=0;j<559;j++)
{
for(int i=0;i<592;i++)
pixel[i][j]=sentObject.getPixelReader().getColor(i,j);
}
ObjectOutputStream out = new ObjectOutputStream(client.getOutputStream());
out.writeObject(sentObject);
out.flush();
}
catch(IOException IO)
{
IO.printStackTrace();
}
}
しかし、それはエラーを得た:
以下error: cannot find symbol
pixel[i][j]=sentObject.getPixelReader().getColor(i,j);
^
symbol: method getPixelReader()
location: variable sentObject of type ImageView
は、階層である[1]:
リファレンス
- 0あなたは
javafx.embed.swing.SwingFXUtils
とBufferedImage
オブジェクトを通してそれをシリアル化することができ、Image
オブジェクトを送信および受信する
ちょうど 'sentObject.getImage()を使用getPixelReader(... ) ' –
James_Dありがとうございます。それは修正されました。 – Hajime