在a word game app我试图从a 6205 x 240 PNG image加载26个字母图块:
private Paint mPaint = new Paint(Paint.FILTER_BITMAP_FLAG);
mStripe = BitmapFactory.decodeResource(
context.getResources(), R.drawable.big_english);
int h = mStripe.getHeight();
mSrc = new Rect(0, 0, h, h);
mDst = new Rect(0, 0, h, h);
canvas.drawBitmap(mStripe, mSrc, mDst, mPaint);
在真实设备(Moto G)上,这失败了(我猜测从drawables-xxhdpi
缩小1.5倍):
OpenGLRenderer位图太大而无法上传到纹理中(4137 x 160;最大= 4096×4096)
并且不显示字母图像(拖动的图块显示为空):
所以我想使用BitmapRegionDecoder加载240 x 240位图,但作为Android编程新手(我也搜索过)我还有2个问题请:
R.drawable.big_english
- 没有合适的构造函数?isShareable
- 考虑到我加载了26个字母?答案 0 :(得分:1)
android http://examples.javacodegeeks.com/android/games/canvas/using-bitmap-fonts/
的Bitmapfonts您还应该谷歌搜索位图字体。还有一些实现和示例。
对于gl,libgdx http://www.codehead.co.uk/blog/android-bitmap-font-renderer-text-scaling-feature/
中有一个实现