如何在android中实现画布上文本的拖动和缩放



向画布添加了一些文本,如下所示,如何实现画布上文本的拖动功能和缩放功能。这是我在画布上添加一些文本的代码

public class Test extends Activity {
  ImageView drawingImageView;
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    drawingImageView = (ImageView) this.findViewById(R.id.DrawingImageView);
    Bitmap bitmap = Bitmap.createBitmap((int) getWindowManager()
        .getDefaultDisplay().getWidth(), (int) getWindowManager()
        .getDefaultDisplay().getHeight(), Bitmap.Config.ARGB_8888);
    Canvas canvas = new Canvas(bitmap);
    drawingImageView.setImageBitmap(bitmap);
    // Custom Font Text
    Paint paint = new Paint();
    paint.setColor(Color.GREEN);
    paint.setTextSize(40);
    Typeface chops = Typeface.createFromAsset(this.getAssets(),
        "WC_Speed_Bold_Bta.ttf");
    paint.setTypeface(chops);
    float text_x = 120;
    float text_y = 120;
    canvas.drawText("Hello", text_x, text_y, paint);
  }
}

要缩放,请添加

canvas.scale(scalefactor, scalefactor);

这里的scalefactor是缩放画布的比例值(比如scalefactor=1.5f)。

最新更新