問題タブ [brush]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
2031 参照

actionscript-3 - AS3フォトショップブラシ

私はActionScript3で描画ツールのようなフォトショップを構築する方法を探しています。特にフォトショップのブラシのようなものを構築したいと思います。さまざまなPNGをブラシとして使用できるようにします。

Photoshopでブラシを透明なpngとして保存し、AS3プロジェクトにインポートし、マウス移動イベントを使用して、マウスをビットマップデータオブジェクトに移動するたびにpngを描画してみました。しかし、それはフォトショップのようには見えません。次に例を示します。最初にフォトショップの描画、次にas3の描画です。

代替テキスト

代替テキスト

フォトショップでは非常に滑らかに見えますが、as3ではその醜いコーナーと色の変化があります。誰かが解決策を知っていますか?

thx、tux

0 投票する
3 に答える
172 参照

wpf - 一度に 2 つのオブジェクトにブラシを適用する

一度に 2 つ以上のオブジェクト (TextBlocks) にブラシ (この場合は LinearGradientBrush) を適用したいと思います。私が望む効果は次のようなものです:

代替テキスト

編集 両方のオブジェクトに同じブラシを単純に適用することはできません。これにより、両方のオブジェクトが赤く始まり青くなります (2 番目のブラシが紫の色合いで始まるのではなく)。

代替テキスト

私は何か簡単なものを見落としていると確信しています...

ありがとう、wTs

0 投票する
2 に答える
356 参照

c# - C#ブラシ/ペン情報をデータベーステーブルに保存する方法

いくつかの図形に関するブラシ/ペン情報をデータベーステーブルに保存する必要があります。描画するレイヤーごとに1行です。

私は2つのスキームを考えていました:

長所:2つの列のみ
短所:評価された列

長所:パラメータは分離されて
います短所:多くの列

2つ目は十分に一般的である必要があると思いますが、よくわかりません。

この種の情報を格納するためにどのスキーマを使用しますか?
あらゆる種類のブラシ/ペンをそのパラメータとともに保存できるように、テーブル構造を提案できますか?

0 投票する
1 に答える
3041 参照

.net - HatchStyle 列挙のグラフィカルな概要はありますか?

ハッチング パターンは 2 つの色から作成されます。1 つは BackgroundColor によって定義され、背景を塗りつぶし、もう 1 つは ForegroundColor プロパティによって定義された背景の上にパターンを形成する線用です。HatchStyle プロパティは、ブラシのパターンのタイプを定義し、HatchStyle 列挙の任意の値にすることができます。HatchStyle 列挙体には 50 を超える要素があります。

次の図は、水平ハッチ パターンで塗りつぶされた楕円を示しています。

画像

Color クラスで定義されている色と同様に、HatchStyle で定義されているすべてのスタイルのグラフィカルなリストが必要ですが、MSDN には見つかりませんでした。このような概要をご存知ですか?

0 投票する
1 に答える
305 参照

wpf - WPF BoolToBrushConverterには、4つの値と4つのブラシが返されますか?

BoolToBrushConverterを使用して、TextBoxのBrushプロパティをUserControlのIsValidDependencyプロパティにバインドします。コンバーターから戻るには4つの異なるブラシが必要なため、IsValidには4つの状態が必要です。文字列を使用する別の方法はありますか?ブール値の代わりに、それは機能しますか?

0 投票する
2 に答える
6311 参照

wpf - xaml の 1 つの Brush から別の Brush への参照

Color 定義を使用せずに、リソース ディクショナリ内の別の Brush から Brush 値を直接参照することはできますか (正確には、1 つのブラシ リソースを別のブラシ リソースにコピーします)?

たとえば、次のブラシ定義があります。

そして、「PanelBackgroundBrush」とまったく同じにしたい他のブラシがいくつかあります。

「PanelBackgroundBrush」と「FolderColor」の両方が白を使用しているように。

これは、一般的な Color 定義を使用することで何らかの形で実現できることを理解しています。

0 投票する
1 に答える
1562 参照

ipad - openGLでフォトショップスタイルのブラシをレンダリングする

プログラムによってプログラムで定義された行があります。私がやりたいのは、それらに沿ってブラシストロークをレンダリングすることです。

私が望むタイプのブラシは、単純にテクスチャがあり、ほとんどが透明であると思います。パス内のすべてのピクセルを中心にこのテクスチャをレンダリングし、それらをブレンドしてストロークを作成します。

これがうまくいくと仮定して、私はそれがあまりにも高価になることに賭けるつもりです(ipadや他のモバイルチップをターゲットにして、フィルレートとアルファブレンディングを嫌います)

では、他にどのようなオプションがありますか?

リアルタイムで実行できる場合(つまり、パススプラインがフレームごとに更新される場合)、それが理想的です。ただし、そうでない場合は、iPadで1秒以内に実行することもできます(スプラインがノードを接続している場合、ユーザーはノードをドラッグしてスプラインを変換できますが、スプラインをより単純な塗りつぶしに戻すことは許容されます。動き回っていたので、リリースしたらブラシを再計算します)

不思議に思う人のために、太い線が鉛筆で作られたように見えるようにしようとしています。可能な限り実際の生活に見えるようにする必要があります。

ブラシをかけたスプラインをテクスチャにレンダリングすることを検討しましたが、スプラインは任意の長さ、任意の方向にすることができるため、スプライン全体を含むように全体の長方形のテクスチャを割り当てると、コストがかかることになります...

スプラインはレンダリングのために必然的にクワッドに分割されるので、最初にブラシをテクスチャにレンダリングしてから、各クワッドを分離してテクスチャにできるだけきれいに詰め込んだ最適化されたテクスチャを生成することを考えました。

しかし、テクスチャへの2つのレンダリング...最適化されたテクスチャを作成するアルゴリズムにより、クワッドが互いにシームレスにブレンドされるようになります...悪夢のように聞こえますが、それでもリアルタイムにはなりません。

そうそう、openGLのiPadでスプラインにリアルタイムで続く太い鉛筆のような線を描く方法についてのアイデアはありますか?

0 投票する
1 に答える
303 参照

wpf - WPF Datatemplate で名前付き塗りつぶしグラデーションにアクセスできますか?

多数の階層化されたテキストおよびグラフィック オブジェクトを含む DataTemplate があります。それらの 1 つは、Rectangle の RadialGradientBrush Fill プロパティに由来するグロー効果です。最初に、Rectangle に名前を付けて Fill プロパティにバインドし、DataTrigger を使用して変更しました。これで問題なく動作しましたが、リソース セクションに多数の RadialGradientBrush オブジェクトがあり、以下に示すように、GradientStops を変更することだけを行う場合、多くのことを繰り返す必要があります。そこで、Fill バインディングを削除し、RadialGradientBrush を追加して名前を付けました。リソースからブラシにバインドできますが、DataTrigger でブラシにアクセスできません。「トリガー ターゲットが見つかりません」というエラーが表示されます。

リソースには、このような RadialGradientBrush オブジェクトがいくつかあります。

色の変化ごとに少ないコードで置き換えたいので、リソースにいくつかの GradientStopCollection オブジェクトを作成して置き換えます。

Resource グラデーションにバインドすることはできますが、問題は、GlowGradient ブラシにアクセスしてその GradientStops プロパティを変更できないことです。以前は、次のように DataTrigger を使用して Glow Rectangle にアクセスできました。

以下を使用すると、「トリガーターゲットが見つかりません」というエラーが表示されます。

色を変更するたびに RadialGraientBrush 全体を複製しないようにする方法が必要だと考えています。DataTrigger から Rectangle Fill ブラシにアクセスする方法はありますか? ヒントはありますか?前もって感謝します。

0 投票する
2 に答える
444 参照

wpf - ブラシにバインドするとメモリリークが発生しますか?

アプリに次のクラスがあるとしましょう。

MainWindow.xaml.cs

MainWindow.xaml

Window1.xaml.cs

Window1.xaml

アプリを起動すると、Do Itボタンをクリックして開いているウィンドウを閉じます-Debug.WriteLine("Window1 Finalized");実行されません。これは、Window1 オブジェクトがまだメモリ内にあり、GC されていないことを意味します。しかし、ブラシ バインディングを削除すると、Window1.xaml「Window1 Finalized」という文字列が出力に表示されます。これは、Window1 オブジェクトが GCed であることを意味します。

バインディングはどのようにオブジェクトをメモリに保持しますか? それはバグですか、それともバインディングの実装方法ですか?

編集 1

Background プロパティの代わりに Foreground プロパティをバインドすると、Window1 がファイナライズされます。したがって、依存関係システムの影響ではなく、Background プロパティの実装の影響のようです。

0 投票する
1 に答える
1845 参照

wpf - IsMouseOverトリガーに設定すると、TextBoxのWPFBorderBrushが消えます。

ウィンドウ内のすべてのTextBoxの境界線を赤いOnMouseOverに設定しようとする以下のXAMLがあります。マウスをテキストボックスの上に置くと、FontSizeプロパティとForegroundプロパティが設定されますが、BorderBrushは、以前のデフォルト値に戻る前に一時的に設定されます。マウスがテキストボックス上になくなるまで、BorderBrushを赤のままにしておきます。なぜこれが起こるのか考えはありますか?