教えて下さい。
書籍やインターネットで調べているのですが、四角形の角を丸く(ワードの図形描画にある「角丸四角」です。)したり面取り(日曜大工で角を落とすのとおなじ)にはどのようにしたら良いのでしょうか?
多角形は参考するのがあったのですが、「角」の加工について調べたのですが見当たりませんでした。
【四角形描画】
//Graphicsオブジェクトの作成
Graphics g = PictureBox1.CreateGraphics();
//Penオブジェクトの作成(幅1の黒色)
//(この場合はPenを作成せずに、Pens.Blackを使っても良い)
Pen p = new Pen(Color.Black, 1);
//(10,20,100,80)の長方形を描く
g.DrawRectangle(p, 10, 20, 100, 80);
//リソースを開放する
p.Dispose();
g.Dispose();
【四角形の一箇所の角を丸くする】
→四角形の角の描画が残ってしまう。
//Graphicsオブジェクトの作成
Graphics g = PictureBox1.CreateGraphics();
//位置(10, 20)に100x80の四角を赤色で描く
g.DrawRectangle(Pens.Red, 10, 20, 100, 80);
//先に描いた四角に外接する楕円の一部
//(開始角度 0度、スイープ角度 90度)を黒で描く
g.DrawArc(Pens.Black, 10, 20, 100, 80, 0, 90);
//リソースを開放する
g.Dispose();
No.2ベストアンサー
- 回答日時:
>隅の扇形を描く前に、角を含む四角形で消去(背景色で描画)してはいかがでしょうか。
背景がビットマップとかで消したくない場合はNGですね。
パスを使って描画範囲を限定するのがいいかと。
WindowsAPIならRoundRect()で一発なんですけどね。
.NETの場合は、こんな感じで組み合わせればいいでしょう。
角の丸い四角形を描画します。
System.Drawing.Drawing2D.GraphicsPath.AddLines
System.Drawing.Pen.LineJoin = System.Drawing.Pen.LineJoin.Round
System.Drawing.Graphics.DrawPath
System.Drawing.Graphics.FillPath
参考URL:http://www.microsoft.com/japan/msdn/net/general/ …
遅くなりました。
アドバイスありがとうございます。
APIだったら容易だったのですか…
まずは、アドバイスとURLを元に試してみます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ノートパソコン Open Office.orgのDrawで描いた図形の塗りつぶしをしたい 1 2022/03/22 19:24
- 数学 四角形の角度のことで聞きたいです。 円に内接する四角形は外角と対角が等しいと学んだ気がするんですが、 5 2022/07/27 05:52
- Illustrator(イラストレーター) イラストレーターで添付画像のような五角形を簡単に作る方法を教えてください 3 2022/10/30 15:14
- その他(Microsoft Office) エクセルのマクロで図形の挿入を教えてください。 1 2022/09/29 10:30
- 数学 円に内接する四角形が出てくる証明(添付した写真のような三角形)の時に、 円に内接する四角形の外角はそ 1 2022/06/04 01:19
- 画像編集・動画編集・音楽編集 medibang での文字の整列の仕方 1 2023/06/02 06:38
- 掃除・片付け リビングの天井にある蛍光灯を使った四角い枠の電気から、丸形のLEDの電気に変えました。 それまで四角 3 2022/12/26 13:44
- Illustrator(イラストレーター) イラストレーターで文字の背景に自動で入れた長方形の左側の角だけ丸く(右側だけ直角に)する方法 4 2023/04/21 11:08
- 数学 数学の質問です。 円に内接する四角形ABCD において, AB=2, BC = 1, CD = 3, 3 2023/04/18 18:28
- 数学 「θ=0°以上180°以下のとき、tanθ=(ルート3)-2であるときのcosθ、sinθを求めよ」 2 2022/07/24 20:19
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
C#で角が丸いテキストボックス
その他(プログラミング・Web制作)
-
drawStringで文字間隔の調整
Java
-
文字数に合わせて、コントロールの幅を設定する方法
Visual Basic(VBA)
-
-
4
C#でButtonのフォーカス枠を消したいのですが
C言語・C++・C#
-
5
C#で親にイベントを投げる方法
C言語・C++・C#
-
6
C#で構造体の配列を持った構造体を使いたいのですが
C言語・C++・C#
-
7
角が丸い長方形の描画
C言語・C++・C#
-
8
C#にて別クラスの関数を使いたい
C言語・C++・C#
-
9
角の丸いボタン作成について質問です。
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ListBoxで改行したい
-
for文の実行速度を遅くしたいの...
-
円の頂点の求め方を知りたいです。
-
C#を用いて描画する四角形の角...
-
Excel VBA:コントロールボタン...
-
給紙トレイをダイアログを使わ...
-
c言語 ちらつき
-
角が丸い長方形の描画
-
CADとC言語のリンク
-
C++/CLIを用いて画像をクリップ...
-
C# シューティングゲーム ...
-
Word 描画オブジェクトを削除...
-
BCB5:Canvas->FrameRectで描画...
-
Pythonにおける物理のシミュレ...
-
worksheetFunctionクラスのVloo...
-
VBA シートのボタン名を変更し...
-
実行時エラー 438になった時の...
-
【C#/Java?】try-catchでcatch...
-
VBA(エクセル)で自動的にボタン...
-
ユーザーフォームを表示中にシ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ListBoxで改行したい
-
for文の実行速度を遅くしたいの...
-
給紙トレイをダイアログを使わ...
-
Word 描画オブジェクトを削除...
-
VB.NETでグラフィックを描くと...
-
C#を用いて描画する四角形の角...
-
C# DrawImage 物理サイズでな...
-
ビットマップに描画をしてピク...
-
PowerPoint の VBA
-
画面に絵を出す方法
-
DrawLineで引いた線が消えてし...
-
VC++ ドラッグしながらの図の...
-
円の頂点の求め方を知りたいです。
-
MFCでのコンボボックスについて
-
画面の再描画について
-
Windows10のC#のピクチャーボッ...
-
フォームに描画して表示をスク...
-
VB PictureBoxの描画範囲
-
PictureBoxのダブルバッファリ...
-
C#で壁の当たり判定と自キャラ...
おすすめ情報