跳到內容

主題配置

動態和整合的主題配置是在 Mermaid 8.7.0 版本中引入的。

現在可以在全站範圍或個別 Mermaid 圖表上自訂主題。對於全站主題自訂,會使用 initialize 呼叫。對於圖表特定自訂,會使用 init 指示詞。

可用主題

  1. 預設 - 這是所有圖表的預設主題。

  2. 中性 - 此主題非常適合將列印的黑白文件。

  3. 深色 - 此主題與深色元素或深色模式搭配使用效果很好。

  4. 森林 - 此主題包含綠色陰影。

  5. 基本 - 這是唯一可以修改的主題。使用此主題作為自訂的基礎。

全站主題

若要自訂全站主題,請在 mermaid 上呼叫 initialize 方法。

theme 設定為 baseinitialize 呼叫範例

javascript
mermaid.initialize({
  securityLevel: 'loose',
  theme: 'base',
});

圖表特定主題

若要自訂個別圖表的主題,請使用 init 指示詞。

theme 設定為 forestinit 指示詞範例

提醒:唯一可以自訂的主題是 base 主題。以下章節介紹如何使用 themeVariables 進行自訂。

使用 themeVariables 自訂主題

若要建立自訂主題,請透過 init 修改 themeVariables

您需要使用基本主題,因為它是唯一可修改的主題。

參數描述類型屬性
themeVariables可使用 init 指示詞修改物件primaryColorprimaryTextColorlineColor (請參閱完整清單)

使用 init 指示詞修改 themeVariables 的範例

色彩和色彩計算

為了確保圖表的可讀性,某些變數的預設值是從其他變數計算或衍生的。例如,primaryBorderColor 是從 primaryColor 變數衍生的。因此,如果自訂 primaryColor 變數,Mermaid 會自動調整 primaryBorderColor。調整可能表示顏色反轉、色調變更、變暗/變亮 10% 等。

主題引擎只會辨識十六進位顏色,而不是顏色名稱。因此,值 #ff0000 會有效,但 red 不會有效。

主題變數

變數預設值描述
darkModefalse影響衍生色彩的計算方式。將值設定為 true 以用於深色模式。
background#f4f4f4用於計算應該為背景色或與背景形成對比的項目的顏色
fontFamilytrebuchet ms, verdana, arial
fontSize16px以像素為單位的字型大小
primaryColor#fff4dd用作節點背景的顏色,其他顏色將由此衍生
primaryTextColor從 darkMode 計算 #ddd/#333用作使用 primaryColor 的節點中的文字色彩
secondaryColor從 primaryColor 計算
primaryBorderColor從 primaryColor 計算用作使用 primaryColor 的節點中的邊框
secondaryBorderColor從 secondaryColor 計算用作使用 secondaryColor 的節點中的邊框
secondaryTextColor從 secondaryColor 計算用作使用 secondaryColor 的節點中的文字色彩
tertiaryColor從 primaryColor 計算
tertiaryBorderColor從 tertiaryColor 計算用作使用 tertiaryColor 的節點中的邊框
tertiaryTextColor從 tertiaryColor 計算用作使用 tertiaryColor 的節點中的文字色彩
noteBkgColor#fff5ad用作註解背景的顏色
noteTextColor#333註解矩形中的文字顏色
noteBorderColor從 noteBkgColor 計算註解矩形中的邊框顏色
lineColor從背景計算
textColor從 primaryTextColor 計算圖表中在背景上的文字,例如循序圖中的標籤和訊號上的文字或甘特圖中的標題
mainBkg從 primaryColor 計算流程圖物件(例如矩形/圓形)、類別圖類別、循序圖等的背景
errorBkgColortertiaryColor語法錯誤訊息的顏色
errorTextColortertiaryTextColor語法錯誤訊息的顏色

流程圖變數

變數預設值描述
nodeBorderprimaryBorderColor節點邊框顏色
clusterBkgtertiaryColor子圖中的背景
clusterBordertertiaryBorderColor叢集邊框顏色
defaultLinkColorlineColor連結顏色
titleColortertiaryTextColor標題顏色
edgeLabelBackground從 secondaryColor 計算
nodeTextColorprimaryTextColor節點內文字的顏色

循序圖變數

變數預設值描述
actorBkgmainBkg角色背景顏色
actorBorderprimaryBorderColor角色邊框顏色
actorTextColorprimaryTextColor角色文字顏色
actorLineColoractorBorder角色線條顏色
signalColortextColor訊號顏色
signalTextColortextColor訊號文字顏色
labelBoxBkgColoractorBkg標籤方塊背景顏色
labelBoxBorderColoractorBorder標籤方塊邊框顏色
labelTextColoractorTextColor標籤文字顏色
loopTextColoractorTextColor迴圈文字顏色
activationBorderColor從 secondaryColor 計算啟用邊框顏色
activationBkgColorsecondaryColor啟用背景顏色
sequenceNumberColor從 lineColor 計算循序編號顏色

圓餅圖變數

變數預設值描述
pie1primaryColor圓餅圖中第 1 個區段的填滿
pie2secondaryColor圓餅圖中第 2 個區段的填滿
pie3從 tertiary 計算圓餅圖中第 3 個區段的填滿
pie4從 primaryColor 計算圓餅圖中第 4 個區段的填滿
pie5從 secondaryColor 計算圓餅圖中第 5 個區段的填滿
pie6從 tertiaryColor 計算圓餅圖中第 6 個區段的填滿
pie7從 primaryColor 計算圓餅圖中第 7 個區段的填滿
pie8從 primaryColor 計算圓餅圖中第 8 個區段的填滿
pie9從 primaryColor 計算圓餅圖中第 9 個區段的填滿
pie10從 primaryColor 計算圓餅圖中第 10 個區段的填滿
pie11從 primaryColor 計算圓餅圖中第 11 個區段的填滿
pie12從 primaryColor 計算圓餅圖中第 12 個區段的填滿
pieTitleTextSize25px標題文字大小
pieTitleTextColortaskTextDarkColor標題文字顏色
pieSectionTextSize17px個別區段標籤的文字大小
pieSectionTextColortextColor個別區段標籤的文字顏色
pieLegendTextSize17px圖表圖例中標籤的文字大小
pieLegendTextColortaskTextDarkColor圖表圖例中標籤的文字顏色
pieStrokeColorblack個別圓餅區段的邊框顏色
pieStrokeWidth2px個別圓餅區段的邊框寬度
pieOuterStrokeWidth2px圓餅圖外圓的邊框寬度
pieOuterStrokeColorblack圓餅圖外圓的邊框顏色
pieOpacity0.7個別圓餅區段的不透明度

狀態顏色

變數預設值描述
labelColorprimaryTextColor
altBackgroundtertiaryColor用於深層複合狀態的背景

類別顏色

變數預設值描述
classTexttextColor類別圖中文字的顏色

使用者旅程顏色

變數預設值描述
fillType0primaryColor旅程圖中第 1 個區段的填滿
fillType1secondaryColor旅程圖中第 2 個區段的填滿
fillType2從 primaryColor 計算旅程圖中第 3 個區段的填滿
fillType3從 secondaryColor 計算旅程圖中第 4 個區段的填滿
fillType4從 primaryColor 計算旅程圖中第 5 個區段的填滿
fillType5從 secondaryColor 計算旅程圖中第 6 個區段的填滿
fillType6從 primaryColor 計算旅程圖中第 7 個區段的填滿
fillType7從 secondaryColor 計算旅程圖中第 8 個區段的填滿