<font style="text-shadow:0px 0px 15px #FF37FD;">Paint</font>
===
###### tags: `Android developer` `Kotlin`
<font color="Brown">android.graphics.Paint</font>
<font color="Brown">關於如何繪製幾何圖形、文字、點陣圖、顏色訊息</font>
## <font color="sandybrown">Constructors</font>
### <font color="#990DFF">Paint()</font>
### <font color="#990DFF">Paint(flags: Int)</font>
### <font color="#990DFF">Paint(paint: Paint!)</font>
## <font color="sandybrown">Nested classes
</font>
### <font color="#990DFF">[Style](https://hackmd.io/-DnQh-ERS-CyNS2qPjQCsw?both)</font>
## <font color="sandybrown">常量</font>
### <font color="#990DFF">ANTI_ALIAS_FLAG</font>
:::info
繪製抗鋸齒
:::
:::warning
**Ex:**
```kotlin=
Paint(ANTI_ALIAS_FLAG)
Paint().flags=ANTI_ALIAS_FLAG
```
:::
## <font color="sandybrown">方法</font>
### <font color="#990DFF">setAntiAlias(aa: Boolean): Unit</font>
:::info
設置抗鋸齒
:::
:::warning
**Ex:**
```kotlin=
Paint().isAntiAlias = true
//等同
Paint(ANTI_ALIAS_FLAG)
Paint().flags=ANTI_ALIAS_FLAG
```
:::
### <font color="#990DFF">setColor(color: Int): Unit</font>
:::info
設置顏色
:::
:::warning
**Ex:**
```kotlin=
Paint().color = Color.RED
```
:::
### <font color="#990DFF">setStyle (style : Paint.Style!)</font>
:::info
設置繪畫的樣式,用於控制如何解釋基元的幾何
:::
:::warning
**Ex:**
```kotlin=
Paint().style = Paint.Style.FILL //填充內部
Paint().style = Paint.Style.FILL_AND_STROKE //填充內部還有描邊
Paint().style = Paint.Style.STROKE //僅描邊
```
:::danger
**輸出結果 :**

:::
:::success
FILL_AND_STROKE = FILL + STROKE 合成
:::
### <font color="#990DFF">setTextAlign(align: Paint.Align!): Unit</font>
:::info
設置 Paint 的文本對齊方式。它控製文本相對於其原點的定位方式。左對齊意味著所有文本都將被繪製到其原點的右側(即原點指定文本的左邊緣),依此類推。
:::
:::success
**參數**
align : 為 Paint 文本設置繪畫的“對齊”值。
:::
:::warning
**Ex:**
```kotlin=
Paint().textAlign=Paint.Align.LEFT //靠左
Paint().textAlign=Paint.Align.CENTER //置中
Paint().textAlign=Paint.Align.RIGHT //靠右
```
:::danger
**輸出結果 :**

:::
### <font color="#990DFF">setFakeBoldText(fakeBoldText: Boolean): Unit</font>
:::info
設置是否粗體
:::
:::success
**參數**
fakeBoldText : 如果在 paint 的標誌中設置fakeBoldText,則為true;如果為false,則為false。
:::
:::warning
**Ex:**
```kotlin=
val paint = Paint().apply {
color=Color.RED
style=Paint.Style.FILL
strokeWidth=5f
textSize=80f
isFakeBoldText=true
}
canvas?.drawText("isFakeBoldText",100f,200f,paint)
```
:::danger
**輸出結果 :**

:::
### <font color="#990DFF">setUnderlineText(underlineText: Boolean): Unit</font>
:::info
設置是否有底線
:::
:::success
**參數**
underlineText : 如果設置paint的標誌中的underlineText位,則為true,false表示清除它。
:::
:::warning
**Ex:**
```kotlin=
val paint = Paint().apply {
color=Color.RED
style=Paint.Style.FILL
strokeWidth=5f
textSize=80f
isUnderlineText=true
}
canvas?.drawText("isUnderlineText",100f,200f,paint)
```
:::danger
**輸出結果 :**

:::
### <font color="#990DFF">setStrikeThruText(strikeThruText: Boolean): Unit</font>
:::info
設置是否有刪除線
:::
:::success
**參數**
strikeThruText : 如果在paint的標誌中設置strikeThruText,則為true,false為清除它。
:::
:::warning
**Ex:**
```kotlin=
val paint = Paint().apply {
color=Color.RED
style=Paint.Style.FILL
strokeWidth=5f
textSize=80f
isStrikeThruText=true
}
canvas?.drawText("isStrikeThruText",100f,200f,paint)
```
:::danger
**輸出結果 :**

:::
### <font color="#990DFF">setTextSkewX(skewX: Float): Unit</font>
:::info
設置文字的 Paint 水平傾斜因子。默認值為0 ,負值向右傾斜,正值向左傾斜,對於近似斜文本,請使用-0.25左右的值。
:::
:::success
**參數**
skewX : 將繪製的傾斜因子設置為X以繪製文本。
:::
:::warning
**Ex:**
```kotlin=
val paint = Paint().apply {
color=Color.RED
style=Paint.Style.FILL
strokeWidth=5f
textSize=30f
}
canvas?.drawText("正常傾斜",100f,200f,paint)
paint.textSkewX=-0.25f
canvas?.drawText("-0.25傾斜",100f,300f,paint)
paint.textSkewX=0.25f
canvas?.drawText("0.25傾斜",100f,400f,paint)
```
:::danger
**輸出結果 :**

:::
### <font color="#990DFF">setTextSize(textSize: Float): Unit</font>
:::info
設置 Paint 的文字水平比例。默認值為1.0。值> 1.0將擴大文本範圍。值<1.0將使文本拉伸得更窄。
:::
:::success
**參數**
textSize : 將 Paint 的比例設置為X以繪製/測量文本。
:::
:::warning
**Ex:**
```kotlin=
val paint = Paint().apply {
color=Color.RED
style=Paint.Style.FILL
strokeWidth=5f
textSize=30f
}
canvas?.drawText("正常拉伸",100f,200f,paint)
paint.textScaleX=2f
canvas?.drawText("放大拉伸",100f,300f,paint)
paint.textScaleX=0.5f
canvas?.drawText("縮小拉伸",100f,400f,paint)
```
:::danger
**輸出結果 :**

:::
### <font color="#990DFF">setTypeface(typeface: Typeface!): Typeface!</font>
:::info
設置或清除字體。
:::
:::success
**參數**
typeface : 可能是null。要在 Paint 設置的字體
:::
:::warning
**Ex:**
```kotlin=
val paint = Paint().apply {
typeface = Typeface.SERIF
typeface = Typeface.MONOSPACE
}
```
:::