zoukankan      html  css  js  c++  java
  • Setting Text to Image On Android and Adjudt the text font size based on the android resolution

    1. Setting Text to Image On Android

    2. Adjudt the text font size based on the android resolution 

    3. 文字居中: paint.setTextAlign(Align.CENTER);然后drawText的x坐标设置为width / 2即可

    private float toPixel(Resources res, int dip) 
        {
            float px = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
                    dip, res.getDisplayMetrics());
            return px;
        }
        
        public Bitmap createBitmap(Bitmap src, String str)
        {          
              DisplayMetrics metrics = new DisplayMetrics();
             
               getWindowManager().getDefaultDisplay().getMetrics(metrics);
            
                int w = src.getWidth();  
                int h = src.getHeight();            
              
                int screenWidth = metrics.widthPixels;
                int screenHeight = metrics.heightPixels;      
            
                int height = (int)960*68/screenHeight;
                Bitmap bmpTemp = Bitmap.createBitmap(w, height, Config.ARGB_8888);  
                Canvas canvas = new Canvas(bmpTemp);  
                Paint p = new Paint();  
           
                Typeface font = Typeface.create(Typeface.DEFAULT,Typeface.BOLD);  
                p.setColor(Color.GRAY); 
                p.setTypeface(font); 
                
                int fontSize = (int)toPixel(getResources(),11);
             
                p.setTextSize(fontSize);  
                p.setTextAlign(Align.CENTER);
                canvas.drawBitmap(src, 0, 0, p);              
               
                int y = (int)960 *63/screenHeight;
                int x = (int)screenWidth/10;
                
                int adjustWidth = (int)(screenWidth/10 - (screenWidth - 5 *w)/10);
                
                if (adjustWidth < x 
                        && adjustWidth > 0)
                {
                  x = adjustWidth;
                }
                
                canvas.drawText(str,x , y, p);  
                canvas.save(Canvas.ALL_SAVE_FLAG);  
                canvas.restore();  
                return bmpTemp;  
        }
  • 相关阅读:
    java基础 第六章 下(抽象数据类型,面向过程,面向对象)
    java基础 第六章 上(二维数组)
    java基础 第五章 下(选择排序,冒泡排序)
    java基础 第五章 上(数组的第二种定义方法)
    java基础 补充(JVM 划分内存)
    java基础 第四章 下(数组)
    java基础 第四章 上(加载过程,重载)
    java基础 第三章 下(方法)
    java基础 第三章 上(终止循环 break,continue)
    Annotation 注解
  • 原文地址:https://www.cnblogs.com/Jessy/p/2361580.html
Copyright © 2011-2022 走看看