質問

外部アプリケーションの一部となるjavaでアプリケーションを作成しています。私のアプリケーションには、いくつかのポリゴンなどを表示するビューポートが含まれています。外部アプリケーションは、gif形式でビューポートの画像を取得する必要があります。そのために、インターフェイス(アプリケーションで実装)のメソッドを呼び出し、アプリケーションが画像を返します。外部アプリケーションは画像をデータベースに保存する必要があります(またはそれに関連するもので、心配する必要はありません)。

私の質問は次のとおりです。-アプリケーションが外部アプリケーションに画像を送信するとき、画像のデータコンテナタイプは何ですか?メソッドの戻り値の型はどうあるべきかということです。 現在、私のgifエンコーダクラスはバイト配列を返します。他の「より良い」オプションはありますか?

役に立ちましたか?

解決

GIFが小さいと予想される場合はバイト配列が適切かもしれませんが、ビットをより効率的にストリーミングできるように OutputStream の使用を検討するかもしれません。

今日、完全に読み込まれた ByteArrayOutputStream を返す場合でも、これにより、サイレントコードに影響を与えずに実装を変更できます。

他のヒント

より直感的な戻り値のタイプはjava.awt.Imageです。

以下に例を示します。 http://www.google.com/codesearch? q = java + gif + image& hl = en& btnG = Search + Code

「アプリケーション」が実際にJavaメソッドを呼び出している場合、Javaの戻り値の型を理解し、java.awt.imageを返す必要があります。

Javaの型を理解できない何らかの種類のリモートプロシージャを使用してこれを実行している場合、バイト配列を返し、受信側アプリにデコードさせます。

2つのメソッドを作成します:

  1. 最初のメソッドは画像を作成し、 java.awt.Image を返します。ここで、メソッドの描画部分を配置できます。
  2. 2番目のメソッドは、外部アプリケーションからの要求に応じて、 java.awt.Image のgif表現を作成します。既に提案されているように、 OutputStream を返す必要があります。
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top