package com.fun.funnyprank.tools;

import android.annotation.SuppressLint;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Rect;
import android.graphics.Typeface;
import android.text.TextPaint;
import android.util.AttributeSet;
import android.widget.TextView;

import androidx.annotation.Nullable;

@SuppressLint("AppCompatCustomView")
public class MytextView extends TextView {
    private Paint borderPaint;
    public MytextView(Context context) {
        super(context);
        init();
    }

    public MytextView(Context context, @Nullable AttributeSet attrs) {
        super(context, attrs);
        init();
    }

    public MytextView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        init();
    }

    public MytextView(Context context, @Nullable AttributeSet attrs, int defStyleAttr, int defStyleRes) {
        super(context, attrs, defStyleAttr, defStyleRes);
        init();
    }

    private void init() {
        setTypeface(Typeface.createFromAsset(getContext().getAssets(), "KavoonRegular-Dp7E.ttf"));
//        borderPaint = new Paint();
//        borderPaint.setStyle(Paint.Style.STROKE);
//        borderPaint.setStrokeWidth(dpToPx(2)); // 设置边框宽度为2dp
//        borderPaint.setColor(getResources().getColor(android.R.color.black));
    }
//    @Override
//    protected void onDraw(Canvas canvas) {
//        super.onDraw(canvas);
//
//
//        TextPaint textPaint = getPaint();
//        String text = getText().toString();
//        Rect textBounds = new Rect();
//        textPaint.getTextBounds(text, 0, text.length(), textBounds);
//
//        // 计算文本的实际宽度和高度
//        float textWidth = textPaint.measureText(text);
//        float textHeight = textBounds.height();
//
//        // 计算边框的矩形
//        float startX = (getWidth() - textWidth) / 2 - dpToPx(2); // 减去2dp的外边距
//        float startY = (getHeight() - textHeight) / 2 - dpToPx(2); // 减去2dp的外边距
//        float endX = startX + textWidth + 2 * dpToPx(2); // 加上4dp的边框宽度
//        float endY = startY + textHeight + 2 * dpToPx(2); // 加上4dp的边框宽度
//
//        // 绘制文本
//        super.onDraw(canvas);
//
//        // 绘制边框
//        canvas.drawRect(startX, startY, endX, endY, borderPaint);
//    }
//
//    // Helper 方法：将 dp 转换为像素
//    private int dpToPx(int dp) {
//        float density = getContext().getResources().getDisplayMetrics().density;
//        return Math.round(dp * density);
//    }
}
