国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

react-native-art-繪圖入門

raise_yang / 1992人閱讀

摘要:在中是個非常重要的庫,它讓非??犰诺睦L圖及動畫變成了可能。于是決定出這樣一份入門文檔及可能遇到的坑,希望能夠幫助到大家。右鍵點擊項目選擇將添加到基礎(chǔ)組件暴露的組件有個,這篇用到的有五個。

在React Native中ART是個非常重要的庫,它讓非常酷炫的繪圖及動畫變成了可能。但是可能是知道的人真的不多導(dǎo)致文檔及少中文更少。很多都是把英文的參數(shù)列表翻譯過來,也沒有案例。于是決定出這樣一份入門文檔及可能遇到的坑,希望能夠幫助到大家。本文的示例工程https://github.com/xu-duqing/React-Native-ART-Sample

添加依賴

Android默認(rèn)就包含ART庫,IOS需要多帶帶添加依賴庫。

右鍵點擊項目 -> ‘Add Files to ProjectName -> 選擇 node_modules/react-native/React/Libraries/ART/ART.xcodeproj’

將 libART.a 添加到 Linked Frameworks and Libraries

基礎(chǔ)組件

ART暴露的組件有7個,這篇用到的有五個。先介紹即將用到的四個組件,之后在介紹另外三個。

Surface - 一個矩形可渲染的區(qū)域,是其他元素的容器!

Group - 可容納多個形狀、文本和其他的分組

Shape - 形狀定義,可填充

Text - 文本形狀定義

props

Surface

width : 渲染區(qū)域的寬

height : 定義渲染區(qū)域的高

Shape

d : 定義繪制路徑

stroke : 描邊顏色

strokeWidth : 描邊寬度

strokeDash : 定義虛線

fill : 填充顏色

Text

funt : 字體樣式,定義字體、大小、是否加粗 如: bold 35px Heiti SC

Path

moveTo(x,y) : 移動到坐標(biāo)(x,y)

lineTo(x,y) : 連線到(x,y)

arc() : 繪制弧線

close() : 封閉空間

繪制直線

了解Path的moveTo和LineTo的使用,注意Surface的高度和寬度,多數(shù)沒有繪制出想要的都是因為渲染區(qū)域定義問題

示例
import React from "react"
import {
    View,
    ART
} from "react-native"

export default class Line extends React.Component{

    render(){

        const path = ART.Path();
        path.moveTo(1,1); //將起始點移動到(1,1) 默認(rèn)(0,0)
        path.lineTo(300,1); //連線到目標(biāo)點(300,1)

        return(
            
                
                    
                
            
        )
    }
}
繪制虛線

了解strokeDash的參數(shù),

[10,5] : 表示繪10像素實線在繪5像素空白,如此循環(huán)
[10,5,20,5] : 表示繪10像素實線在繪制5像素空白在繪20像素實線及5像素空白

示例
import React from "react"
import {
    View,
    ART
} from "react-native"

const {Surface, Shape, Path} = ART;

export default class DashLine extends React.Component{

    render(){

        const path = Path()
            .moveTo(1,1)
            .lineTo(300,1);

        return(
            
                
                    
                
            
        )
    }
}
繪制矩形

了解close()的使用,close的意思是創(chuàng)建一個密閉的路徑。首先通過lineTo繪制三條邊,在使用close鏈接第四條邊。fill做顏色填充

示例
import React from "react"
import {
    View,
    ART
} from "react-native"

const {Surface, Shape, Path} = ART;

export default class Rect extends React.Component{

    render(){

        const path = new Path()
            .moveTo(1,1)
            .lineTo(1,99)
            .lineTo(99,99)
            .lineTo(99,1)
            .close();

        return(
            
                
                    
                
            
        )
    }
}
繪圓

了解arc(x,y,radius)的使用, 終點坐標(biāo)距離起點坐標(biāo)的相對距離

示例
import React from "react"
import {
    View,
    ART
} from "react-native"

const {Surface, Shape, Path} = ART;

export default class Circle extends React.Component{

    render(){

        const path = new Path()
            .moveTo(50,1)
            .arc(0,99,25)
            .arc(0,-99,25)
            .close();


        return(
            
                
                    
                
            
        )
    }
}
繪制文字

了解funt屬性的使用,規(guī)則是“粗細(xì) 字號 字體”

注意: 字體應(yīng)該是支持path屬性的,應(yīng)該是實現(xiàn)bug并沒有不生效。 Android通過修改源碼是可以解決的,IOS沒看源碼。

示例
import React from "react"
import {
    View,
    ART
} from "react-native"

const {Surface, Text, Path} = ART;

export default class ArtText extends  React.Component{


    render(){

        return(
            
                
                    Swipe
                
            
        )
    }

}
繪制扇形

這里使用的是react-art中封裝的一個組件地址,內(nèi)部還是使用arc做路徑繪制,感興趣的同學(xué)可以閱讀一下代碼

示例
import React from "react"
import {
    View,
    ART
} from  "react-native"

const {Surface} = ART;
import Wedge from "./Wedge"

export default class Fan extends  React.Component{

    render(){

        return(
            
                
                    

                
            
        )
    }
}
圖層疊加

了解Group的使用

示例
"use strict";

import React from "react"
import {
    View,
    ART
} from "react-native"

const {Surface, Shape,Text, Path,Group} = ART;

export default class GroupTest extends React.Component{

    render(){

        const pathRect = new Path()
            .moveTo(1,1)
            .lineTo(1,99)
            .lineTo(99,99)
            .lineTo(99,1)
            .close();

        const pathCircle = new Path()
            .moveTo(50,1)
            .arc(0,99,25)
            .arc(0,-99,25)
            .close();

        const pathText = new Path()
            .moveTo(40,5)
            .lineTo(40,99);


        return(
            
                
                    
                        
                        
                        Swipe
                    
                
            
        )
    }
}

作者 大光 更多文章 | Github

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/80106.html

相關(guān)文章

  • CAD小白初入門該怎么進(jìn)行階段性學(xué)習(xí)CAD?

    摘要:三學(xué)以致用在學(xué)習(xí)命令時始終要與實際應(yīng)用相結(jié)合,把學(xué)以致用的原則貫穿整個學(xué)習(xí)過程。五循序漸進(jìn)整個學(xué)習(xí)過程其實就是循序漸進(jìn)的方式。 CAD小白初入門該怎么進(jìn)行階段性學(xué)習(xí)CAD?現(xiàn)在隨著CAD的各種應(yīng)用的普及,不管是建筑加工還是機械制造,都會運用得比較多,那么新手小白到底該如何學(xué)好CAD,進(jìn)階大神?下面小編就總結(jié)了幾點,希望可以對大家有所用處哦!showImg(https://segment...

    Aomine 評論0 收藏0
  • GoJS 繪圖 (一) :入門

    摘要:是一個庫,讓你輕松創(chuàng)建現(xiàn)代瀏覽器的交互圖。支持圖形化的模板和圖形對象屬性數(shù)據(jù)模型的數(shù)據(jù)綁定。許多預(yù)定義的工具和命令執(zhí)行,大部分的圖表所需要的標(biāo)準(zhǔn)的行為。外觀和行為的定制是大多設(shè)置屬性的問題。 GoJS是一個JavaScript庫,讓你輕松創(chuàng)建現(xiàn)代Web瀏覽器的交互圖。 GoJS支持圖形化的模板和圖形對象屬性數(shù)據(jù)模型的數(shù)據(jù)綁定。你只需要保存和恢復(fù)模型,包括持有任何性質(zhì)的應(yīng)用需求,簡單的J...

    X_AirDu 評論0 收藏0
  • Python易學(xué)就會(三)turtle繪圖入門--初級篇

    摘要:比如把上面畫正方形的例子稍做變化重復(fù)執(zhí)行次畫正方形開始畫正方形結(jié)束右轉(zhuǎn)度執(zhí)行后,可以看到,畫出一個非常規(guī)整漂亮的組合圖案。   turtle圖形庫源于1966年誕生的Logo語言,是入門Python的有趣工具。因其簡單便捷的圖形化方法、和立即反饋式的繪畫效果,成為眾多編程入門者的首選。相對于大多數(shù)入門教材中枯燥的語法學(xué)習(xí),和函數(shù)、方法的演練來說,turtle的趣味性顯得別具一格、極富效...

    周國輝 評論0 收藏0
  • 快速入門 Matplotlib 繪圖

    摘要:概述是使用開發(fā)的一個繪圖庫,是界進(jìn)行數(shù)據(jù)可視化的首選庫??梢酝ㄟ^圖形示例來快速瀏覽所有支持的圖形。最后,調(diào)用把繪制好的圖形顯示出來。對應(yīng)于三個參數(shù),表示行,表示列,表示位置。因此,表示在圖表中總共有個圖形,當(dāng)前新增的圖形添加到位置。 showImg(https://segmentfault.com/img/bV6EPD?w=542&h=130); 概述 Matplotlib 是使用 P...

    Hujiawei 評論0 收藏0
  • Python易學(xué)就會(四)turtle繪圖入門--高級篇

    摘要:也就是說明這個參數(shù)除了表示圓的半徑面,其正負(fù)性還定義了畫圓的方向。入門篇中有個小彩蛋,也就是可以修改的指針外形。通過初始化出多只新,可以同時在一個界面上以不同的繪圖。下面給出一段繪制實時時鐘的代碼,重點部分我已給出注釋。   到目前為止我們通過turtle庫了解了Python的基本語法,包括順序與循環(huán)、函數(shù)的調(diào)用與方法的定義、列表與簡單的數(shù)學(xué)運算等;也學(xué)習(xí)了用turtle庫繪圖的基本用...

    Miracle 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<