午後わてんのブログ

ベランダ菜園とWindows用アプリ作成(WPFとC#)

文字の描画で2色グラデーションと背景色が付けられるようになったPixtack紫陽花

文字の描画
背景の塗りつぶし、背景の2色グラデーション、透明度
文字の2色グラデーション
文字の見本
背景を塗りつぶすと縁取りはできない
 
イメージ 1
文字の描画のタブにいろいろ増えたけど
初期設定では今までと同じ結果になる
黒で横書きで背景色は透明
 

f:id:gogowaten:20191014112158p:plain

 
背景色の透明のチェックを外して描画するとこうなる
背景色の初期設定の色は黒で不透明度が128
不透明度は0で透明、255で不透明
文字の描画のタブの左下に設定した見本を表示
 

f:id:gogowaten:20191014112212p:plain

背景色は色1のボタンで選択して不透明度を255にしたところ
 

f:id:gogowaten:20191014112230p:plain

文字の描画
見本と同じ結果になる
 
背景色に2色グラデーションを使うときは
背景色のグラデーションにチェックを入れる

色2のボタンで2色目を選ぶ、初期の色は黒になっている
 

f:id:gogowaten:20191014112441p:plain

グラデーションの方向の選択もできる

f:id:gogowaten:20191014112456p:plain

 
文字体に2色グラデーション

f:id:gogowaten:20191014112510p:plain

背景色の設定と同じように
色1と色2に色を決めて、グラデーションにチェックを入れる
 

f:id:gogowaten:20191014112528p:plain

文字と背景の組み合わせ
 

f:id:gogowaten:20191014112537p:plain

背景色を設定したら見本の方にも反映される
↑を保存すると
イメージ 11
こうなる
 
背景色が付いている文字に縁取りができないのは仕様
縁取りは色が付いているところつまり文字が書いてあるところを探して
その隣が透明なら色を付けるっていう処理をしているから
背景色があるということは透明な部分がないってことだからできない
 
「入れ替え」ボタン
選択している画像の文字はそのままで書式だけを変える

f:id:gogowaten:20191014112552p:plain

今までは最初から作りなおすしかなかったけど
「入れ替え」ボタンで設定した書式にすることができる
 

f:id:gogowaten:20191014112601p:plain

一個上の状態から書式を色1を黒、不透明度を115
画像を選択して入れ替えを押したところ
 
見本の表示の切り替えで
フォントサイズと不透明度を変更しても反映されなくて
クリックすると反映されるのは仕様
数値が変化した時に反映されるようにすると
リソースがないとかエラーになってこれの解消の仕方が
全くわからないので妥協策でクリックした時になった
 
今、不具合を発見

f:id:gogowaten:20191014112612p:plain

ここから

f:id:gogowaten:20191014112620p:plain

こうすると
また透過処理がおかしくなっている
 
参照したところ
Function プロシージャ
http://adonetvb.com/Learning/FunctionProcedure.html
subプロシージャとfunctionプロシージャの違いがわかりませんっ! - Yahoo!知恵袋
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1451820999
文字を描く: .NET Tips: C#, VB.NET
http://dobon.net/vb/dotnet/graphics/drawstring.html
ダウンロード
ファイル名 Pixtack_20140130.zip