Android 安卓系统中图像的中心文本?

Android 安卓系统中图像的中心文本?,android,image,text,center,Android,Image,Text,Center,在我的android应用程序中,我需要在图像上显示文本。文本由用户在alertDialog中输入。这个文本我需要把它放在图片底部的中心。我用以下方法在图像上绘制文本: private Canvas drawTextImage(Bitmap b) { Canvas c = new Canvas(b); Paint paint = new Paint(); paint.setColor(getResources().getColor(R.color.o

在我的android应用程序中,我需要在图像上显示文本。文本由用户在alertDialog中输入。这个文本我需要把它放在图片底部的中心。我用以下方法在图像上绘制文本:

private Canvas drawTextImage(Bitmap b) {
        Canvas c = new Canvas(b);
        Paint paint = new Paint();
        paint.setColor(getResources().getColor(R.color.orange));

        paint.setStrokeWidth(30);
        paint.setAntiAlias(true);
        paint.setTextSize(40);
        c.drawText(text, 350, 900, paint);

        c.translate(300, 50);
        return c;
    }
我的警告是:

        final AlertDialog.Builder alert = new AlertDialog.Builder(this);
    alert.setTitle("Enter a text ");
    final EditText input = new EditText(this);
    InputFilter[] FilterArray = new InputFilter[1];
    FilterArray[0] = new InputFilter.LengthFilter(25);
    input.setFilters(FilterArray);

    alert.setView(input);
    alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int whichButton) {
            text = input.getText().toString().trim();
            Canvas c = new Canvas(bitmapResult);
            drawTextImage(bitmapResult);
            saveimage();
        }
    });

    alert.setNegativeButton("Cancel",
            new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int whichButton) {
                    dialog.cancel();
                    saveimage();
                }
            });

    alert.show();
文本必须根据其长度居中。我该怎么做

提前感谢..

使用

Paint.setTextAlign(Paint.Align.CENTER);
在用于绘制文本的油漆上

public void setTextAlign(Paint.Align Align)

设置绘制的文本对齐方式。这控制文本的显示方式 相对于其原点定位的。左对齐意味着所有 文本将绘制到其原点的右侧(即原点 指定文本的左边缘)等


编辑:在绘图文本中,您必须指定图像的一半作为x坐标(中心),y坐标应保持不变(底部的某个位置,取决于您想要的高度)。

使用

Paint.setTextAlign(Paint.Align.CENTER);
在用于绘制文本的油漆上

public void setTextAlign(Paint.Align Align)

设置绘制的文本对齐方式。这控制文本的显示方式 相对于其原点定位的。左对齐意味着所有 文本将绘制到其原点的右侧(即原点 指定文本的左边缘)等


编辑:在绘图文本中,您必须指定图像的一半作为x坐标(中心),y坐标应保持不变(底部的某个位置,取决于您想要的高度)