問題タブ [drawbitmap]

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 に答える
1888 参照

android - Android - キャンバスの drawBitmap と異なる解像度?

たとえば、キャンバスに2つのビットマップを描画する際にこの問題があります(ライブ壁紙用です)。問題は、前面にある小さなビットマップを背景ビットマップの正しい場所に正確に配置する必要があるということです。もちろん、エミュレーターでは見栄えがします(480x800の解像度としましょう)。しかし、携帯電話 (800x1280 解像度) で確認すると、適切な場所に収まりません。

私はthiseを使用しようとしました:

ハードピクセルの代わりに、それもうまくいきませんでした。以下はクラスコード全体です。

できれば誰か助けてください。

0 投票する
4 に答える
9056 参照

android - アンドロイドはビットマップを真ん中に配置します

ユーザーがギャラリーから画像をインポートしてから、画面の幅や高さに合わせて拡大または縮小できる描画アプリを設計しています。ユーザーが以下のコードを使用して、インポートされた画像に描画できるようにします。

私はView、という名前のを拡張していDrawViewます。これDrawViewはscreenwidthと同じですが、その上にいくつかのボタンがあり、機能しているボタンの下の画面の下部にDrawViewを配置しているため、その高さはscreenheightよりも低くなっていますDrawViewHeight

変数のディメンションと結果の例については、以下を参照してください。

質問:

ビットマップは、に合うように適切にロードおよびスケーリングできますDrawView

ただし、の上部にありDrawViewます。画面の中央に配置したいので、次のコードを追加しましたが、失敗します。

インポートされた画像(インポート中にビットマップとしてデコードおよびコピーされた)が中央に配置DrawViewされ、ロードされたスケーリングされたビットマップ画像の上下と左右に空白(白など)が配置されるように、さらに変更するにはどうすればよいですか?

注:画像の周囲のスペースは、ユーザーが描画することはできません。

コード:

宣言:

OnSizeChanged:

OnDraw:

写真の読み込み:

ディメンションと変数の結果の例:

Layout.xml

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

java - Android - Canvas.drawBitmap が特定のデバイスで正しく動作しない

平面上に関数のグラフを描画する Android アプリに問題があります。これを行うには、カスタム ビューを使用します。ユーザーはタッチで座標系をパンできます。onDraw メソッドでは、座標系とラベルはビューのキャンバスに直接描画されますが、グラフ自体は追加のビットマップにバッファリングされます (パフォーマンス上の理由から) - 指の移動中、このビットマップは変換されたビューのキャンバスに描画されます座標系に一致するように、ユーザーがタッチを離したときにのみ関数が再描画されます。

onTouch イベント リスナーでは、invalidate() を呼び出します。ACTION_UP の場合は true に、ACTION_DOWN の場合は false に設定されるブール値の「移動」があります。

ACTION_MOVE では、translateX と translateY の値を適切に計算します。

問題はどこにありますか:アプリをsdk 10用にコンパイルすると、テストしたすべてのデバイス(Android 2.2-4.2スマートフォンとタブレット、仮想および物理)で正常に動作します。ただし、sdk 14 用にコンパイルすると、座標系が正しく描画される一部のタブレットを除いて、多くのデバイスでうまく機能しますが、関数を含むビットマップがビューのキャンバスに描画されず、関数が表示されません。 . 奇妙なことに、ビューのキャンバスからビットマップを作成しようとすると、次のようになります。

保存されたビットマップでは、関数が表示されます。

もう1つのことは、問題はNexus 7で発生しますが、プリセットのNexus 7で作成されたAVDではすべて正常に動作します。

何が問題になる可能性がありますか?

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

android - Android でビットマップを四角形に描画する際の問題。

canvas.drawBitmap(Bitmap, Rect, Rect, Paint) メソッドを使用してサーフェスビューにビットマップを描画するのに問題があります。

私がこのようなものを置くとき:

次のようなものをレンダリングします。

http://s21.postimg.org/69jlkn71j/image.png

そして、私がこのようなものを置くと:

画面は次のようになります。

http://s9.postimg.org/qvp9635vj/image.png

それは本当に着ます、私はあらゆる方法を試しましたが、うまくいきません。何が起こっているのか、何か分かりますか?lockcanvas() および unlockcanvasandpost() プロセスと関係がありますか?

私は本当にあなたの助けに感謝します.私は何時間もここにいました.

ああ、四角形を全画面表示にしたときのことを忘れていました。

それはあるべき姿で描かれます....

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

android - canvas.drawLine() がビットマップに表示されない

私は非常に多くの方法を試しましたが、それでも私のコードはキャンバスに単純に線を引くことを拒否しています. コメントアウトした各試行は、プログラムをクラッシュさせるか、行を表示しません。これを行う方法を理解するのに本当に苦労しています。スレッドやonDrawなどの使用についてさまざまなアドバイスを受け続けていますが、どれもうまくいかないようです。

私の全体的な目的は、ビットマップ イメージを画面に表示し、その上に線を引くことです。次に、canvas.tranlate を使用して、画像全体 (ビットマップとその上の線) をパン可能にします。(画像を正常にパンする機能を既に実装しています。)

これが私のコードです。解決策や、すでにオンラインで機能している例を教えていただければ、このプロジェクトで時間がなくなっているので感謝しています! ありがとう

更新: onCreate メソッドに次のコード行を追加しました。

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

android - drawBitmap は ArrayIndexOutOfBoundsException をスローできますか?

私のコードの不完全な部分:

ここで何が起こっているのか本当に理解できません。変数のすべての値を監視するために、try-catch の上に System.out を追加したところ、次のようになりました。

ある時点で ArrayIndexOutOfBoundsException エラーが発生し始めるまで、すべてがうまくいきます...何が起こっているのですか? 値を表示しようとしているときにアプリが System.out でクラッシュしないのはなぜですか? length=2 の唯一の変数は littleBad[] です... drawBitmap メソッドの内部にあるものですか?

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

canvas - メソッド drawBitmap は、最後のサムスンの更新以降の動作を変更しますか?

Google Play に 4 ~ 5 か月前に公開されたアプリケーションがあります。サムスンの最後の更新まで、画像は正常に表示されていました。

コードの一部で、次の関数を使用しています。

src問題は、パラメータが より小さい場合、更新がマージンに関して以前のように動作しないためdstです。

前 http://www.pegastacus.com/img/others/before_margins_ok.png

アフター http://www.pegastacus.com/img/others/after_margins_bad.png

パラメータの値は次のとおりです。

ご覧のとおり、余白は左右で 76 ピクセル、上下で 289 ピクセルにする必要があります。

なぜこの突然の行動の変化?迷っています。誰でも何か考えがありますか??