• ベストアンサー

Javaでペイントソフトを作りたい

Javaを最近学んでいるんですが… eclipseというものを使っています。 そこでYoutubeをやっているので YoutubeとかTwitterとかのヘッダー画像、サムネイルを作成するソフトウェアを作りたいです サイズのあった画像を作成し、それをペイントツールみたいに描けるツールが作りたいです しかし、Javaがあんまりわからず どう作れば良いのか検討もわかりません… なかなか暇もなく… 自分で作ってみたいです。

  • Java
  • 回答数4
  • ありがとう数8

質問者が選んだベストアンサー

  • ベストアンサー
  • maiko0333
  • ベストアンサー率19% (840/4403)
回答No.1

絵を描くならこんな感じ import java.awt.Color; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.io.File; import javax.imageio.ImageIO; import java.lang.Math; public class Test10 { public static void main(String[] args) { int r = (args.length > 0)? Integer.parseInt(args[0]):100; int n = (args.length > 1)? Integer.parseInt(args[1]):16; int x, y, x1, y1; try { BufferedImage image=new BufferedImage(r*2+10,r*2+10,BufferedImage.TYPE_INT_RGB); Graphics2D g2d=image.createGraphics(); g2d.setBackground(Color.WHITE); g2d.clearRect(0,0,r*2+10,r*2+10); g2d.setColor(Color.BLACK); x1 = r; y1 = 0; for( int i = 1; i <= n; i++ ) { x = (int) Math.round( ( r * Math.cos( i * 360.0 * Math.PI / 180.0 / n ) ) ); y = (int) Math.round( ( r * Math.sin( i * 360.0 * Math.PI / 180.0 / n ) ) ); System.out.println("x=" + x + "y=" + y); g2d.drawLine( x1 + r + 5, y1 * (-1) + r + 5, x + r + 5, y * (-1) + r + 5 ); x1 = x; y1 = y; } ImageIO.write(image, "JPEG", new File("c:\\test10.jpg")); } catch(Exception e) { e.printStackTrace(); } } }

Ryokutya2
質問者

お礼

わざわざありがとうございます…

Ryokutya2
質問者

補足

エラー: メイン・クラスtest.javaが見つからなかったかロードできませんでした とでてしまいます… どうすればいいんですか…Eclipseをつかってやるんですか? すいません、いろいろきいて… 初心者ですいません

その他の回答 (3)

  • maiko0333
  • ベストアンサー率19% (840/4403)
回答No.4

これ、半径100で16角形を書いています。 java Test 200 5 にすると半径200、5角形になりますよ。

Ryokutya2
質問者

お礼

すごいです!! ありがとうございます!!

  • maiko0333
  • ベストアンサー率19% (840/4403)
回答No.3

>ImageIO.write(image, "JPEG", new File("c:\\test10.jpg")); ImageIO.write(image, "JPEG", new File("c:\\どこかのディレクトリー\\test10.jpg")); c:の直下にはおけないことがあります。 どこかのディレクトリーにおいてください。

Ryokutya2
質問者

お礼

おお!?なんかすごそうな丸がかけました! ありがとうございます!

Ryokutya2
質問者

補足

無事出来ました… これをどう応用すればいいかまだ、わかりませんが がんばります!!

  • maiko0333
  • ベストアンサー率19% (840/4403)
回答No.2

>public class Test10 { としているので、Test10.javaというファイル名で作らないといけないです。 Test.java にするなら public class Test { にすればよいです。

Ryokutya2
質問者

お礼

ありがとうございます!!!

Ryokutya2
質問者

補足

まいどすいません… x=92y=38 x=71y=71 x=38y=92 x=0y=100 x=-38y=92 x=-71y=71 x=-92y=38 x=-100y=0 x=-92y=-38 x=-71y=-71 x=-38y=-92 x=0y=-100 x=38y=-92 x=71y=-71 x=92y=-38 x=100y=0 java.io.FileNotFoundException: c:\test10.jpg (アクセスが拒否されました。) at java.io.RandomAccessFile.open0(Native Method) at java.io.RandomAccessFile.open(RandomAccessFile.java:316) at java.io.RandomAccessFile.<init>(RandomAccessFile.java:243) at javax.imageio.stream.FileImageOutputStream.<init>(FileImageOutputStream.java:69) at com.sun.imageio.spi.FileImageOutputStreamSpi.createOutputStreamInstance(FileImageOutputStreamSpi.java:55) at javax.imageio.ImageIO.createImageOutputStream(ImageIO.java:419) at javax.imageio.ImageIO.write(ImageIO.java:1530) at Test10.main(Test10.java:39) java.lang.NullPointerException at javax.imageio.ImageIO.write(ImageIO.java:1538) at Test10.main(Test10.java:39) こんなエラーが…

関連するQ&A

  • javaでのアプレットでペイントツールの作成について

    javaのアプレットでペイントツールを作成したいのですが、javaアプレット入門のサイトはよく見かけるのですが、ペイントツール作成について詳しく載ってるサイトを見つけることができませんでした。そのようなサイトがあれば教えてください。書籍でもかまいません。

    • ベストアンサー
    • Java
  • ペイントの画像をヘッダーに載せる方法

    自分のサイトのヘッダー画像を変えたいのですが方法が分かりません。 元からパソコンに入っていた「ペイント」を使ってヘッダー部分の画像はつくりました。 この画像を自分のショップに載せるには、この画像のURLが分からないといけないのです。 が、このペイントで作成した画像のプロパティを見ても、URLが載っていません。 この場合、ペイントで作成したものを載せるのは無理なのでしょうか? ホームページビルダーというものが必要なのでしょうか? 分かりずらい説明で申し訳ありませんが、ご存知の方どうか教えて下さい!よろしくお願いいたしますm--m

  • ペイントにて…。

    PDFファイルを画像JEPGとして保存しようと思っています。以前はスナップショットから純正のペイントツールを呼び出し貼り付け保存が出来ました。今回も貼り付け保存は出来るのですがサイズが小さくなっています。以前は貼り付け保存で何もしなくてもA4サイズで保存されたのですが今回、貼り付け保存をするとA4より小さく保存されるようになりました。少し説明が難しいのですが純正のペイントツールへ貼り付け保存をする時に自動的にA4へ保存するにはどうすれば良いのでしょうか?宜しくお願い致します。 ※別サイトで質問したのですが回答が得られず投稿しております。

  • twitterのヘッダー画像のサイズについて

    いつもお世話になっております。 twitterのヘッダーに使いたい画像があるのですが、推奨サイズ1500×500ピクセルでなければ画像って綺麗に表示されないでしょうか? 使いたい画像はそのままではなくて一部分を切り取って(Windowsフォトビューアーのペイントの機能を使用)サイズを変更して使おうと思っているのですが、1500×500ピクセルにすると画像がおかしくなってしまいます。 1500×263ピクセルだと綺麗に表示されるので、出来ればこれで使いたいです。 このサイズでもヘッダーに綺麗に表示されますか?

  • ペイントでの貼り付け

    最近新しいパソコンにしました。 以前までウインドウズ98SEを使っていましたが XPにしました。 今日スクリーンショットを撮ったので以前のとおり ペイントに貼り付けをしようとしたのですが、 前と違う所があって困っています。 (最初からパソコンに付いているペイントです) スクリーンショットを75*100というサイズにしたいので、 まずそのサイズにペイントのサイズを合わせました。 前ならスクリーンショットを貼り付けるときに 「貼り付ける画像は現在のサイズより大きいです。 画像サイズを大きくしますか?」と出てきました。 そしてそのときに「いいえ」を選ぶことでうまくいっていました。 でも今はその警告が出ません。 スクリーンショットを貼り付けてから、好きなサイズに合わせてもきれいにできないので、 先にサイズを指定してから貼り付けたい画像を良い位置に合わせるようにしたいのです。 何かの設定だと思うのですがどうすればいいのでしょうか? 分かりにくい文章ですいません……

  • Sun認定Javaプログラマの試験対策環境

    仕事で1年半ほどJavaを使っていました。 その経験を活かし、今後の自分のためにと「Sun認定Javaプログラマ」の受験を検討しています。 この試験勉強用に自宅パソコンに環境を準備したいのですが、 何をインストールすればよいでしょうか? 仕事ではEclipseを使っていたので、開発ツールはEclipseを使う予定です。 http://suned.sun.co.jp/JPN/certification/javamain.html

    • ベストアンサー
    • Java
  • twitterにyoutubeサムネイル

    twitterを見ているとyoutubeの動画の静止画像(サムネイルというんでしょうか。クリックすると動画が始まるアレです。)が直接出ているのを見かけます。私は現在youtube動画をtwitterで宣伝するのにURLを貼っているだけですが、サムネイルを貼ればより効果的かと思います。どうすれば出来るのか教えて頂けますか?

  • アクセサリ→ペイントのキャンバスサイズについて

    ペイントで、大きな画像の一部分だけを選択してコピーし、新規作成で新しいキャンバスに画像をコピーする場合についてお尋ねします。 このとき初めのキャンバスサイズよりコピーする画像が大きければ、自動的にキャンバスサイズも広がってくれるのですが、 コピーする画像の方が小さい場合、下や右側に余分な白いキャンバスが残ってしまいます。 それを、「変形→キャンバスの色とサイズ」で小さくしているのですが、目測で数字を入力しなければならず、小さくしすぎたりしてやり直しを何度かすることになります。 ペイントには、「キャンバスのサイズを画像のサイズに合わせる」機能や、もっと良いやり方はないのでしょうか? 宜しくお願い致します。

  • ペイントで透明にするには!?

    ペイントで画像などを作成しているのですが。それをHPに掲載するときに 背景 とHPの背景が一致しないときがあります。 しかし、他の アイコン配布サイトなどからアイコンをDLした時背景と必ず一致します。それは、アイコンの背景が透明だったと最近しったのですが。アイコンを透明に刷るやり方を教えて欲しいです。 使っているソフトは。Windouwsに標準に入っている 【ペイント】 というソフトを使っています。 教えてくださいおねがいします┌○"ペコッ

  • ペイントソフトで文字を画像にする場合について

    ウィンドウズMEを使用し、IE5.5を使っています。 現在ホームページを作成中です。 ところどころに文字を画像化したものを入れるのですが(タイトルもそうです)、実際に表示させてみると文字が少し潰れたような感じになってしまいます。今のやり方は (1)ペイントソフト(ペイントショップ・プロ5)を起動して新規作成 (2)書き込みたい文字の大きさよりも少し大きめのイメージサイズにします。 (3)文字を書き込みます。(表示させてみると大して大きくないため48とか72 ぐらいの大きさを使っています) (4)文字いっぱいの大きさまで切り取って透過処理をし、GIFで保存します。 (5)アップロード 他の方のホームページを見ると、私の書き込んでいる文字の大きさよりも小さくても綺麗ですので、私のやり方がどこか違っていると思います。どこを直したらいいのかアドバイスをお願い致します。

    • ベストアンサー
    • HTML

専門家に質問してみよう