問題タブ [scaletransform]

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 投票する
2 に答える
429 参照

wpf - WPFキャンバスのマウスダウンポイントに図形を追加する

ズーム付きのキャンバス(ScaleTransform)があります。これで、任意のズーム値でキャンバスを拡大縮小しました。すべてのMouseDownイベントでMouseDownポイントにRectangleGeomtryを追加しています。しかし、奇妙なことに、ShapeがMouseDownPointに+/-dxと+/-dyでキャンバスに追加されています。

なぜこれが起こっているのかについてのリードは大いにありがたいです。

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

wpf - 画像の ScaleTransform は空白を残す

単一の画像とポリゴンがオーバーレイされたダイアログを作成しています。問題は、画像の縮尺がポリゴンの縮尺と異なるため、ポリゴンの縮尺に合わせて画像を縮小したいということです。しかし、RenderTransform/ScaleTransform タグを使用すると、画像のサイズが小さくなり、ダイアログの右側と下部に空白が残ります。はい、オーバーレイは適切に機能するようになりましたが、ウィンドウを埋めるために使用可能なスペースを埋めたいと思います。

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

java - Javaで文字列をスケーリングして、内側から長方形に合わせます

誰かがJava(Graphics2D)で文字列/文字をスケーリングして、指定されたサイズの長方形に正確にフィットするようにする方法を見つけるのを手伝ってもらえますか(内側から長方形に接触するように)?

これは私がこれまでに持っているものです:

私がこのコードを実行している問題は、文字列が長方形のサイズにほぼ合うようにスケーリングされているにもかかわらず、正確に合わないことです。内側から長方形の境界に触れません(これが私が望んでいることです!)。

別のフォントを使用するのに役立ちますか?現在、等幅フォントを使用しています。または、スケーリングを別の方法で行う必要がありますか?

ご協力いただきありがとうございます!

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

wpf - ScaleXとScaleYのLayoutTransformアニメーションは、それらとの結合を破っています

wpfCanvasクラスから派生した「MyCanvas」というカスタムクラスがあります。MyCanvasには、キャンバスのスケール変換を指定するDependencyプロパティ'Scale'があります。ここで、Scaleの値が変更されたら、古い値から新しい値への変換をアニメートしたいと思います。そのために私はLayoutTransform.BeginAnimation(...)メソッドを使用しています。

コード:

XMAL:

しかし、このコードを実行した後、ScaleXand ScaleYwith Scale(viewmodelのプロパティ)のバインドが壊れています。つまり、の値をScale変更しても、キャンバスのスケールは変更されません。

エラーメッセージ(スヌープを使用):

System.Windows.Data Error: 2 : Cannot find governing FrameworkElement or FrameworkContentElement for target element. BindingExpression:Path=Scale; DataItem=null; target element is 'ScaleTransform' (HashCode=796423); target property is 'ScaleX' (type 'Double')

System.Windows.Data Error: 2 : Cannot find governing FrameworkElement or FrameworkContentElement for target element. BindingExpression:Path=Scale; DataItem=null; target element is 'ScaleTransform' (HashCode=796423); target property is 'ScaleY' (type 'Double')

誰かがこれに対する解決策を持っているかどうか私に知らせてください。ありがとう

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

c# - Graphics.ScaleTransformを使用する場合のペンの不適切なスケーリング

メソッドでスケール変換(-MSDNGraphics.ScaleTransform()を参照)を使用して線を描画すると、奇妙な動作が見られます。OnPaint()

メソッドに大きなyスケール係数を使用するScaleTransform場合、xスケールが1xより上に設定されていると、線が突然大きくなります。

線を引くペンの幅を-1に設定すると、問題は解決するようですが、非常に細い線は描きたくありません(線は後で印刷する必要があり、1pxは細すぎます)。

問題を示すためのサンプルコードを次に示します。

サイズが劇的に大きくなることなく、ライン/ペンを優雅に拡大縮小したいと思います。

(さらに、線が非常に大きい場合、複数のモニターにまたがって連続して描画されないことに気付きました。おそらくこれは関連していますか?)

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

silverlight - Silverlight での拡大/縮小時のキャンバスの奇妙な動作

私はSilverlight 5でズームに取り組んでいます。

私の考えは、キャンバス上のマウスの位置に応じてズームし、そのキャンバスをドラッグする機能です。

私が抱えている問題は、スケールが 1 未満、約 0.6 または 0.5 の場合、キャンバスの角を指してホイールを上に向けると、キャンバスの位置が変わるか、「ジャンプ」します。何か助けてください。

これらの 2 つの写真は、前と後の状態を示しています。

ズーム前

ズーム後

次の XAML があります。

そしてここにC#があります:

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

wpf - WPF の特定のポイントを中心にコントロール オブジェクトを回転、移動、スケーリングする方法

内部にいくつかの詳細がある長方形であるカスタムビルドコントロールがありますが、それは長方形です。

私は中心点 (X,Y) を持っています。これを「重心」と呼び、点を「表します」。これは、オブジェクトに新しい位置を設定するときに、この点が設定された位置にあることを意味します。オブジェクトを回転させるときは、この点を中心に回転させる必要があります。そして、オブジェクトをスケーリングするとき、ポイントは以前に設定した位置にとどまる必要があります。オブジェクトのサイズのみを変更する必要があります。

たとえば、問題を簡単に理解するために、10X10 の正方形があるとします。重心を正方形の正確な中心 (5,5) に設定しました。次に、オブジェクトの位置を (100, 100) に設定します。次に、正方形は次のようになります。

(95,95)、(105,95)、(105,105)、(95,105)。これは、その中心が目的の位置にあることを意味します。

値 2 で正方形をスケーリングする場合、新しい 4 ポイントの位置は次のようになります。

(90,90)、(110,90)、(110,110)、(90,110) は、その中心が目的の位置に留まることを意味します。

45 度回転すると、中心を中心に次の位置で回転します。

(92.93,92.93),(107.07,92.93),(107.07,107.07),(92.93,107.07)

その中心が完全に構成可能であり、このすべての変換が WPF のプログラムに対して透過的であるため、これを行うにはどうすればよいでしょうか? Scale、Position、Rotation Angle、center のみを設定して、適切に描画したいと思います。

ありがとうございました!

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

wpf - ストーリーボードでボタンを反転する

ストーリーボードを使用してフォームのボタンを反転しようとしています。私が現在持っているのは、カスタム グリッド アニメーションを使用して特定のグリッド行を成長させるストーリーボードです (ここにあります)。このストーリーボードを開始するボタンには、矢印のイメージがオーバーレイされており、ユーザーが理解できるようにコントロールの方向を修正するために反転する必要があります。私が持っているストーリーボードは機能しますが(エラーは発生しません)、グリッドロウの高さプロパティが大きくなるだけです。ボタンの画像は上下反転しません。

ストーリーボード内で scaletransform プロパティを正しく使用する方法を誰かが知っている場合 (部分的に正しいと確信しているため)、いくつかのガイダンスをいただければ幸いです。

ありがとう!

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

c# - DataTemplate の要素のプロパティを変更し、変更を反映する

これは私が投稿した質問です。現在、DataTemplate の四角形要素に加えられた変更を反映できません。コード ビハインドの値と条件に応じて、四角形を scaleX したい。私は次のことをしました:

ただし、変更は反映されず、同じ古い DataTemplate を使用します。UI への変更を反映するためのヒントはありますか?