Today‘s Review

来源:互联网 发布:led显示屏软件下载 编辑:程序博客网 时间:2024/05/21 09:50

总结一下2013.8.14号学到的东西,主要是在工程中调用别人的字体Engine,修改字体。虽然Demo没有做完,但是还是学到了不少的东西。

        

1.InputStream To byte[]  ——将InputStream读入到byte[]中

 

public static byte[] getBytes(InputStream is)    throws Exception    {        byte[] data = null;                Collection chunks = new ArrayList();        byte[] buffer = new byte[1024*1000];        int read = -1;        int size = 0;                while((read=is.read(buffer))!=-1)        {            if(read>0)            {                byte[] chunk = new byte[read];                System.arraycopy(buffer,0,chunk,0,read);                chunks.add(chunk);                size += chunk.length;            }        }                       if(size>0)        {            ByteArrayOutputStream bos = null;            try            {                bos = new ByteArrayOutputStream(size);                for(Iterator itr=chunks.iterator();itr.hasNext();)                {                    byte[] chunk = (byte[])itr.next();                    bos.write(chunk);                }                data = bos.toByteArray();            }            finally            {                if(bos!=null)                {                    bos.close();                }            }        }        return data;    } 


2.工程中调用OS文件

a. 将.OS文件放到工程libs\armeabi 文件夹下;

b. 在工程中创建于os库中路径相同的包文件。注意包文件的路径要和os文件的路径完全相同。(可以用记事本打开os文件,只看里面不是乱码的部分就可以判断出os的包路径)

c. 在上一步的类里调用os库中的方法(需要用native修饰),即可。

 

3.自定义Typeface,修改字体

a. 将字体文件(.ttf)添加到工程的assets文件夹下;

b. 将字体路引入TypeFace,如下所示。FONT_XJ是我定义的路径变量,这里只要把assets文件夹下的字体文件路径加上就行了。

private static String FONT_XJ= "fonts/XJ2312F-test.ttf";*********************************************************************************        TextView title = (TextView) this.findViewById(R.id.title);        title.setTextSize(20);              Typeface typefaceBDCN = Typeface.createFromAsset(this.getAssets(),        FONT_XJ);        title.setTypeface(typefaceBDCN);


To be continue...

原创粉丝点击