問題タブ [canvas]
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.
javascript - Javascriptでキャンバスを使用して画像を作成する
デバッグに苦労しているというエラーメッセージが表示されたようです。私がやろうとしているのは、このような画像(http://www.webreference.com/programming/javascript/mk/column3/creating/cp_mini_gradient_details.png )をcanvasで動的に作成することです。
私が受け取っているエラーメッセージは次のとおりです。
グーグルで検索したところ、このエラーメッセージの原因はいくつかあるようですが、特にキャンバスに関連するものは見つからないようです。
これが私のコードです:
奇妙なことに、エラーはループの2回目の反復中にのみ発生します。
wpf - WPF-カスタムキャンバスでのUserControlのサイズ設定
コントロールをドロップしたり、移動したり、サイズを変更したりできるカスタムキャンバスがあります。少なくとも事前に決められたサイズから始めて、サイズを変更できるようにする必要があります。
私の問題は、サイズ変更されていないように見えるユーザーコントロールがあることです。ユーザーコントロールで高さと幅を設定しました(ドロップで機能します)。ただし、キャンバス上でコントロールのサイズが変更されても、視覚的なサイズは同じままです(サイズ変更ハンドルが変更されます)。コントロールのサイズが変更されると、Heightプロパティ(usercontrol.height)が変化するのがわかります。ただし、この場合も、コントロールの外観は同じサイズのままです。
ユーザーコントロールの内部コンテナーはusercontrol.heightにバインドする必要があると思いましたが、それは役に立たなかったようです。(または多分私は結合権を持っていませんでした)。
同じキャンバス上で、ドロップされたコントロールがたとえばImageコントロールである場合、ドロップに明示的な高さを設定すると、すべてのサイズが適切に変更されます。つまり、UserControlのことのようです。
では、ビジュアルのサイズを変更するためにUserControlsで何か特別なことをする必要がありますか?すべてを開始するには、明示的な高さと幅を使用する必要がありますか?
助けてくれてありがとう。
javascript - 描画アプリケーション Zoom コンセプト
キャンバスの上にアプリケーションを構築しています。これは、マウスを動かすたびに再描画される単純な DOM で構成されています (はい、必要です)。パフォーマンスの問題のために、すべてのパーツが必要なものだけを再描画するわけではありません。
アプリはうまく機能していますが、ズーム機能を追加したいと思います。私の見方では、3 つの異なる方法で実行できます。
1 - ユーザーがズームインまたはズームアウトするたびに、すべての DOM 要素 (位置とサイズ) が再計算されます - 精度に問題があり、あまり適切な抽象化ではない可能性があります
2 - キャンバスには解像度のプロパティがあります (つまり、ユーザーがズームアウトすると、解像度が 1 から .75 に変わる可能性があります)。再描画のたびに計算を行う必要があります。
3 - 組み込みの translate() および scale() メソッドを使用します - おそらく最もエレガントで最速のソリューションですが、まったく直感的ではありません。後で私や他の誰かがどのようにそれを行っているかを理解するのは難しいかもしれません (これらのメソッドは完全なキャンバスで機能します。最初にキャンバス上で変換およびスケーリングし、その後、描画するすべてのものを「魔法のように」変換およびスケーリングします)
どちらが最適ですか、それとも私が考えていない他の可能性はありますか?
wpf - Canvas への項目のデータバインディング
キャンバスを含む userControl があります。アイテムをデータバインドして、自動的に配置されるようにしたいと思います。
キャンバス上のアイテムをデータバインドする方法を示す素晴らしい例を次に示しますが、特定の userControlで動作させたいと考えています。(ItemsPanelTemplate で userControl を指定することはできないと思います)
internet-explorer - Internet Explorer toDataURL() 代替?
<canvas>
そのため、要素に描画された画像データを保存する必要があります。また、最近のほとんどのブラウザーで機能する toDataURL() メソッドがあります。
例外は... ご想像のとおり... Internet Explorer です。
私はインターネットを検索しましたが、SVG/VML を使用してデータを保存する必要があると人々が言うところはどこでもありますが、その方法については言及されていません。IE で SVG/VML を使用した経験がないので、キャンバス要素に描画された画像を Internet Explorer で保存するにはどうすればよいですか? 誰も経験がありますか?
現時点では、複雑になりつつあるクライアントとサーバーの両方で描画コードを複製する必要がありました。したがって、クライアント (またはサーバー) 側のキャンバス タグに描画された画像を抽出できる方法があれば、それは確かに役立ちます。
ありがとう!
javascript - Canvasタグ用のJavascriptスプライトアニメーションライブラリ
HTML Canvasタグを使用した優れたJavascriptスプライトアニメーションライブラリを教えていただけますか?
いくつかのグーグル検索は、いくつかの非キャンバスプロジェクトを見つけただけでした。清潔でシンプルなものを探しています。
ありがとう。
canvas - Silverlight 2 のキャンバス ユーティリティ
コードを書く手間を省くために、Silverlight キャンバスを操作するためのユーティリティ コードのソースを知っている人はいますか? コンテンツの境界ボックス、クリップされた境界内のコンテンツ、変換への簡単なアクセスなどを決定するコードを考えています。
wpf - WPF-ボーダーをキャンバスにドッキングする方法は?
キャンバスの中にボーダーがあります。ボーダーの高さ/幅は、その内容によって異なります。ボーダーを伸ばしてキャンバス全体を埋めたいです。どうやってやるの?
私はこれをボーダーで試しましたが成功しませんでした:
javascript - HTML Canvas からピクセルを取得しますか?
特定の場所の色を取得するために HTML Canvas オブジェクトを照会することは可能ですか?
wpf - WPFでオーバーフロー時にキャンバスを自動的にスクロールさせる方法はありますか?
Web とこのサイトをチェックしていましたが、降下結果を思い付くことができませんでした。
オーバーフロー時に WPF のキャンバスにスクロールバーを表示する方法はありますか? スクロールビューアを試してみましたが、動作しません:(
前もって感謝します..