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;  
        }
  • 相关阅读:
    [leetCode]100.相同的树
    [leetCode]88.合并两个有序数组
    [leetCode]83.删除排序链表中的重复元素
    排序算法总结
    [leetCode]69. x 的平方根
    POJ 1151 Atlantis
    POJ 3468 A Simple Problem with Integers
    SGU 271 Book Pile
    POJ 2970 The lazy programmer
    FZU 2254 英语考试
  • 原文地址:https://www.cnblogs.com/Jessy/p/2361580.html
Copyright © 2011-2022 走看看