テキストを描画するキャンバスがあります。
(これはかなり高度です。フォローしていただければ幸いです)
以下の添付画像を参照してください。
機能は、画面をタップしてテキストサイズを変更できることです。
左画面をタップ=小さいフォント。
右の画面をタップするとフォントが大きくなります。
その後、画面上のテキストを移動することもできます。
テキストサイズが問題なく、テキストを必要な場所に移動したら
、元のビットマップに保存したいと思います。
私はoptions.inSampleSize = 4;
最初にロードするために使用しますBitmap
もちろん、ビットマップを持つ ImageView は、元のイメージよりも小さくなります。
何らかの計算が必要です。これを行うのはかなり難しい傾向があります。
私はoptions.inSampleSize = 4
ビットマップ比率を持っています。
横向きか縦向きかによって0.59、0.69くらいです。
私はそれをいじって、新しいビットマップを何らかの方法で変更しsetTextSize
て、ImageViewの小さなビットマップと同じように見せます。
ここで何ができますか?
画像のサイズがわからないので、私は感じています。
何らかの方法で Loaded Bitmap Ratio を固定比率にスケーリング/制約する必要があります。
次に、パーセンテージなどを使用して、テキストの場所をより大きな画像に転送する必要があります。
最初の位置(写真の赤い小さなボール)に関しては、私はそれを行うことができます. したがって、テキストの開始点。
しかし、テキストがどれくらいの長さかわかりませんので、立ち往生しているので、話してアドバイスを求めてください
私が試みた 1 つの方法はpaint.getTextSize()
、0.59 のような比率で割ることでした。それは最初は解決策のように見えました。ただし、画像の比率は固定されておらず、フォントサイズも固定されていません。何か他のものが必要です。
問題を示す 2 つの写真を次に示します。
電話でのビットマップ:
保存された新しいビットマップ: