나는 응용 프로그램에서 같은 것을 할. 캔버스를 사용하십시오.
내 코드 조각을 편집했는데 실제로 배경과 물건에 몇 가지 다른 이미지가 추가되었습니다. 코드의
고기 :
private static Bitmap getPoster(...) {
Bitmap background = BitmapFactory.decodeResource(res, background_id)
.copy(Bitmap.Config.ARGB_8888, true);
Canvas canvas = new Canvas(background);
Typeface font = Typeface.createFromAsset(res.getAssets(), FONT_PATH);
font = Typeface.create(font, Typeface.BOLD);
Paint paint = new Paint();
paint.setTypeface(font);
paint.setAntiAlias(true);
paint.setColor(Color.WHITE);
paint.setStyle(Style.FILL);
paint.setShadowLayer(2.0f, 1.0f, 1.0f, Color.BLACK);
float fontSize = getFontSize(background.getWidth(), THE_QUOTE, paint); //You'll have to define a way to find a size that fits, or just use a constant size.
paint.setTextSize(fontSize);
canvas.drawText(THE_QUOTE, (background.getWidth() - paint.measureText(THE_QUOTE))/2,
background.getHeight() - FILLER_HEIGHT, paint); //You might want to do something different. In my case every image has a filler in the bottom which is 50px.
return background;
}
클래스에서 그 자신의 버전을 넣고 그것을 이미지 ID와 다른 것을 공급. 원하는대로 할 수있는 비트 맵을 반환합니다 (이미지 뷰에 표시하고 사용자가 저장하고 월페이퍼로 설정하도록 허용).
너무 가볍고 완벽하게 명확하지 않은 것에 대해 사과드립니다. Thomas. – Francesco
하나의 단일 이미지 또는 여러 이미지입니까?문자열/따옴표 부분을 이해했습니다. 그냥 이미지 부분에 분명히하고 싶습니다. – Ghost
답장을 보내 주셔서 감사합니다. 이미지는 항상 동일하며 변경 될 수있는 것은 따옴표입니다. 사용자가 이미지를 탭하면 이미지가 나타납니다. – Francesco