問題タブ [android-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.

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

android - DroidでひどいAndroidキャンバスのパフォーマンス

私は過去数ヶ月間Android用のゲームを開発してきましたが、それはもうすぐ終わりです。HTC Incredibleを使用してゲームを開発したため、最近、テスト目的でMotorolaDroidを購入しました。私の信じられないほどの私はゲームを通してかなり堅実な59fpsを得ることができます。ドロイドでは、ゲームは平均約40fpsで非常に途切れ途切れになります。どちらの電話もAndroid2.2を実行しています。

私が調べた技術仕様は、ゲームプレイに影響を与える可能性があると私が指摘した唯一の違いです。1GHzプロセッサと550 MHz、512MBRAMと256MBRAMです。

ちょっとした笑いのために、私はゲームを非常に最小限の状態に分解して、それが私のせいにするコーディングであるかどうかを確認すると思いました。メインメニューを描画し、画面上でさまざまなビットマップを移動するだけで済むように、それを削除しました。45fpsを超える髪ではありません。

それで、これはMotorola Droidのおおよその上限ですか?もしそうなら...私のゲームは非常にシンプルでCPUを集中的に使用しないので、どうすればよいですか?私のゲームよりもはるかに要求の厳しいAndroidゲームは他にも何千もありますが、非常にスムーズに動作しているようです。

Open-GLやその他の代替手段ではなく、Androidの組み込みCanvasを使用しているという事実ですか?誰かがそれをすることをお勧めしますか?

誰かが私にここでの私の問題が何であるかを教えてもらえますか?

前もって感謝します。

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

java - Android でテキストをビットマップ (ピクセル) に変換する

ウェブサイトからテキストをダウンロードし、ビットマップ形式に変換して、LED ベースのディスプレイ ボードに表示する必要がある Android アプリケーションがあります。

ビットマップ変換に苦労しています。

以下を使用しようとしました:

しかし、それは機能していないようです。助言がありますか?

アップデート:

Paint オブジェクトは次のように初期化されます。

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

android - キャンバスを使用してビットマップでストロークを描く方法は?

の角を丸くする必要がありBitmapます。その後、境界線を追加する必要があります。Bitmap角を丸くするために以下のソースを実行しましたが、使用して境界線を描く方法がわかりませんCanvas。それを行う方法はありますか?ありがとう

私は解決策を追加しました:

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

android - optionsmenu-iconをキャンバスで再描画する方法

アクティビティのonPrepareOptionsMenu内にoptionsmenu-iconを取得し、キャンバスを使用して再描画しようとしています。

残念ながら何も起きていません。メニューには以前と同じアイコン画像があります。誰かが私が使用しているコードの何が問題になっているのか教えてもらえますか?

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

java - google-mapsandroidでポイントをマークするためにcanvas.drawcircleを使用する

グーグルマップで特定のポイントをマークしたいのですが、http://developer.android.com/resources/tutorials/views/hello-mapview.htmlを読みます

しかし、私が直面している問題は、この方法は、グーグルマップの上に画像を表示したいときに便利ですが、任意の色の円が必要なことです。

また、ユーザーが円をクリックしたときに乾杯を表示したい(ドローアブルを使用すると、これを簡単に行うことができる方法を知っています)

解決策が見つかりません。

どんな助けでもいただければ幸いです。

よろしくお願いします

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

android - invalidate() を呼び出さずに複数の長方形を描画する

複数の長方形を描画しようとしています。ただし、各長方形を手で描画できるようにしたいです。描画することはできますが、invalidate() を呼び出すと、もちろんキャンバスはクリアされます。キャンバスがクリアされないように onDraw() を呼び出す別の方法はありますか? ここに私が持っているものがあります:

私は単にSurfaceViewを拡張してからonDrawをオーバーライドするクラスを持っています

そして、OnTouchEvent をオーバーライドします

私はこれを完全に間違っていますか?:)

どんな助けでも大歓迎です。

ありがとう!

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

android - Bitmap-backed Canvas を含む Android View 上のポイントのピクセル カラー値を取得する

Viewの特定のポイントでピクセルの色の値を取得する最良の方法を見つけようとしています。ビューに書き込む方法は 3 つあります。

  1. View.setBackgroundDrawable(...)で背景画像を設定しました。

  2. Canvas.drawText(...)Canvas.drawLine(...)などを使用して、Bitmap-backed Canvasにテキストを書き、線を描きます。

  3. View のonDraw(Canvas canvas)メソッドに渡された Canvas に書き込むことで、子オブジェクト (スプライト) を描画します。

View を拡張するクラスの onDraw() メソッドを次に示します。

これらすべてのソースを考慮に入れたピクセルの色値を取得する最良の方法は何でしょうか?

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

java - Android キャンバス上の文字列の周りに四角形を合わせる

したがって、 Canvas. drawTextを使用してCanvasに文字列を描画します。問題は、テキストが長方形の中央に表示されるように、その前に長方形を描きたいということです。しかし、私は本当の問題にぶつかりました。drawTextに指定されたx座標とy座標は、実際には実際のテキストの "左上" 隅ではなく、文字が始まる行にあります。描画されるテキストの(0,0)に「暗黙の原点を持つ」長方形を返すメソッドPaint.getTextBoundsがあります。問題は、原点が(0,0)にあることです. そのボックスの幅と高さは正しいですが、キャンバスに描かれた文字列の左上隅に左上隅を配置する方法がわかりません。FontMetricsを使用する必要があると思いますが、 FontMetricsが返す値の多くは文書化されていないため、目的のためにそれらを使用する方法がよくわかりません。

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

java - 画像が正しくスケーリングされないのはなぜですか?

更新関数に送信される水平サイズに応じて画像を特定のサイズにスケーリングしようとしていますが、次のコードでは画像のサイズが正しく設定されていないようです。

編集: コード:

結果。(青い四角形は、イメージの意図したサイズの境界ボックスです)

どの部分で間違っていますか?

編集 2: メガネは次のとおりです。眼鏡

編集 3: 好奇心から、実際の電話で実行したところ、まったく異なる結果が得られました。画像は、意図した青いボックスを通過して引き伸ばされました。

編集 4: Android バージョンの非互換性の問題かどうかを確認するために、いくつかのエミュレーターでアプリを実行してみましたが、それらはすべて完全に機能しているように見えました。スケーリングの問題は、私の携帯電話 (Vibrant、rooted、CM7) といとこの (Droid、同じく rooted) でのみ発生します。これらは私がテストした唯一の物理デバイスですが、どちらも同じ問題を抱えているようです。誰かがここで私を助けてくれたら本当にありがたいです.これは私のプロジェクトの大きな障害であり、他のフォーラムやメッセージグループは応答していません.

編集 5: アップデート 4 では、コードが少し変更され、前述のようにエミュレーターの問題が修正されましたが、物理デバイスでは機能しません。変更は上記のコードで更新されます。*必死に助けを求める* :P

編集 6: さらに別の更新として、古い G1 で同じコードをテストしましたが、期待どおりに完全に動作します。今はまったくわかりません。

0 投票する
0 に答える
223 参照

android - アプリがSamsungTransformで正しく表示されない

私のゲーム、Hidden Treasuresは、2か月以上にわたって市場に出回っています。最近、お客様から、これまでにない新しい問題が発生しました。

顧客によると、彼らの言葉で:

「それを横切る対角線があり、画像が後ろ向きになっているように見えたので、線の右側は左側にあるはずのものを示し、左側は実際に右側にあるものを示していました。それらを切り替えると、適切な画像が表示されます。画像自体も傾斜しています(左上から右下へ、分割線と同じ角度で)。」

ここに画像の説明を入力してください ここに画像の説明を入力してください

私はこれまで聞いたことがなく、修正方法もわかりません。このアプリは隠しオブジェクトゲームで、このゲームを作ったときcanvasは知らなかったので、すべての描画にを使用します。OpenGL ES

基本的に、それは2つありますbitmaps

  1. 画面のサイズ、

  2. 1680x1050。

大きなものから小さなものにチャンクを描画し、次にその上にすべての非表示のオブジェクトを描画して、それを画面に表示します。

どうしてめちゃくちゃになるのか全くわかりません。画面サイズの画像を画面に描画しますが、私の知る限り、他の電話では発生しません。

何か案は?強制的に閉じることはないので、スタックトレースはありません