winform font字型程式設計續

wisdomone1發表於2012-07-17
//學習同種字形以不同磅值在不同行顯示的多種效果
        const string fontstr = "Times New Roman";//time new roman字形
        public keytest()
        {
            //學習字型類FONT的相關屬性 這可以查出當前窗體的字型及fontfamily,用於程式其它地方
            string str1 = Font.Name;
            string str2=Font.FontFamily.ToString();
        }

        protected override void OnPaint(PaintEventArgs e)
        {
            Brush br = new SolidBrush(Color.Blue);
            float y = 0;//不同行,故x座標是一樣的,僅變換y座標即可,由font.getheight(graphics)計算而來
            //字型磅值以1/4遞增自6磅到最大12磅
            for (float fontsize = 6; fontsize <= 12;fontsize+=0.25f)
            {
                //drawstring輸出受graphics.scaletransform的影響
                e.Graphics.ScaleTransform(0.5f, 0.5f);//graphics.scaletransform(x,y)圖形在X,Y座標上放大或縮小的比例,比如2就是擴大一倍,原來是1嗎
                e.Graphics.DrawString(fontstr, new Font(fontstr, fontsize), br, 0, y);
                y += Font.GetHeight(e.Graphics);//這樣就會在不同行顯示同樣的文字了
            }

            Font f = new Font(FontFamily.GenericSansSerif, 10, GraphicsUnit.Document);//字型構造另一種函式,引數graphicsunit


            
        }

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-735831/,如需轉載,請註明出處,否則將追究法律責任。

相關文章