JMagickが未完成という事で使いたくありません。

InputStreamで受けた画像をjavaからコマンドラインのImageMagickのconvertを呼んで加工し、OutputStreamで返すという事は可能でしょうか?
サンプルソースがあるとうれしいです。
ソースで言うと↓な感じです。

public static void convert(
InputStream src,
OutputStream dst)
throws Exception {
process1 = Runtime.getRuntime().exec(”convert〜〜〜”);
でOutPutStreamに加工した画像が入る。
}

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:ozonepapa No.1

回答回数288ベストアンサー獲得回数0

ポイント25pt

convertコマンドは、入力ファイル名と出力ファイル名が必要なんですよね。

Javaのプログラムで作業用のファイルを作成してはどうでしょうか、

たとえば、以下のような感じです。

public static void convert(inputStream src, OutputStread dst) throws Exception {

FileOutputStream fos = new FileOutputStread(”/tmp/out.jpg”);

FileInputStream fis;

int b;

// src-->/tmp/out.jpg

while ( (b = src.read()) != -1 ) {fos.write(b);}

fos.close();

// convert

Runtime.getRuntime.exec(”convert -geometry 200x135 /tmp/out.jpg /tmp/in.jpg”);

// /tmp/out.jpg-->dst

fis = new FileInputStream(”/tmp/in.jpg”);

while ( (b = fis.read()) != -1 ) {dst.write(b);}

close b;

}

id:kunitz

ありがとうございます!

2004/07/21 07:15:29
id:osomatsu No.2

回答回数3ベストアンサー獲得回数0

ポイント25pt

質問から少し外れるかもしれません。

確かに JMagick は開発途上です。私も使いたくなかったので、以前は ”ImageI/O” を使いました。

J2SE の 1.4 以降であれば標準でバンドルされていますので、ImageMagick を必要としない分、

こちらを使う方が無難かと思われます。

URLの記事の中では画像のロード、縮小、フォーマットを指定してセーブなどのソースが示されています。

的外れならごめんなさい。

id:kunitz

ありがとうございます!

ImageI/Oだと特許の関係でgifで保存ができませんねん・・・orz

2004/07/23 17:26:46

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません