├── .gitignore ├── .npmignore ├── .vscode └── settings.json ├── LICENSE ├── colors.puml ├── index.js ├── package.json ├── puml-theme-4class.puml ├── puml-theme-xuanye.puml ├── readme.md ├── samples ├── activity-new-sample.puml ├── class-sample.puml ├── element.puml ├── sequence-group.puml ├── sequence-sample.puml ├── state-sample.puml └── usecase-sample.puml └── skinparams.md /.gitignore: -------------------------------------------------------------------------------- 1 | # Windows image file caches 2 | Thumbs.db 3 | ehthumbs.db 4 | 5 | # Folder config file 6 | Desktop.ini 7 | 8 | # Recycle Bin used on file shares 9 | $RECYCLE.BIN/ 10 | 11 | #hexo 12 | .DS_Store 13 | .deploy 14 | node_modules 15 | db.json 16 | *.sublime-project 17 | *.sublime-workspace 18 | package-lock.json 19 | .generate/ -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | samples/ 2 | dist/ 3 | .vscode/ -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // 将设置放入此文件中以覆盖默认设置 2 | { 3 | "plantuml.diagramsRoot": "./", 4 | "plantuml.exportOutDir": "./dist", 5 | "commentTranslate.targetLanguage": "zh-CN", 6 | 7 | } -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 Xuanye Wong 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /colors.puml: -------------------------------------------------------------------------------- 1 | 2 | !$DC_1= '#BBBBBB' 3 | !$DC_2= '#535353' 4 | !$DC_4= '#2B2B2B' 5 | !$DC_3= '#3C3F41' 6 | !$DC_5= '#438AA3' 7 | !$DC_6= '#5E8A4F' 8 | !$DC_7= '#589DF6' 9 | !$DC_8= '#FF6464' 10 | 11 | !$RED_80 = '#750e13' 12 | !$RED_70 = '#a2191f' 13 | !$RED_60 = '#da1e28' 14 | !$RED_50 = '#fa4d56' 15 | !$RED_40 = '#ff8389' 16 | !$RED_30 = '#ffb3b8' 17 | !$RED_20 = '#ffd7d9' 18 | !$RED_10 = '#fff1f1' 19 | 20 | !$CYAN_10 = '#e5f6ff' 21 | !$CYAN_20 = '#bae6ff' 22 | !$CYAN_30 = '#82cfff' 23 | !$CYAN_40 = '#33b1ff' 24 | !$CYAN_50 = '#1192e8' 25 | !$CYAN_60 = '#0072c3' 26 | !$CYAN_70 = '#00539a' 27 | !$CYAN_80 = '#003a6d' 28 | 29 | !$YELLOW_5= '#FFFDE7' 30 | !$YELLOW_10= '#FFF9C4' 31 | !$YELLOW_20= '#FFF59D' 32 | !$YELLOW_30= '#FFF176' 33 | !$YELLOW_40= '#FFEE58' 34 | !$YELLOW_50= '#FFEB3B' 35 | !$YELLOW_60= '#FDD835' 36 | !$YELLOW_70= '#FBC02D' 37 | !$YELLOW_80= '#F9A825' 38 | !$YELLOW_90= '#F57F17' 39 | !$YELLOW_A100= '#FFFF8D' 40 | !$YELLOW_A200= '#FFFF00' 41 | !$YELLOW_A400= '#FFEA00' 42 | !$YELLOW_A700= '#FFD600' 43 | 44 | !$ORANGE_5= '#FFF3E0' 45 | !$ORANGE_10= '#FFE0B2' 46 | !$ORANGE_20= '#FFCC80' 47 | !$ORANGE_30= '#FFB74D' 48 | !$ORANGE_40= '#FFA726' 49 | !$ORANGE_50= '#FF9800' 50 | !$ORANGE_60= '#FB8C00' 51 | !$ORANGE_70= '#F57C00' 52 | !$ORANGE_80= '#EF6C00' 53 | !$ORANGE_90= '#E65100' 54 | !$ORANGE_A100= '#FFD180' 55 | !$ORANGE_A200= '#FFAB40' 56 | !$ORANGE_A400= '#FF9100' 57 | !$ORANGE_A700= '#FF6D00' 58 | 59 | !$GREEN_5= '#E8F5E9' 60 | !$GREEN_10= '#C8E6C9' 61 | !$GREEN_20= '#A5D6A7' 62 | !$GREEN_30= '#81C784' 63 | !$GREEN_40= '#66BB6A' 64 | !$GREEN_50= '#4CAF50' 65 | !$GREEN_60= '#43A047' 66 | !$GREEN_70= '#388E3C' 67 | !$GREEN_80= '#2E7D32' 68 | !$GREEN_90= '#1B5E20' 69 | !$GREEN_A100= '#B9F6CA' 70 | !$GREEN_A200= '#69F0AE' 71 | !$GREEN_A400= '#00E676' 72 | !$GREEN_A700= '#00C853' 73 | 74 | 75 | !$PURPLE_80 ='#491d8b' 76 | !$PURPLE_70 = '#6929c4' 77 | !$PURPLE_60 = '#8a3ffc' 78 | !$PURPLE_50 = '#a56eff' 79 | !$PURPLE_40 = '#be95ff' 80 | !$PURPLE_30 = '#d4bbff' 81 | !$PURPLE_20 = '#e8daff' 82 | !$PURPLE_10 = '#f6f2ff' 83 | 84 | !$TEAL_10 = '#d9fbfb' 85 | !$TEAL_20 = '#9ef0f0' 86 | !$TEAL_30 = '#3ddbd9' 87 | !$TEAL_40 = '#08bdba' 88 | !$TEAL_50 = '#009d9a' 89 | !$TEAL_60 = '#007d79' 90 | !$TEAL_70 = '#005d5d' 91 | !$TEAL_80 = '#004144' 92 | 93 | !$GRAY_10 = '#f4f4f4' 94 | !$GRAY_20 = '#e0e0e0' 95 | !$GRAY_30 = '#c6c6c6' 96 | !$GRAY_40 = '#a8a8a8' 97 | !$GRAY_50 = '#8d8d8d' 98 | !$GRAY_60 = '#6f6f6f' 99 | !$GRAY_70 = '#525252' 100 | !$GRAY_80 = '#393939' 101 | !$GRAY_90 = '#262626' 102 | !$GRAY_100 = '#161616' 103 | 104 | !$BLACK = '#000000' 105 | !$WHITE = '#FFFFFF' -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | console.log("plantuml-theme-xuanye-blue"); 2 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "puml-theme-xuanye", 3 | "version": "0.1.2", 4 | "description": "自定义PlantUml和C4 Model样式\r ---\r ![流程图](https://www.plantuml.com/plantuml/png/RLAnRjim4Dtv5TSfzc1fwIGNQ8eW3RgqWJ9qB5ZgP14vaIhl65T_7rACR1WG1u6wU-_ntIFlMNIGE19e8_RDodnmU3wm7YT2zSawGx7360W6aOcRkWxwN9si3F5lP0p6Eq4dbV5Z_JzgDsCzaNPPyS0o4nxCvthKB1XgumDMK-geEuWkCSR411aGUa_apzQTWAn3qAw3cxODd7OU8YEGDvfeLdUhERZgggVsyV7ddszj--ktKcgPJJKFPCth2uOtGgc694xOuh-8BBlzKJLfNfZq2O_Azh1xJhlAknSqCQGq7WOqh_limi5EGiIzWhIQ3zWFPnUHNCjiozzzEElGVLqvpXT6OGLla1boQi4J5-9ApbNh8i9KO2cF3PcoMFnqAQ3hR7yZPVdPirpOC_8jVVMVKDd_bwiKCPRJjk1FcD7Rvrv0RIfZABWLKsHxJPm2BALii_CGiBC1pORNPcsjUHmNcP9r8VSbxEqvcu-hW50k-wYs1soAuUKDWE0uaHQyCRzyrHBvVVg98xq3)", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "repository": { 10 | "type": "git", 11 | "url": "git+https://github.com/xuanye/plantuml-style-c4.git" 12 | }, 13 | "author": "xuanye wong", 14 | "license": "MIT", 15 | "bugs": { 16 | "url": "https://github.com/xuanye/plantuml-style-c4/issues" 17 | }, 18 | "homepage": "https://github.com/xuanye/plantuml-style-c4#readme" 19 | } 20 | -------------------------------------------------------------------------------- /puml-theme-4class.puml: -------------------------------------------------------------------------------- 1 | '' 2 | '' Xuanye theme 3 | '' 4 | '' Author: Xuanye Wong 5 | '' Copyright (c) 2023 by Xuanye Wong 6 | 7 | 8 | !$THEME = "4class" 9 | 10 | '!$BGCOLOR = "#f5f5f5" 11 | 12 | !if %not(%variable_exists("$BGCOLOR")) 13 | !$BGCOLOR = "transparent" 14 | !endif 15 | 16 | 17 | 18 | 19 | !$DC_1= '#BBBBBB' 20 | !$DC_2= '#535353' 21 | !$DC_4= '#2B2B2B' 22 | !$DC_3= '#3C3F41' 23 | !$DC_5= '#438AA3' 24 | !$DC_6= '#5E8A4F' 25 | !$DC_7= '#589DF6' 26 | !$DC_8= '#FF6464' 27 | 28 | !$RED_80 = '#750e13' 29 | !$RED_70 = '#a2191f' 30 | !$RED_60 = '#da1e28' 31 | !$RED_50 = '#fa4d56' 32 | !$RED_40 = '#ff8389' 33 | !$RED_30 = '#ffb3b8' 34 | !$RED_20 = '#ffd7d9' 35 | !$RED_10 = '#fff1f1' 36 | 37 | !$CYAN_10 = '#e5f6ff' 38 | !$CYAN_20 = '#bae6ff' 39 | !$CYAN_30 = '#82cfff' 40 | !$CYAN_40 = '#33b1ff' 41 | !$CYAN_50 = '#1192e8' 42 | !$CYAN_60 = '#0072c3' 43 | !$CYAN_70 = '#00539a' 44 | !$CYAN_80 = '#003a6d' 45 | 46 | !$YELLOW_5= '#FFFDE7' 47 | !$YELLOW_10= '#FFF9C4' 48 | !$YELLOW_20= '#FFF59D' 49 | !$YELLOW_30= '#FFF176' 50 | !$YELLOW_40= '#FFEE58' 51 | !$YELLOW_50= '#FFEB3B' 52 | !$YELLOW_60= '#FDD835' 53 | !$YELLOW_70= '#FBC02D' 54 | !$YELLOW_80= '#F9A825' 55 | !$YELLOW_90= '#F57F17' 56 | !$YELLOW_A100= '#FFFF8D' 57 | !$YELLOW_A200= '#FFFF00' 58 | !$YELLOW_A400= '#FFEA00' 59 | !$YELLOW_A700= '#FFD600' 60 | 61 | !$ORANGE_5= '#FFF3E0' 62 | !$ORANGE_10= '#FFE0B2' 63 | !$ORANGE_20= '#FFCC80' 64 | !$ORANGE_30= '#FFB74D' 65 | !$ORANGE_40= '#FFA726' 66 | !$ORANGE_50= '#FF9800' 67 | !$ORANGE_60= '#FB8C00' 68 | !$ORANGE_70= '#F57C00' 69 | !$ORANGE_80= '#EF6C00' 70 | !$ORANGE_90= '#E65100' 71 | !$ORANGE_A100= '#FFD180' 72 | !$ORANGE_A200= '#FFAB40' 73 | !$ORANGE_A400= '#FF9100' 74 | !$ORANGE_A700= '#FF6D00' 75 | 76 | !$GREEN_5= '#E8F5E9' 77 | !$GREEN_10= '#C8E6C9' 78 | !$GREEN_20= '#A5D6A7' 79 | !$GREEN_30= '#81C784' 80 | !$GREEN_40= '#66BB6A' 81 | !$GREEN_50= '#4CAF50' 82 | !$GREEN_60= '#43A047' 83 | !$GREEN_70= '#388E3C' 84 | !$GREEN_80= '#2E7D32' 85 | !$GREEN_90= '#1B5E20' 86 | !$GREEN_A100= '#B9F6CA' 87 | !$GREEN_A200= '#69F0AE' 88 | !$GREEN_A400= '#00E676' 89 | !$GREEN_A700= '#00C853' 90 | 91 | 92 | !$PURPLE_80 ='#491d8b' 93 | !$PURPLE_70 = '#6929c4' 94 | !$PURPLE_60 = '#8a3ffc' 95 | !$PURPLE_50 = '#a56eff' 96 | !$PURPLE_40 = '#be95ff' 97 | !$PURPLE_30 = '#d4bbff' 98 | !$PURPLE_20 = '#e8daff' 99 | !$PURPLE_10 = '#f6f2ff' 100 | 101 | !$TEAL_10 = '#d9fbfb' 102 | !$TEAL_20 = '#9ef0f0' 103 | !$TEAL_30 = '#3ddbd9' 104 | !$TEAL_40 = '#08bdba' 105 | !$TEAL_50 = '#009d9a' 106 | !$TEAL_60 = '#007d79' 107 | !$TEAL_70 = '#005d5d' 108 | !$TEAL_80 = '#004144' 109 | 110 | !$GRAY_10 = '#f4f4f4' 111 | !$GRAY_20 = '#e0e0e0' 112 | !$GRAY_30 = '#c6c6c6' 113 | !$GRAY_40 = '#a8a8a8' 114 | !$GRAY_50 = '#8d8d8d' 115 | !$GRAY_60 = '#6f6f6f' 116 | !$GRAY_70 = '#525252' 117 | !$GRAY_80 = '#393939' 118 | !$GRAY_90 = '#262626' 119 | !$GRAY_100 = '#161616' 120 | 121 | !$BLACK = '#000000' 122 | !$WHITE = '#FFFFFF' 123 | 124 | 125 | skinparam backgroundColor $BGCOLOR 126 | skinparam useBetaStyle false 127 | 128 | 129 | !$PRIMARY_TEXT = $BLACK 130 | !$PRIMARY_BG_LIGHT = $WHITE 131 | !$PRIMARY_BG = $GRAY_10 132 | !$PRIMARY_BORDER_LIGHT = $GRAY_20 133 | !$PRIMARY_BORDER = $GRAY_80 134 | 135 | 136 | 137 | !$SUCCESS = $GREEN_50 138 | !$WARNING = $ORANGE_80 139 | !$DANGER = $RED_50 140 | 141 | !$ARROW_COLOR = $GRAY_50 142 | !$START_COLOR = $GREEN_50 143 | !$END_COLOR = $RED_50 144 | 145 | 146 | !$BORDER_THICKNESS = 1 147 | 148 | 149 | !procedure $success($msg) 150 | $msg 151 | !endprocedure 152 | 153 | !procedure $failure($msg) 154 | $msg 155 | !endprocedure 156 | 157 | !procedure $warning($msg) 158 | $msg 159 | !endprocedure 160 | 161 | !procedure $primary_scheme() 162 | FontColor $PRIMARY_TEXT 163 | BorderColor $PRIMARY_BORDER 164 | BackgroundColor $PRIMARY_BG_LIGHT 165 | RoundCorner 0 166 | !endprocedure 167 | 168 | 169 | !procedure GRAY_ARROW() 170 | skinparam ArrowColor $GRAY_50 171 | !endprocedure 172 | !procedure BLUE_ARROW() 173 | skinparam ArrowColor $CYAN_50 174 | !endprocedure 175 | 176 | !procedure RED_ARROW() 177 | skinparam ArrowColor $RED_50 178 | !endprocedure 179 | 180 | !procedure GREEN_ARROW() 181 | skinparam ArrowColor $GREEN_20 182 | !endprocedure 183 | '' 184 | '' Global Default Values 185 | '' 186 | skinparam defaultFontName "-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif" 187 | skinparam defaultFontSize 12 188 | 'skinparam dpi 125 189 | skinparam shadowing false 190 | skinparam roundcorner 5 191 | skinparam ParticipantPadding 10 192 | skinparam BoxPadding 10 193 | skinparam Padding 4 194 | skinparam ArrowColor $ARROW_COLOR 195 | 196 | 197 | 198 | !startsub interface 199 | 200 | skinparam interface { 201 | $primary_scheme() 202 | } 203 | !endsub 204 | 205 | !startsub class 206 | 207 | skinparam class { 208 | 209 | $primary_scheme() 210 | 211 | HeaderBackgroundColor $PRIMARY_BG_LIGHT 212 | StereotypeFontColor $PRIMARY_TEXT 213 | StereotypeFontSize 9 214 | 215 | BorderThickness $BORDER_THICKNESS 216 | 217 | 218 | AttributeFontColor $PRIMARY_TEXT 219 | AttributeFontSize 10 220 | 'AttributeIconSize 8 221 | } 222 | !endsub 223 | 224 | 225 | -------------------------------------------------------------------------------- /puml-theme-xuanye.puml: -------------------------------------------------------------------------------- 1 | '' 2 | '' Xuanye theme 3 | '' 4 | '' Author: Xuanye Wong 5 | '' Copyright (c) 2023 by Xuanye Wong 6 | 7 | !$THEME = "xuanye" 8 | '!$BGCOLOR = "#f5f5f5" 9 | 10 | !if %not(%variable_exists("$BGCOLOR")) 11 | !$BGCOLOR = "transparent" 12 | !endif 13 | 14 | skinparam backgroundColor $BGCOLOR 15 | skinparam useBetaStyle false 16 | 17 | 18 | !$DC_1= '#BBBBBB' 19 | !$DC_2= '#535353' 20 | !$DC_4= '#2B2B2B' 21 | !$DC_3= '#3C3F41' 22 | !$DC_5= '#438AA3' 23 | !$DC_6= '#5E8A4F' 24 | !$DC_7= '#589DF6' 25 | !$DC_8= '#FF6464' 26 | 27 | !$RED_80 = '#750e13' 28 | !$RED_70 = '#a2191f' 29 | !$RED_60 = '#da1e28' 30 | !$RED_50 = '#fa4d56' 31 | !$RED_40 = '#ff8389' 32 | !$RED_30 = '#ffb3b8' 33 | !$RED_20 = '#ffd7d9' 34 | !$RED_10 = '#fff1f1' 35 | 36 | !$CYAN_10 = '#e5f6ff' 37 | !$CYAN_20 = '#bae6ff' 38 | !$CYAN_30 = '#82cfff' 39 | !$CYAN_40 = '#33b1ff' 40 | !$CYAN_50 = '#1192e8' 41 | !$CYAN_60 = '#0072c3' 42 | !$CYAN_70 = '#00539a' 43 | !$CYAN_80 = '#003a6d' 44 | 45 | !$YELLOW_5= '#FFFDE7' 46 | !$YELLOW_10= '#FFF9C4' 47 | !$YELLOW_20= '#FFF59D' 48 | !$YELLOW_30= '#FFF176' 49 | !$YELLOW_40= '#FFEE58' 50 | !$YELLOW_50= '#FFEB3B' 51 | !$YELLOW_60= '#FDD835' 52 | !$YELLOW_70= '#FBC02D' 53 | !$YELLOW_80= '#F9A825' 54 | !$YELLOW_90= '#F57F17' 55 | !$YELLOW_A100= '#FFFF8D' 56 | !$YELLOW_A200= '#FFFF00' 57 | !$YELLOW_A400= '#FFEA00' 58 | !$YELLOW_A700= '#FFD600' 59 | 60 | !$ORANGE_5= '#FFF3E0' 61 | !$ORANGE_10= '#FFE0B2' 62 | !$ORANGE_20= '#FFCC80' 63 | !$ORANGE_30= '#FFB74D' 64 | !$ORANGE_40= '#FFA726' 65 | !$ORANGE_50= '#FF9800' 66 | !$ORANGE_60= '#FB8C00' 67 | !$ORANGE_70= '#F57C00' 68 | !$ORANGE_80= '#EF6C00' 69 | !$ORANGE_90= '#E65100' 70 | !$ORANGE_A100= '#FFD180' 71 | !$ORANGE_A200= '#FFAB40' 72 | !$ORANGE_A400= '#FF9100' 73 | !$ORANGE_A700= '#FF6D00' 74 | 75 | !$GREEN_5= '#E8F5E9' 76 | !$GREEN_10= '#C8E6C9' 77 | !$GREEN_20= '#A5D6A7' 78 | !$GREEN_30= '#81C784' 79 | !$GREEN_40= '#66BB6A' 80 | !$GREEN_50= '#4CAF50' 81 | !$GREEN_60= '#43A047' 82 | !$GREEN_70= '#388E3C' 83 | !$GREEN_80= '#2E7D32' 84 | !$GREEN_90= '#1B5E20' 85 | !$GREEN_A100= '#B9F6CA' 86 | !$GREEN_A200= '#69F0AE' 87 | !$GREEN_A400= '#00E676' 88 | !$GREEN_A700= '#00C853' 89 | 90 | 91 | !$PURPLE_80 ='#491d8b' 92 | !$PURPLE_70 = '#6929c4' 93 | !$PURPLE_60 = '#8a3ffc' 94 | !$PURPLE_50 = '#a56eff' 95 | !$PURPLE_40 = '#be95ff' 96 | !$PURPLE_30 = '#d4bbff' 97 | !$PURPLE_20 = '#e8daff' 98 | !$PURPLE_10 = '#f6f2ff' 99 | 100 | !$TEAL_10 = '#d9fbfb' 101 | !$TEAL_20 = '#9ef0f0' 102 | !$TEAL_30 = '#3ddbd9' 103 | !$TEAL_40 = '#08bdba' 104 | !$TEAL_50 = '#009d9a' 105 | !$TEAL_60 = '#007d79' 106 | !$TEAL_70 = '#005d5d' 107 | !$TEAL_80 = '#004144' 108 | 109 | !$GRAY_10 = '#f4f4f4' 110 | !$GRAY_20 = '#e0e0e0' 111 | !$GRAY_30 = '#c6c6c6' 112 | !$GRAY_40 = '#a8a8a8' 113 | !$GRAY_50 = '#8d8d8d' 114 | !$GRAY_60 = '#6f6f6f' 115 | !$GRAY_70 = '#525252' 116 | !$GRAY_80 = '#393939' 117 | !$GRAY_90 = '#262626' 118 | !$GRAY_100 = '#161616' 119 | 120 | !$BLACK = '#000000' 121 | !$WHITE = '#FFFFFF' 122 | 123 | 124 | 125 | 126 | !$PRIMARY_TEXT = $GRAY_100 127 | !$PRIMARY_BG_LIGHT = $CYAN_10 128 | !$PRIMARY_BG = $CYAN_20 129 | !$PRIMARY_BORDER_LIGHT = $CYAN_30 130 | !$PRIMARY_BORDER = $CYAN_40 131 | 132 | 133 | !$SECONDARY_TEXT = $GRAY_100 134 | !$SECONDARY_BG_LIGHT = $ORANGE_10 135 | !$SECONDARY_BG = $ORANGE_20 136 | !$SECONDARY_BORDER = $ORANGE_30 137 | 138 | 139 | 140 | 141 | !$SUCCESS = $GREEN_50 142 | !$WARNING = $ORANGE_80 143 | !$DANGER = $RED_50 144 | 145 | !$ARROW_COLOR = $GRAY_50 146 | !$START_COLOR = $GREEN_50 147 | !$END_COLOR = $RED_50 148 | 149 | !$LIFE_LINE_BORDER_COLOR = $GREEN_50 150 | 151 | !$BORDER_THICKNESS = 1 152 | 153 | 154 | !procedure $success($msg) 155 | $msg 156 | !endprocedure 157 | 158 | !procedure $failure($msg) 159 | $msg 160 | !endprocedure 161 | 162 | !procedure $warning($msg) 163 | $msg 164 | !endprocedure 165 | 166 | !procedure $primary_scheme() 167 | FontColor $PRIMARY_TEXT 168 | BorderColor $PRIMARY_BORDER 169 | BackgroundColor $PRIMARY_BG_LIGHT 170 | RoundCorner 0 171 | !endprocedure 172 | 173 | 174 | 175 | !procedure GRAY_ARROW() 176 | skinparam ArrowColor $GRAY_50 177 | !endprocedure 178 | !procedure BLUE_ARROW() 179 | skinparam ArrowColor $CYAN_50 180 | !endprocedure 181 | 182 | !procedure RED_ARROW() 183 | skinparam ArrowColor $RED_50 184 | !endprocedure 185 | 186 | !procedure GREEN_ARROW() 187 | skinparam ArrowColor $GREEN_20 188 | !endprocedure 189 | '' 190 | '' Global Default Values 191 | '' 192 | skinparam defaultFontName "-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif" 193 | skinparam defaultFontSize 12 194 | 'skinparam dpi 125 195 | skinparam shadowing false 196 | skinparam roundcorner 5 197 | skinparam ParticipantPadding 10 198 | skinparam BoxPadding 10 199 | skinparam Padding 4 200 | skinparam ArrowColor $ARROW_COLOR 201 | 202 | 203 | 204 | 205 | 206 | !startsub interface 207 | 208 | skinparam interface { 209 | $primary_scheme() 210 | } 211 | !endsub 212 | 213 | !startsub class 214 | 215 | skinparam class { 216 | 217 | $primary_scheme() 218 | HeaderBackgroundColor $PRIMARY_BG_LIGHT 219 | StereotypeFontColor $PRIMARY_TEXT 220 | 221 | StereotypeFontSize 9 222 | BorderThickness $BORDER_THICKNESS 223 | AttributeFontColor $PRIMARY_TEXT 224 | AttributeFontSize 10 225 | 'AttributeIconSize 8 226 | } 227 | !endsub 228 | 229 | 230 | !startsub activity 231 | skinparam activity { 232 | 233 | $primary_scheme() 234 | 235 | StartColor $START_COLOR 236 | EndColor $END_COLOR 237 | AttributeFontColor $PRIMARY_TEXT 238 | AttributeFontSize 12 239 | 240 | BackgroundColor $PRIMARY_BG 241 | BorderColor $PRIMARY_BORDER 242 | 243 | DiamondBackgroundColor $SECONDARY_BG_LIGHT 244 | DiamondBorderColor $SECONDARY_BORDER 245 | 'DiamondFontColor 246 | 'DiamondFontName 247 | 'DiamondFontSize 248 | 'DiamondFontStyle 249 | 250 | 'FontColor 251 | 'FontName 252 | 'FontSize 253 | 'FontStyle 254 | 255 | } 256 | !endsub 257 | 258 | 259 | !startsub state 260 | skinparam State { 261 | $primary_scheme() 262 | 263 | StartColor $START_COLOR 264 | EndColor $END_COLOR 265 | AttributeFontColor $PRIMARY_TEXT 266 | AttributeFontSize 12 267 | 268 | BackgroundColor $PRIMARY_BG 269 | BorderColor $PRIMARY_BORDER 270 | } 271 | !endsub 272 | 273 | !startsub sequence 274 | skinparam sequence { 275 | $primary_scheme() 276 | 'ArrowThickness 1 277 | 'ArrowColor Red 278 | ActorBorderThickness 1 279 | LifeLineBorderColor $LIFE_LINE_BORDER_COLOR 280 | ParticipantBorderThickness 1 281 | ParticipantBackgroundColor $PRIMARY_BG 282 | ParticipantBorderColor $PRIMARY_BORDER 283 | 'GroupBodyBackgroundColor 284 | GroupBorderThickness 1 285 | GroupBorderColor $PRIMARY_BORDER_LIGHT 286 | GroupBackgroundColor $PRIMARY_BG_LIGHT 287 | } 288 | !endsub 289 | 290 | !startsub actor 291 | 292 | skinparam actor { 293 | $primary_scheme() 294 | BackgroundColor $PRIMARY_BG 295 | BorderColor $PRIMARY_BORDER 296 | Shadowing false 297 | } 298 | !endsub 299 | 300 | 301 | !startsub usecase 302 | 303 | skinparam usecase { 304 | $primary_scheme() 305 | BackgroundColor $PRIMARY_BG_LIGHT 306 | BorderColor $PRIMARY_BORDER 307 | ActorBackgroundColor $PRIMARY_BG 308 | ActorBorderColor $PRIMARY_BORDER 309 | ActorShadowing false 310 | } 311 | 312 | skinparam rectangle<> { 313 | StereotypeFontSize 0 314 | FontColor $PRIMARY_TEXT 315 | BorderColor $PRIMARY_BORDER 316 | BorderStyle dashed 317 | BackgroundColor $PRIMARY_BG_LIGHT 318 | } 319 | !endsub 320 | 321 | -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | ## Plantuml的一个清凉主题 2 | 3 | 4 | 5 | ![流程图](https://user-images.githubusercontent.com/756204/224526364-1387442c-08a7-44e4-8947-b5d2c6f621da.png) 6 | 7 | ![时序图](https://user-images.githubusercontent.com/756204/224526445-278d86a0-45cf-4151-9339-e6d90c0e8468.png) 8 | 9 | ![类图1](https://user-images.githubusercontent.com/756204/224526482-fc07f9b5-9a24-4d9a-9e26-3acde979dba9.png) 10 | 11 | ![类图2](https://user-images.githubusercontent.com/756204/224526491-f9ca1e3e-2563-454f-84da-e21a0c349d89.png) 12 | 13 | 14 | ## 什么是 PlantUml 15 | 16 | [PlantUml](http://plantuml.com/)是一个支持快速绘制的开源项目.其定义了一套完整的语言用于实现 UML 关系图的描述.并基于强大的 graphviz 图形渲染库进行 UML 图的生成.绘制的 UML 图还可以导出为图片,以及通用的矢量 SVG 格式文件. 17 | 18 | 如以下代码,可实现时序图 19 | 20 | ``` 21 | @startuml 22 | Alice -> Bob: Authentication Request 23 | Bob --> Alice: Authentication Response 24 | 25 | Alice -> Bob: Another authentication Request 26 | Alice <-- Bob: another authentication Response 27 | @enduml 28 | ``` 29 | 30 | ![时序图](https://www.plantuml.com/plantuml/img/TSx13O0W38NXErDqWIvWZ057S0F49f9WKIZxIyIJmVFxykVfB3P9EO8omJi2d62Ewm2co4uitbdnaM6Xgr0MLJV0QXxSKVcCd4bzOnohIs3xqOP7nARjdtxZcdYhXsy0) 31 | 32 | 可以使用常用的编辑器 vscode 或者 sublime 或者其他 IDE 工具继承 PlantUml 33 | 34 | 也可以使用在线的版本 35 | [https://www.planttext.com/](https://www.planttext.com/) 36 | 37 | 想了解更多 PlantUml 或者使用方法,可参考官网[http://plantuml.com/zh/](http://plantuml.com/zh/),上面详细的中英文说明 38 | 39 | 40 | ## 原C4模型主题不再支持,请使用官方标准库的示例 41 | -------------------------------------------------------------------------------- /samples/activity-new-sample.puml: -------------------------------------------------------------------------------- 1 | @startuml activity-new-sample 2 | 3 | !theme xuanye from ../ 4 | 5 | GREEN_ARROW() 6 | 7 | start 8 | :ClickServlet.handleRequest(); 9 | :new page; 10 | if (Page.onSecurityCheck) then (true) 11 | :Page.onInit(); 12 | if (isForward?) then (no) 13 | :Process controls; 14 | if (continue processing?) then (no) 15 | stop 16 | endif 17 | if (isPost?) then (yes) 18 | :Page.onPost();< 19 | else (no) 20 | :Page.onGet(); 21 | endif 22 | :Page.onRender(); 23 | endif 24 | else (false) 25 | endif 26 | if (do redirect?) then (yes) 27 | :redirect process; 28 | else 29 | if (do forward?) then (yes) 30 | :Forward request; 31 | else (no) 32 | :Render page template; 33 | endif 34 | endif 35 | 36 | stop 37 | @enduml -------------------------------------------------------------------------------- /samples/class-sample.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | 4 | !theme 4class from ../ 5 | 6 | GRAY_ARROW() 7 | 8 | 9 | title LogFramework - Class Diagram 10 | 11 | 12 | class LoggerManager { 13 | -Dictionary _loggers 14 | +Logger getLogger(string name) 15 | } 16 | 17 | class Logger { 18 | -List _handlers 19 | +void addHandler(LoggerHandler handler) 20 | +void removeHandler(string name) 21 | +void LogIt(LogMessage msg) 22 | } 23 | 24 | class LoggerHandler{ 25 | -ILogFormatter _logFormater 26 | -ILogWriter _logWriter 27 | -ILogFilter _logFilter 28 | 29 | +void LogIt(LogMessage msg) 30 | } 31 | 32 | interface ILogFormatter{ 33 | +string Format(LogMessage message) 34 | } 35 | interface ILogWriter{ 36 | +void Write(string formattedMsg) 37 | } 38 | 39 | interface ILogFilter{ 40 | +bool Filter(LogMessage message) 41 | } 42 | 43 | 44 | class LevelFilter 45 | 46 | class FileWriter 47 | class ConsoleWriter 48 | 49 | class XmlFormatter 50 | class TextFormatter 51 | class JsonFormatter 52 | 53 | 54 | class LogMessage{ 55 | +string LogId 56 | +string ThreadId 57 | +string Mesasge 58 | +LogLevel Level 59 | } 60 | enum LogLevel{ 61 | +TRACE 62 | +DEBUG 63 | +INFO 64 | +WARN 65 | +ERROR 66 | } 67 | 68 | 69 | Logger <-right- LoggerManager: use 70 | Logger o-down- LoggerHandler: aggregation 71 | ILogFormatter <-left- LoggerHandler: use 72 | ILogWriter <-up- LoggerHandler: use 73 | ILogFilter <-up- LoggerHandler: use 74 | ILogFilter <|.down. LevelFilter: realize 75 | ILogFormatter <|.right. XmlFormatter: realize 76 | ILogFormatter <|.down. TextFormatter: realize 77 | ILogFormatter <|.down. JsonFormatter: realize 78 | ILogWriter <|.down. FileWriter: realize 79 | ILogWriter <|.down. ConsoleWriter: realize 80 | LogMessage <-down- ILogFormatter: use 81 | LogLevel <-left- LogMessage: use 82 | @enduml 83 | -------------------------------------------------------------------------------- /samples/element.puml: -------------------------------------------------------------------------------- 1 | @startuml element 2 | 3 | 4 | !theme xuanye from ../ 5 | 6 | actor actor 7 | agent agent 8 | artifact artifact 9 | boundary boundary 10 | card card 11 | cloud cloud 12 | component component 13 | control control 14 | database database 15 | entity entity 16 | file file 17 | folder folder 18 | frame frame 19 | interface interface 20 | node node 21 | package package 22 | queue queue 23 | stack stack 24 | rectangle rectangle 25 | storage storage 26 | usecase usecase 27 | @enduml -------------------------------------------------------------------------------- /samples/sequence-group.puml: -------------------------------------------------------------------------------- 1 | @startuml sequence-group 2 | 3 | !theme xuanye from ../ 4 | 5 | Alice -> Bob: Authentication Request12 6 | 7 | alt successful case 8 | 9 | Bob -> Alice: Authentication Accepted2 10 | 11 | else some kind of failure 12 | 13 | Bob -> Alice: Authentication Failure 14 | group My own label 15 | Alice -> Log : Log attack start 16 | loop 1000 times 17 | Alice -> Bob: DNS Attack 18 | end 19 | Alice -> Log : Log attack end 20 | end 21 | 22 | else Another type of failure 23 | 24 | Bob -> Alice: Please repeat 25 | 26 | end 27 | @enduml -------------------------------------------------------------------------------- /samples/sequence-sample.puml: -------------------------------------------------------------------------------- 1 | @startuml sequence-sample 2 | 3 | !theme xuanye from ../ 4 | 5 | title Sample Sequence 6 | 7 | actor User 8 | participant "First Class" as A 9 | participant "Second Class" as B 10 | participant "Last Class" as C 11 | 12 | User -> A: DoWork 13 | activate A 14 | note over A: this is a first note 15 | A -> B: Create Request 16 | activate B 17 | 18 | B -> C: DoWork 19 | activate C 20 | C --> B: WorkDone 21 | destroy C 22 | 23 | B --> A: Request Created 24 | deactivate B 25 | 26 | A --> User: Done 27 | deactivate A 28 | 29 | 30 | @enduml 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /samples/state-sample.puml: -------------------------------------------------------------------------------- 1 | @startuml state-sample 2 | 3 | !theme xuanye from ../ 4 | 5 | title HTTP Request Parsing States 6 | 7 | [*] --> RequestLine 8 | 9 | RequestLine : Parse HTTP 10 | RequestLine : request line 11 | RequestLine --> Headers : Ok 12 | RequestLine --> Error : Failure 13 | 14 | Headers : Parse HTTP 15 | Headers : headers 16 | Headers --> Host : Ok 17 | Headers --> Error : Failure 18 | 19 | Host : Check host 20 | Host : header is present 21 | Host --> Length : Not chunked 22 | Host --> Chunked : Chunked 23 | Host --> Error : Failure 24 | 25 | Length : Check if required, 26 | Length : valid & size 27 | Length --> Error : Failure 28 | Length --> Error : Entity Too Large 29 | Length --> [*] : Ok 30 | 31 | Chunked : Parse HTTP 32 | Chunked : chunk header 33 | Chunked --> Error : Failure 34 | Chunked --> [*] : Ok 35 | 36 | @enduml -------------------------------------------------------------------------------- /samples/usecase-sample.puml: -------------------------------------------------------------------------------- 1 | @startuml usecase-sample 2 | !theme xuanye from ../ 3 | 4 | GRAY_ARROW() 5 | 6 | actor customer 7 | actor clerk 8 | 9 | rectangle "==买单" <>{ 10 | (checkout) 11 | (payment) 12 | (help) 13 | } 14 | 15 | customer -right- (checkout) 16 | (checkout) .down.> (payment) : include 17 | (help) .down.> (checkout) : extends 18 | (checkout) -right- clerk 19 | 20 | @enduml 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /skinparams.md: -------------------------------------------------------------------------------- 1 | ;skinparameter 2 | ;525 3 | ActivityBackgroundColor 4 | ActivityBarColor 5 | ActivityBorderColor 6 | ActivityBorderThickness 7 | ActivityDiamondBackgroundColor 8 | ActivityDiamondBorderColor 9 | ActivityDiamondFontColor 10 | ActivityDiamondFontName 11 | ActivityDiamondFontSize 12 | ActivityDiamondFontStyle 13 | ActivityEndColor 14 | ActivityFontColor 15 | ActivityFontName 16 | ActivityFontSize 17 | ActivityFontStyle 18 | ActivityStartColor 19 | ActorBackgroundColor 20 | ActorBorderColor 21 | ActorFontColor 22 | ActorFontName 23 | ActorFontSize 24 | ActorFontStyle 25 | ActorStereotypeFontColor 26 | ActorStereotypeFontName 27 | ActorStereotypeFontSize 28 | ActorStereotypeFontStyle 29 | AgentBackgroundColor 30 | AgentBorderColor 31 | AgentBorderThickness 32 | AgentFontColor 33 | AgentFontName 34 | AgentFontSize 35 | AgentFontStyle 36 | AgentStereotypeFontColor 37 | AgentStereotypeFontName 38 | AgentStereotypeFontSize 39 | AgentStereotypeFontStyle 40 | ArrowColor 41 | ArrowFontColor 42 | ArrowFontName 43 | ArrowFontSize 44 | ArrowFontStyle 45 | ArrowLollipopColor 46 | ArrowMessageAlignment 47 | ArrowThickness 48 | ArtifactBackgroundColor 49 | ArtifactBorderColor 50 | ArtifactFontColor 51 | ArtifactFontName 52 | ArtifactFontSize 53 | ArtifactFontStyle 54 | ArtifactStereotypeFontColor 55 | ArtifactStereotypeFontName 56 | ArtifactStereotypeFontSize 57 | ArtifactStereotypeFontStyle 58 | BackgroundColor 59 | BiddableBackgroundColor 60 | BiddableBorderColor 61 | BoundaryBackgroundColor 62 | BoundaryBorderColor 63 | BoundaryFontColor 64 | BoundaryFontName 65 | BoundaryFontSize 66 | BoundaryFontStyle 67 | BoundaryStereotypeFontColor 68 | BoundaryStereotypeFontName 69 | BoundaryStereotypeFontSize 70 | BoundaryStereotypeFontStyle 71 | BoxPadding 72 | CaptionFontColor 73 | CaptionFontName 74 | CaptionFontSize 75 | CaptionFontStyle 76 | CardBackgroundColor 77 | CardBorderColor 78 | CardBorderThickness 79 | CardFontColor 80 | CardFontName 81 | CardFontSize 82 | CardFontStyle 83 | CardStereotypeFontColor 84 | CardStereotypeFontName 85 | CardStereotypeFontSize 86 | CardStereotypeFontStyle 87 | CircledCharacterFontColor 88 | CircledCharacterFontName 89 | CircledCharacterFontSize 90 | CircledCharacterFontStyle 91 | CircledCharacterRadius 92 | ClassAttributeFontColor 93 | ClassAttributeFontName 94 | ClassAttributeFontSize 95 | ClassAttributeFontStyle 96 | ClassAttributeIconSize 97 | ClassBackgroundColor 98 | ClassBorderColor 99 | ClassBorderThickness 100 | ClassFontColor 101 | ClassFontName 102 | ClassFontSize 103 | ClassFontStyle 104 | ClassHeaderBackgroundColor 105 | ClassStereotypeFontColor 106 | ClassStereotypeFontName 107 | ClassStereotypeFontSize 108 | ClassStereotypeFontStyle 109 | CloudBackgroundColor 110 | CloudBorderColor 111 | CloudFontColor 112 | CloudFontName 113 | CloudFontSize 114 | CloudFontStyle 115 | CloudStereotypeFontColor 116 | CloudStereotypeFontName 117 | CloudStereotypeFontSize 118 | CloudStereotypeFontStyle 119 | CollectionsBackgroundColor 120 | CollectionsBorderColor 121 | ColorArrowSeparationSpace 122 | ComponentBackgroundColor 123 | ComponentBorderColor 124 | ComponentBorderThickness 125 | ComponentFontColor 126 | ComponentFontName 127 | ComponentFontSize 128 | ComponentFontStyle 129 | ComponentStereotypeFontColor 130 | ComponentStereotypeFontName 131 | ComponentStereotypeFontSize 132 | ComponentStereotypeFontStyle 133 | ComponentStyle 134 | ConditionStyle 135 | ControlBackgroundColor 136 | ControlBorderColor 137 | ControlFontColor 138 | ControlFontName 139 | ControlFontSize 140 | ControlFontStyle 141 | ControlStereotypeFontColor 142 | ControlStereotypeFontName 143 | ControlStereotypeFontSize 144 | ControlStereotypeFontStyle 145 | DatabaseBackgroundColor 146 | DatabaseBorderColor 147 | DatabaseFontColor 148 | DatabaseFontName 149 | DatabaseFontSize 150 | DatabaseFontStyle 151 | DatabaseStereotypeFontColor 152 | DatabaseStereotypeFontName 153 | DatabaseStereotypeFontSize 154 | DatabaseStereotypeFontStyle 155 | DefaultFontColor 156 | DefaultFontName 157 | DefaultFontSize 158 | DefaultFontStyle 159 | DefaultMonospacedFontName 160 | DefaultTextAlignment 161 | DesignedBackgroundColor 162 | DesignedBorderColor 163 | DesignedDomainBorderThickness 164 | DesignedDomainFontColor 165 | DesignedDomainFontName 166 | DesignedDomainFontSize 167 | DesignedDomainFontStyle 168 | DesignedDomainStereotypeFontColor 169 | DesignedDomainStereotypeFontName 170 | DesignedDomainStereotypeFontSize 171 | DesignedDomainStereotypeFontStyle 172 | DiagramBorderColor 173 | DiagramBorderThickness 174 | DomainBackgroundColor 175 | DomainBorderColor 176 | DomainBorderThickness 177 | DomainFontColor 178 | DomainFontName 179 | DomainFontSize 180 | DomainFontStyle 181 | DomainStereotypeFontColor 182 | DomainStereotypeFontName 183 | DomainStereotypeFontSize 184 | DomainStereotypeFontStyle 185 | Dpi 186 | EntityBackgroundColor 187 | EntityBorderColor 188 | EntityFontColor 189 | EntityFontName 190 | EntityFontSize 191 | EntityFontStyle 192 | EntityStereotypeFontColor 193 | EntityStereotypeFontName 194 | EntityStereotypeFontSize 195 | EntityStereotypeFontStyle 196 | EnumBackgroundColor 197 | FileBackgroundColor 198 | FileBorderColor 199 | FileFontColor 200 | FileFontName 201 | FileFontSize 202 | FileFontStyle 203 | FileStereotypeFontColor 204 | FileStereotypeFontName 205 | FileStereotypeFontSize 206 | FileStereotypeFontStyle 207 | FixCircleLabelOverlapping 208 | FolderBackgroundColor 209 | FolderBorderColor 210 | FolderFontColor 211 | FolderFontName 212 | FolderFontSize 213 | FolderFontStyle 214 | FolderStereotypeFontColor 215 | FolderStereotypeFontName 216 | FolderStereotypeFontSize 217 | FolderStereotypeFontStyle 218 | FooterFontColor 219 | FooterFontName 220 | FooterFontSize 221 | FooterFontStyle 222 | FrameBackgroundColor 223 | FrameBorderColor 224 | FrameFontColor 225 | FrameFontName 226 | FrameFontSize 227 | FrameFontStyle 228 | FrameStereotypeFontColor 229 | FrameStereotypeFontName 230 | FrameStereotypeFontSize 231 | FrameStereotypeFontStyle 232 | GenericDisplay 233 | Guillemet 234 | Handwritten 235 | HeaderFontColor 236 | HeaderFontName 237 | HeaderFontSize 238 | HeaderFontStyle 239 | HyperlinkColor 240 | HyperlinkUnderline 241 | IconIEMandatoryColor 242 | IconPackageBackgroundColor 243 | IconPackageColor 244 | IconPrivateBackgroundColor 245 | IconPrivateColor 246 | IconProtectedBackgroundColor 247 | IconProtectedColor 248 | IconPublicBackgroundColor 249 | IconPublicColor 250 | InterfaceBackgroundColor 251 | InterfaceBorderColor 252 | InterfaceFontColor 253 | InterfaceFontName 254 | InterfaceFontSize 255 | InterfaceFontStyle 256 | InterfaceStereotypeFontColor 257 | InterfaceStereotypeFontName 258 | InterfaceStereotypeFontSize 259 | InterfaceStereotypeFontStyle 260 | LegendBackgroundColor 261 | LegendBorderColor 262 | LegendBorderThickness 263 | LegendFontColor 264 | LegendFontName 265 | LegendFontSize 266 | LegendFontStyle 267 | LexicalBackgroundColor 268 | LexicalBorderColor 269 | LifelineStrategy 270 | Linetype 271 | MachineBackgroundColor 272 | MachineBorderColor 273 | MachineBorderThickness 274 | MachineFontColor 275 | MachineFontName 276 | MachineFontSize 277 | MachineFontStyle 278 | MachineStereotypeFontColor 279 | MachineStereotypeFontName 280 | MachineStereotypeFontSize 281 | MachineStereotypeFontStyle 282 | MaxAsciiMessageLength 283 | MaxMessageSize 284 | MinClassWidth 285 | Monochrome 286 | NodeBackgroundColor 287 | NodeBorderColor 288 | NodeFontColor 289 | NodeFontName 290 | NodeFontSize 291 | NodeFontStyle 292 | NodeStereotypeFontColor 293 | NodeStereotypeFontName 294 | NodeStereotypeFontSize 295 | NodeStereotypeFontStyle 296 | Nodesep 297 | NoteBackgroundColor 298 | NoteBorderColor 299 | NoteBorderThickness 300 | NoteFontColor 301 | NoteFontName 302 | NoteFontSize 303 | NoteFontStyle 304 | NoteShadowing 305 | NoteTextAlignment 306 | 307 | ObjectAttributeFontColor 308 | ObjectAttributeFontName 309 | ObjectAttributeFontSize 310 | ObjectAttributeFontStyle 311 | ObjectBackgroundColor 312 | ObjectBorderColor 313 | ObjectBorderThickness 314 | ObjectFontColor 315 | ObjectFontName 316 | ObjectFontSize 317 | ObjectFontStyle 318 | ObjectStereotypeFontColor 319 | ObjectStereotypeFontName 320 | ObjectStereotypeFontSize 321 | ObjectStereotypeFontStyle 322 | PackageBackgroundColor 323 | PackageBorderColor 324 | PackageBorderThickness 325 | PackageFontColor 326 | PackageFontName 327 | PackageFontSize 328 | PackageFontStyle 329 | PackageStereotypeFontColor 330 | PackageStereotypeFontName 331 | PackageStereotypeFontSize 332 | PackageStereotypeFontStyle 333 | PackageStyle 334 | PackageTitleAlignment 335 | Padding 336 | PageBorderColor 337 | PageExternalColor 338 | PageMargin 339 | ParticipantBackgroundColor 340 | ParticipantBorderColor 341 | ParticipantFontColor 342 | ParticipantFontName 343 | ParticipantFontSize 344 | ParticipantFontStyle 345 | ParticipantPadding 346 | ParticipantStereotypeFontColor 347 | ParticipantStereotypeFontName 348 | ParticipantStereotypeFontSize 349 | ParticipantStereotypeFontStyle 350 | PartitionBackgroundColor 351 | PartitionBorderColor 352 | PartitionBorderThickness 353 | PartitionFontColor 354 | PartitionFontName 355 | PartitionFontSize 356 | PartitionFontStyle 357 | PathHoverColor 358 | QueueBackgroundColor 359 | QueueBorderColor 360 | QueueFontColor 361 | QueueFontName 362 | QueueFontSize 363 | QueueFontStyle 364 | QueueStereotypeFontColor 365 | QueueStereotypeFontName 366 | QueueStereotypeFontSize 367 | QueueStereotypeFontStyle 368 | Ranksep 369 | RectangleBackgroundColor 370 | RectangleBorderColor 371 | RectangleBorderThickness 372 | RectangleFontColor 373 | RectangleFontName 374 | RectangleFontSize 375 | RectangleFontStyle 376 | RectangleStereotypeFontColor 377 | RectangleStereotypeFontName 378 | RectangleStereotypeFontSize 379 | RectangleStereotypeFontStyle 380 | RequirementBackgroundColor 381 | RequirementBorderColor 382 | RequirementBorderThickness 383 | RequirementFontColor 384 | RequirementFontName 385 | RequirementFontSize 386 | RequirementFontStyle 387 | RequirementStereotypeFontColor 388 | RequirementStereotypeFontName 389 | RequirementStereotypeFontSize 390 | RequirementStereotypeFontStyle 391 | ResponseMessageBelowArrow 392 | RoundCorner 393 | SameClassWidth 394 | SequenceActorBorderThickness 395 | SequenceArrowThickness 396 | SequenceBoxBackgroundColor 397 | SequenceBoxBorderColor 398 | SequenceBoxFontColor 399 | SequenceBoxFontName 400 | SequenceBoxFontSize 401 | SequenceBoxFontStyle 402 | SequenceDelayFontColor 403 | SequenceDelayFontName 404 | SequenceDelayFontSize 405 | SequenceDelayFontStyle 406 | SequenceDividerBackgroundColor 407 | SequenceDividerBorderColor 408 | SequenceDividerBorderThickness 409 | SequenceDividerFontColor 410 | SequenceDividerFontName 411 | SequenceDividerFontSize 412 | SequenceDividerFontStyle 413 | SequenceGroupBackgroundColor 414 | SequenceGroupBodyBackgroundColor 415 | SequenceGroupBorderColor 416 | SequenceGroupBorderThickness 417 | SequenceGroupFontColor 418 | SequenceGroupFontName 419 | SequenceGroupFontSize 420 | SequenceGroupFontStyle 421 | SequenceGroupHeaderFontColor 422 | SequenceGroupHeaderFontName 423 | SequenceGroupHeaderFontSize 424 | SequenceGroupHeaderFontStyle 425 | SequenceLifeLineBackgroundColor 426 | SequenceLifeLineBorderColor 427 | SequenceLifeLineBorderThickness 428 | SequenceMessageAlignment 429 | SequenceMessageTextAlignment 430 | SequenceNewpageSeparatorColor 431 | SequenceParticipant 432 | SequenceParticipantBorderThickness 433 | SequenceReferenceAlignment 434 | SequenceReferenceBackgroundColor 435 | SequenceReferenceBorderColor 436 | SequenceReferenceBorderThickness 437 | SequenceReferenceFontColor 438 | SequenceReferenceFontName 439 | SequenceReferenceFontSize 440 | SequenceReferenceFontStyle 441 | SequenceReferenceHeaderBackgroundColor 442 | SequenceStereotypeFontColor 443 | SequenceStereotypeFontName 444 | SequenceStereotypeFontSize 445 | SequenceStereotypeFontStyle 446 | SequenceTitleFontColor 447 | SequenceTitleFontName 448 | SequenceTitleFontSize 449 | SequenceTitleFontStyle 450 | Shadowing 451 | StackBackgroundColor 452 | StackBorderColor 453 | StackFontColor 454 | StackFontName 455 | StackFontSize 456 | StackFontStyle 457 | StackStereotypeFontColor 458 | StackStereotypeFontName 459 | StackStereotypeFontSize 460 | StackStereotypeFontStyle 461 | 462 | StereotypeABackgroundColor 463 | StereotypeABorderColor 464 | StereotypeCBackgroundColor 465 | StereotypeCBorderColor 466 | StereotypeEBackgroundColor 467 | StereotypeEBorderColor 468 | StereotypeIBackgroundColor 469 | StereotypeIBorderColor 470 | StereotypeNBackgroundColor 471 | StereotypeNBorderColor 472 | StereotypePosition 473 | StorageBackgroundColor 474 | StorageBorderColor 475 | StorageFontColor 476 | StorageFontName 477 | StorageFontSize 478 | StorageFontStyle 479 | StorageStereotypeFontColor 480 | StorageStereotypeFontName 481 | StorageStereotypeFontSize 482 | StorageStereotypeFontStyle 483 | Style 484 | SvglinkTarget 485 | SwimlaneBorderColor 486 | SwimlaneBorderThickness 487 | SwimlaneTitleFontColor 488 | SwimlaneTitleFontName 489 | SwimlaneTitleFontSize 490 | SwimlaneTitleFontStyle 491 | SwimlaneWidth 492 | SwimlaneWrapTitleWidth 493 | TabSize 494 | TimingFontColor 495 | TimingFontName 496 | TimingFontSize 497 | TimingFontStyle 498 | TitleBackgroundColor 499 | TitleBorderColor 500 | TitleBorderRoundCorner 501 | TitleBorderThickness 502 | TitleFontColor 503 | TitleFontName 504 | TitleFontSize 505 | TitleFontStyle 506 | UsecaseBackgroundColor 507 | UsecaseBorderColor 508 | UsecaseBorderThickness 509 | UsecaseFontColor 510 | UsecaseFontName 511 | UsecaseFontSize 512 | UsecaseFontStyle 513 | UsecaseStereotypeFontColor 514 | UsecaseStereotypeFontName 515 | UsecaseStereotypeFontSize 516 | UsecaseStereotypeFontStyle 517 | WrapWidth --------------------------------------------------------------------------------