android paint cap join 理解 圖示

來源:互聯網
上載者:User

標籤:android   圖片   

Lee出品,本文屬個人所有,轉載請聲明出處。

網上查了很多資料,對paint的裡面的枚舉類cap join講的不是很透徹。在這裡自己做一個比較深入的研究。

首先說Cap,比較形象的解釋就是 用來控制我們的畫筆在離開畫板時候留下的最後一點圖形,比如矩形,圓形等。不懂?那接著往下看。

先看看源碼:

    /**     * The Cap specifies the treatment for the beginning and ending of     * stroked lines and paths. The default is BUTT.     */    public enum Cap {        /**         * The stroke ends with the path, and does not project beyond it.         */        BUTT    (0),        /**         * The stroke projects out as a semicircle, with the center at the         * end of the path.         */        ROUND   (1),        /**         * The stroke projects out as a square, with the center at the end         * of the path.         */        SQUARE  (2);                private Cap(int nativeInt) {            this.nativeInt = nativeInt;        }        final int nativeInt;    }

這是cap的源碼,從源碼我們看到BUTT是預設的設定,但是我們看不出BUTT、ROUND、SQUARE的區別。

下面看幾張圖片,我想足以理解Cap的用途。

BUTT
ROUND
SQUARE

上表就是三種樣式的區別,豎線處即為畫筆結束處,圖中區別明顯,在此不再贅述。


接著我們看Join,Join的理解也很容易,他是用來控制畫的圖形接觸時候的樣式的。

看源碼:

    /**     * The Join specifies the treatment where lines and curve segments     * join on a stroked path. The default is MITER.     */    public enum Join {        /**         * The outer edges of a join meet at a sharp angle         */        MITER   (0),        /**         * The outer edges of a join meet in a circular arc.         */        ROUND   (1),        /**         * The outer edges of a join meet with a straight line         */        BEVEL   (2);                private Join(int nativeInt) {            this.nativeInt = nativeInt;        }        final int nativeInt;    }

和Cap類似,看源碼也就看出了預設是MITER,其他具體形狀還是難以理解。接著看圖:

MITER
ROUND
BEVEL

上表就是三種樣式的區別,區別明顯,在此不再贅述。

android paint cap join 理解 圖示

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.