@shijiu/jsview-vue 1.9.731 → 1.9.759

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (217) hide show
  1. package/index.d.ts +4 -1
  2. package/index.js +4 -1
  3. package/package.json +5 -16
  4. package/samples/AnimPicture/App.vue +0 -207
  5. package/samples/AnimPicture/assets/animated_webp.webp +0 -0
  6. package/samples/AnimPicture/assets/ball_3.webp +0 -0
  7. package/samples/AnimPicture/assets/girl_run.gif +0 -0
  8. package/samples/AnimPicture/assets/quan.webp +0 -0
  9. package/samples/Basic/App.vue +0 -134
  10. package/samples/Basic/assets/border.png +0 -0
  11. package/samples/Basic/assets/border2.png +0 -0
  12. package/samples/Basic/assets/icon.png +0 -0
  13. package/samples/Basic/assets/test.jpg +0 -0
  14. package/samples/Basic/components/ContentBlock.vue +0 -38
  15. package/samples/Basic/components/FontStyle.css +0 -16
  16. package/samples/Basic/components/anim/AnimGroup.vue +0 -66
  17. package/samples/Basic/components/anim/AnimKeyframeBasic.vue +0 -119
  18. package/samples/Basic/components/anim/AnimKeyframeComposite.vue +0 -52
  19. package/samples/Basic/components/anim/AnimTransition.vue +0 -157
  20. package/samples/Basic/components/div/DivBackground.vue +0 -44
  21. package/samples/Basic/components/div/DivClip.vue +0 -159
  22. package/samples/Basic/components/div/DivCssScoped.vue +0 -20
  23. package/samples/Basic/components/div/DivCssVar.vue +0 -53
  24. package/samples/Basic/components/div/DivGroup1.vue +0 -47
  25. package/samples/Basic/components/div/DivGroup2.vue +0 -65
  26. package/samples/Basic/components/div/DivLayout.vue +0 -70
  27. package/samples/Basic/components/div/DivRadius.vue +0 -65
  28. package/samples/Basic/components/div/DivTransform.vue +0 -32
  29. package/samples/Basic/components/img/ImageGroup.vue +0 -31
  30. package/samples/Basic/components/img/ImgLayout.vue +0 -41
  31. package/samples/Basic/components/panel/Panel1.vue +0 -55
  32. package/samples/Basic/components/panel/Panel2.vue +0 -31
  33. package/samples/Basic/components/panel/TitleBar.vue +0 -29
  34. package/samples/Basic/components/text/TextAlign.vue +0 -66
  35. package/samples/Basic/components/text/TextEmoji.vue +0 -26
  36. package/samples/Basic/components/text/TextFontStyle.vue +0 -89
  37. package/samples/Basic/components/text/TextGroup1.vue +0 -49
  38. package/samples/Basic/components/text/TextGroup2.vue +0 -28
  39. package/samples/Basic/components/text/TextOverflow.vue +0 -110
  40. package/samples/BasicFocusControl/App.vue +0 -104
  41. package/samples/BasicFocusControl/components/BaseBlock.vue +0 -50
  42. package/samples/BasicFocusControl/components/MainArea.vue +0 -83
  43. package/samples/BasicFocusControl/components/MainAreaLeftBlock.vue +0 -17
  44. package/samples/BasicFocusControl/components/MainAreaRightBlock.vue +0 -27
  45. package/samples/BasicFocusControl/components/SideBar.vue +0 -58
  46. package/samples/BasicFocusControl/components/SideBarBlock.vue +0 -27
  47. package/samples/Collision/App.vue +0 -452
  48. package/samples/ColorSpace/App.vue +0 -126
  49. package/samples/DemoHomepage/App.vue +0 -27
  50. package/samples/DemoHomepage/components/BodyFrame.vue +0 -95
  51. package/samples/DemoHomepage/components/Dialog.vue +0 -94
  52. package/samples/DemoHomepage/components/Item.vue +0 -77
  53. package/samples/DemoHomepage/components/TabFrame.vue +0 -85
  54. package/samples/DemoHomepage/router.js +0 -196
  55. package/samples/DemoHomepage/views/Homepage.vue +0 -195
  56. package/samples/FilterDemo/AnimatePic.vue +0 -58
  57. package/samples/FilterDemo/App.vue +0 -159
  58. package/samples/FilterDemo/VideoLayer.vue +0 -62
  59. package/samples/FlipCard/App.vue +0 -71
  60. package/samples/FlipCard/FlipCard.vue +0 -118
  61. package/samples/FlipCard/assets/blue_egg.png +0 -0
  62. package/samples/FlipCard/assets/red_egg.png +0 -0
  63. package/samples/FlipCard/data.js +0 -13
  64. package/samples/GridDemo/App.vue +0 -215
  65. package/samples/GridDemo/ButtonBlock.vue +0 -112
  66. package/samples/GridDemo/FocusItem.vue +0 -37
  67. package/samples/GridDemo/Item.vue +0 -93
  68. package/samples/HashHistory/App.vue +0 -115
  69. package/samples/HashHistory/components/HorizontalButtonList.vue +0 -91
  70. package/samples/HashHistory/components/Item.vue +0 -60
  71. package/samples/HashHistory/router.js +0 -41
  72. package/samples/HashHistory/views/MainPage.vue +0 -57
  73. package/samples/HashHistory/views/SubPage.vue +0 -66
  74. package/samples/ImpactStop/App.vue +0 -435
  75. package/samples/Input/App.vue +0 -164
  76. package/samples/Input/FullKeyboard.vue +0 -87
  77. package/samples/Input/InputPanel.vue +0 -131
  78. package/samples/Input/KeyboardItem.vue +0 -58
  79. package/samples/LongImage/App.vue +0 -80
  80. package/samples/LongImage/Button.vue +0 -58
  81. package/samples/LongImage/ButtonItem.vue +0 -44
  82. package/samples/LongImage/LongImageScroll.vue +0 -92
  83. package/samples/LongImage/Scroll.vue +0 -14
  84. package/samples/LongImage/assets/1280x7200.jpg +0 -0
  85. package/samples/LongText/App.vue +0 -96
  86. package/samples/LongText/Button.vue +0 -51
  87. package/samples/LongText/ButtonItem.vue +0 -44
  88. package/samples/LongText/LongTextScroll.vue +0 -192
  89. package/samples/LongText/Scroll.vue +0 -14
  90. package/samples/Marquee/App.vue +0 -247
  91. package/samples/Marquee/longText.js +0 -14
  92. package/samples/MaskClip/App.vue +0 -122
  93. package/samples/MaskClip/images/mask-025/config.json +0 -29
  94. package/samples/MaskClip/images/mask-025/res/1.png +0 -0
  95. package/samples/MaskClip/images/mask-025/res/2.png +0 -0
  96. package/samples/MaskClip/images/mask-025/res/3.png +0 -0
  97. package/samples/MaskClip/images/mask-025/res/4.png +0 -0
  98. package/samples/MaskClip/images/mask-025/res/icon.png +0 -0
  99. package/samples/MaskClip/images/mask-025/res/stroke.png +0 -0
  100. package/samples/MaskClip/images/php.jpg +0 -0
  101. package/samples/MetroWidgetDemos/Advanced/App.vue +0 -46
  102. package/samples/MetroWidgetDemos/Advanced/ButtonItem.vue +0 -90
  103. package/samples/MetroWidgetDemos/Advanced/Buttons.vue +0 -70
  104. package/samples/MetroWidgetDemos/Advanced/Mixed.vue +0 -77
  105. package/samples/MetroWidgetDemos/Advanced/widgets/Item.vue +0 -83
  106. package/samples/MetroWidgetDemos/Advanced/widgets/WidgetItem.vue +0 -89
  107. package/samples/MetroWidgetDemos/Advanced/widgets/Widgets.vue +0 -116
  108. package/samples/MetroWidgetDemos/Advanced/widgets/focus1.png +0 -0
  109. package/samples/MetroWidgetDemos/Item.vue +0 -85
  110. package/samples/MetroWidgetDemos/PerformanceTest/App.vue +0 -210
  111. package/samples/MetroWidgetDemos/PerformanceTest/Item.vue +0 -90
  112. package/samples/MetroWidgetDemos/PerformanceTest/assets/bg.jpg +0 -0
  113. package/samples/MetroWidgetDemos/PerformanceTest/assets/coupon_content.png +0 -0
  114. package/samples/MetroWidgetDemos/PerformanceTest/assets/coupon_left.png +0 -0
  115. package/samples/MetroWidgetDemos/PerformanceTest/assets/coupon_mid.png +0 -0
  116. package/samples/MetroWidgetDemos/PerformanceTest/assets/coupon_right.png +0 -0
  117. package/samples/MetroWidgetDemos/PerformanceTest/assets/focus_border.png +0 -0
  118. package/samples/MetroWidgetDemos/PerformanceTest/assets/holder_logo.png +0 -0
  119. package/samples/MetroWidgetDemos/PerformanceTest/assets/jrbm.png +0 -0
  120. package/samples/MetroWidgetDemos/PerformanceTest/assets/line_left.png +0 -0
  121. package/samples/MetroWidgetDemos/PerformanceTest/assets/line_mid.png +0 -0
  122. package/samples/MetroWidgetDemos/PerformanceTest/assets/line_right.png +0 -0
  123. package/samples/MetroWidgetDemos/PerformanceTest/assets/loading.png +0 -0
  124. package/samples/MetroWidgetDemos/PerformanceTest/assets/logo.png +0 -0
  125. package/samples/MetroWidgetDemos/PerformanceTest/assets/mcjx.png +0 -0
  126. package/samples/MetroWidgetDemos/PerformanceTest/assets/tao.png +0 -0
  127. package/samples/MetroWidgetDemos/PerformanceTest/assets/tmall.png +0 -0
  128. package/samples/MetroWidgetDemos/PerformanceTest/border.png +0 -0
  129. package/samples/MetroWidgetDemos/PerformanceTest/components/ContentItem.vue +0 -386
  130. package/samples/MetroWidgetDemos/PerformanceTest/components/MyTab.vue +0 -129
  131. package/samples/MetroWidgetDemos/PerformanceTest/data.js +0 -45
  132. package/samples/MetroWidgetDemos/PingPong/App.vue +0 -135
  133. package/samples/MetroWidgetDemos/PingPong/AppPage.vue +0 -73
  134. package/samples/MetroWidgetDemos/PingPong/AppTab.vue +0 -62
  135. package/samples/MetroWidgetDemos/PingPong/TabItem.vue +0 -84
  136. package/samples/MetroWidgetDemos/PingPong/ViewSwiper.vue +0 -214
  137. package/samples/MetroWidgetDemos/Simple/AbsoluteTemplate.vue +0 -75
  138. package/samples/MetroWidgetDemos/Simple/App.vue +0 -45
  139. package/samples/MetroWidgetDemos/Simple/RelativeTemplate.vue +0 -111
  140. package/samples/MetroWidgetDemos/WidgetItem.vue +0 -89
  141. package/samples/MetroWidgetDemos/data.js +0 -205
  142. package/samples/NinePatchDemo/App.vue +0 -145
  143. package/samples/NinePatchDemo/Item.vue +0 -69
  144. package/samples/NinePatchDemo/assets/border.png +0 -0
  145. package/samples/Preload/App.vue +0 -135
  146. package/samples/Preload/Item.vue +0 -32
  147. package/samples/Preload/data.js +0 -23
  148. package/samples/Preload/images/awesomeface.png +0 -0
  149. package/samples/Preload/images/cat.jpg +0 -0
  150. package/samples/Preload/images/rank.png +0 -0
  151. package/samples/Preload/images/rank_focus.png +0 -0
  152. package/samples/Preload/images/rule.png +0 -0
  153. package/samples/Preload/images/rule_focus.png +0 -0
  154. package/samples/Preload/images/start.png +0 -0
  155. package/samples/Preload/images/start_focus.png +0 -0
  156. package/samples/QrcodeDemo/App.vue +0 -68
  157. package/samples/ScaleDownNeon/App.vue +0 -107
  158. package/samples/SoundPool/App.vue +0 -134
  159. package/samples/SoundPool/bgmusic.mp3 +0 -0
  160. package/samples/SoundPool/coin.mp3 +0 -0
  161. package/samples/SoundPool/jump.mp3 +0 -0
  162. package/samples/SoundPool/lose.mp3 +0 -0
  163. package/samples/SoundPool/run.mp3 +0 -0
  164. package/samples/SprayView/App.vue +0 -272
  165. package/samples/SprayView/assets/snow.png +0 -0
  166. package/samples/SpriteImage/App.vue +0 -173
  167. package/samples/SpriteImage/images/cat_run.png +0 -0
  168. package/samples/SpriteImage/images/egg_break.json +0 -116
  169. package/samples/SpriteImage/images/egg_break.png +0 -0
  170. package/samples/SpriteImage/images/sprite.png +0 -0
  171. package/samples/TextBox/App.vue +0 -91
  172. package/samples/TextBox/RenderCenter.vue +0 -133
  173. package/samples/TextBox/RenderLeft.vue +0 -138
  174. package/samples/TextBox/RenderOneLine.vue +0 -101
  175. package/samples/TextBox/RenderRight.vue +0 -131
  176. package/samples/TextShadowDemo/App.vue +0 -91
  177. package/samples/TextureAnimation/App.vue +0 -336
  178. package/samples/TextureAnimation/App2.vue +0 -111
  179. package/samples/TextureAnimation/assets/blackWhiteGrid.png +0 -0
  180. package/samples/TextureAnimation/assets/light.png +0 -0
  181. package/samples/TextureAnimation/assets/light2.png +0 -0
  182. package/samples/TextureAnimation/assets/mask.png +0 -0
  183. package/samples/TextureAnimation/assets/php.jpg +0 -0
  184. package/samples/TextureAnimation/assets/php2.png +0 -0
  185. package/samples/TextureAnimation/assets/swipLight.png +0 -0
  186. package/samples/TextureSize/App.vue +0 -132
  187. package/samples/TextureSize/bmpDemo.bmp +0 -0
  188. package/samples/TextureSize/jpegDemo.jpeg +0 -0
  189. package/samples/TextureSize/jpgDemo.jpg +0 -0
  190. package/samples/TextureSize/pngDemo.png +0 -0
  191. package/samples/TextureSize/pngNoAlphaDemo.png +0 -0
  192. package/samples/ThrowMoveDemo/AccelerateDemo.vue +0 -116
  193. package/samples/ThrowMoveDemo/App.vue +0 -114
  194. package/samples/ThrowMoveDemo/LRParabolicDemo.vue +0 -115
  195. package/samples/ThrowMoveDemo/TargetDemo.vue +0 -116
  196. package/samples/ThrowMoveDemo/UDParabolicDemo.vue +0 -121
  197. package/samples/TouchSample/App.vue +0 -136
  198. package/samples/TouchSample/Item.vue +0 -103
  199. package/samples/TouchSample/MetroWidgetHorizontal.vue +0 -144
  200. package/samples/TouchSample/MetroWidgetVertical.vue +0 -144
  201. package/samples/TouchSample/TouchContainerHorizontal.vue +0 -160
  202. package/samples/TouchSample/TouchContainerVertical.vue +0 -160
  203. package/samples/TouchSample/data.js +0 -81
  204. package/samples/TransitPage/App.vue +0 -29
  205. package/samples/VideoDemo/App.vue +0 -121
  206. package/samples/VideoDemo/components/Button.vue +0 -58
  207. package/samples/VideoDemo/components/Controllor.vue +0 -197
  208. package/samples/VideoDemo/components/VideoFrame.vue +0 -140
  209. package/samples/VisibleSensorDemo/App.vue +0 -234
  210. package/samples/assets/bmpDemo.bmp +0 -0
  211. package/samples/assets/jpegDemo.jpeg +0 -0
  212. package/samples/assets/pngDemo.png +0 -0
  213. package/samples/assets/pngNoAlphaDemo.png +0 -0
  214. package/samples/assets/webpDemo.webp +0 -0
  215. package/tsconfig.json +0 -47
  216. package/utils/index.d.ts +0 -3
  217. package/utils/index.js +0 -10
@@ -1,65 +0,0 @@
1
- <script setup>
2
- import iconImgPath from "../../assets/icon.png";
3
- const blockSize = {
4
- width: 65,
5
- height: 65,
6
- };
7
- const gap = 5;
8
- </script>
9
-
10
- <template>
11
- <div id="layout-root">
12
- <div
13
- class="content-font"
14
- :style="{
15
- width: blockSize.width,
16
- height: blockSize.height,
17
- backgroundColor: 'rgba(255, 255, 0, 1)',
18
- borderRadius: '10px',
19
- }"
20
- >
21
- 各角相同
22
- </div>
23
- <div
24
- class="content-font"
25
- :style="{
26
- left: blockSize.width + gap,
27
- width: blockSize.width,
28
- height: blockSize.height,
29
- backgroundColor: 'rgba(255, 255, 0, 1)',
30
- borderRadius: '0 10px 20px 30px',
31
- }"
32
- >
33
- 各角不同
34
- </div>
35
- <div
36
- class="content-font"
37
- :style="{
38
- top: blockSize.height + gap,
39
- width: blockSize.width,
40
- height: blockSize.height,
41
- backgroundImage: `url(${iconImgPath})`,
42
- borderRadius: '10px',
43
- }"
44
- >
45
- 各角相同
46
- </div>
47
- <div
48
- class="content-font"
49
- :style="{
50
- left: blockSize.width + gap,
51
- top: blockSize.height + gap,
52
- width: blockSize.width,
53
- height: blockSize.height,
54
- backgroundImage: `url(${iconImgPath})`,
55
- borderRadius: '0 10px 20px 30px',
56
- }"
57
- >
58
- 各角不同
59
- </div>
60
- </div>
61
- </template>
62
-
63
- <style>
64
- @import "../FontStyle.css";
65
- </style>
@@ -1,32 +0,0 @@
1
- <script setup>
2
- import iconImgPath from "../../assets/icon.png";
3
-
4
- const blockSize = {
5
- width: 65,
6
- height: 65,
7
- };
8
-
9
- const gap = 5;
10
- </script>
11
-
12
- <template>
13
- <div id="layout-root">
14
- <div
15
- class="content-font"
16
- :style="{
17
- left: 10,
18
- top: 10,
19
- width: blockSize.width,
20
- height: blockSize.height,
21
- backgroundColor: 'rgba(255, 255, 0, 1)',
22
- transform: 'rotate3d(0, 0, 1, 30deg)',
23
- }"
24
- >
25
- rotate3d
26
- </div>
27
- </div>
28
- </template>
29
-
30
- <style>
31
- @import "../FontStyle.css";
32
- </style>
@@ -1,31 +0,0 @@
1
- <template>
2
- <div id='item-root'>
3
- <ContentBlock :class=contentClass :style="{top:itemSides.height*0}" :=contentBlockProps :index=0 title="图片显示">
4
- <ImgLayout/>
5
- </ContentBlock>
6
- </div>
7
- </template>
8
-
9
- <script>
10
- import ContentBlock from '../ContentBlock.vue';
11
- import ImgLayout from './ImgLayout.vue';
12
-
13
- export default {
14
- props: {
15
- contentClass: String,
16
- itemSides: Object
17
- },
18
- components: {
19
- ContentBlock,
20
- ImgLayout,
21
- },
22
- computed: {
23
- contentBlockProps() {
24
- return {
25
- colIndex: 0,
26
- itemSides: this.itemSides
27
- }
28
- }
29
- }
30
- }
31
- </script>
@@ -1,41 +0,0 @@
1
- <template>
2
- <div id='layout-root'>
3
- <div style="{top: 0}">
4
- <div class="content-font" :style="{width: 50, height: titleHeight}">原图</div>
5
- <div :style="{top: titleHeight,
6
- width: imageSize.width+4, height: imageSize.height+4,
7
- backgroundColor: 'rgba(0, 255, 0, 1)' }">
8
- <img :style="{ left: 2, top: 2,
9
- width: imageSize.width, height: imageSize.height}"
10
- :src="testImgPath"/>
11
- </div>
12
- </div>
13
- </div>
14
- </template>
15
-
16
- <script>
17
- import testImgPath from '../../assets/test.jpg';
18
-
19
- export default {
20
- computed: {
21
- testImgPath() {
22
- return testImgPath;
23
- },
24
- titleHeight() {
25
- return 16;
26
- },
27
- imageSize() {
28
- return {
29
- width: 80,
30
- height: 64,
31
- }
32
- },
33
- }
34
- }
35
-
36
- </script>
37
-
38
-
39
- <style>
40
- @import "../FontStyle.css";
41
- </style>
@@ -1,55 +0,0 @@
1
- <script setup>
2
- import TitleBar from "./TitleBar.vue";
3
- import DivGroup1 from "../div/DivGroup1.vue";
4
- import DivGroup2 from "../div/DivGroup2.vue";
5
- import TextGroup1 from "../text/TextGroup1.vue";
6
- import TextGroup2 from "../text/TextGroup2.vue";
7
- import AnimGroup from "../anim/AnimGroup.vue";
8
-
9
- const props = defineProps({
10
- panelClass: String,
11
- itemSides: Object,
12
- });
13
-
14
- const titleData = ["div标签1", "div标签2", "div文本1", "div文本2", "div动画"];
15
- </script>
16
-
17
- <template>
18
- <div :class="panelClass">
19
- <TitleBar
20
- :class="panelClass"
21
- :itemSides="itemSides"
22
- :titleData="titleData"
23
- />
24
- <div :class="panelClass" :style="{ top: 20 }">
25
- <DivGroup1
26
- :style="{ left: itemSides.width * 0 }"
27
- :contentClass="panelClass"
28
- :itemSides="itemSides"
29
- />
30
- <DivGroup2
31
- :style="{ left: itemSides.width * 1 }"
32
- :contentClass="panelClass"
33
- :itemSides="itemSides"
34
- />
35
- <TextGroup1
36
- :style="{ left: itemSides.width * 2 }"
37
- :contentClass="panelClass"
38
- :itemSides="itemSides"
39
- />
40
- <TextGroup2
41
- :style="{ left: itemSides.width * 3 }"
42
- :contentClass="panelClass"
43
- :itemSides="itemSides"
44
- />
45
- <AnimGroup
46
- :style="{ left: itemSides.width * 4 }"
47
- :contentClass="panelClass"
48
- :itemSides="itemSides"
49
- />
50
- </div>
51
- </div>
52
- </template>
53
-
54
- <style>
55
- </style>
@@ -1,31 +0,0 @@
1
- <script setup>
2
- import TitleBar from "./TitleBar.vue";
3
- import ImageGroup from "../img/ImageGroup.vue";
4
-
5
- const props = defineProps({
6
- panelClass: String,
7
- itemSides: Object,
8
- });
9
-
10
- const titleData = ["img标签"];
11
- </script>
12
-
13
- <template>
14
- <div :class="panelClass">
15
- <TitleBar
16
- :class="panelClass"
17
- :itemSides="itemSides"
18
- :titleData="titleData"
19
- />
20
- <div :class="panelClass" :style="{ top: 20 }">
21
- <ImageGroup
22
- :style="{ left: itemSides.width * 0 }"
23
- :contentClass="panelClass"
24
- :itemSides="itemSides"
25
- />
26
- </div>
27
- </div>
28
- </template>
29
-
30
- <style>
31
- </style>
@@ -1,29 +0,0 @@
1
- <script setup>
2
- const props = defineProps({
3
- itemSides: Object,
4
- titleData: Array,
5
- });
6
- </script>
7
-
8
- <template>
9
- <div>
10
- <template v-for="(title, index) in titleData" :key="index">
11
- <div
12
- class="title-font item-style"
13
- :style="{ ...itemSides, left: itemSides.width * index }"
14
- >
15
- {{ title }}
16
- </div>
17
- </template>
18
- </div>
19
- </template>
20
-
21
- <style>
22
- @import "../FontStyle.css";
23
- </style>
24
-
25
- <style scoped>
26
- .item-style {
27
- text-align: center;
28
- }
29
- </style>
@@ -1,66 +0,0 @@
1
- <script setup>
2
- const blockSize = {
3
- width: 90,
4
- height: 40,
5
- };
6
- const blockStyle = {
7
- width: blockSize.width,
8
- height: blockSize.height,
9
- backgroundColor: "rgba(255, 255, 0, 0.5)",
10
- color: "rgba(255, 0, 0, 1)",
11
- };
12
- </script>
13
-
14
- <template>
15
- <div id="layout-root">
16
- <div
17
- class="content-font"
18
- :style="{ ...blockStyle, width: blockSize.width * 1.5 }"
19
- >
20
- 左上(默认)
21
- </div>
22
- <div
23
- class="content-font"
24
- :style="{ ...blockStyle, top: blockSize.height + 5, textAlign: 'center' }"
25
- >
26
- 中上
27
- </div>
28
- <div
29
- class="content-font"
30
- :style="{
31
- ...blockStyle,
32
- left: blockSize.width + 5,
33
- top: blockSize.height + 5,
34
- textAlign: 'right',
35
- }"
36
- >
37
- 右上
38
- </div>
39
- <div
40
- class="content-font"
41
- :style="{
42
- ...blockStyle,
43
- top: (blockSize.height + 5) * 2,
44
- lineHeight: blockSize.height,
45
- }"
46
- >
47
- 垂直中
48
- </div>
49
- <div
50
- class="content-font"
51
- :style="{
52
- ...blockStyle,
53
- left: blockSize.width + 5,
54
- top: (blockSize.height + 5) * 2,
55
- lineHeight: blockSize.height,
56
- textAlign: 'center',
57
- }"
58
- >
59
- 正中
60
- </div>
61
- </div>
62
- </template>
63
-
64
- <style>
65
- @import "../FontStyle.css";
66
- </style>
@@ -1,26 +0,0 @@
1
- <template>
2
- <div id="layout-root">
3
- <div
4
- :style="{
5
- width: 300,
6
- height: 100,
7
- fontSize: 20,
8
- }"
9
- jsv_text_emoji="true"
10
- >
11
- {{ `style: 😀笑🇨🇳中国\n👨‍👩‍👧‍👦家庭` }}
12
- </div>
13
- <div class="emoji" jsv_text_emoji="true">
14
- {{ `class: 😀笑🇨🇳中国\n👨‍👩‍👧‍👦家庭` }}
15
- </div>
16
- </div>
17
- </template>
18
-
19
- <style>
20
- .emoji {
21
- top: 100;
22
- width: 300;
23
- height: 100;
24
- font-size: 20;
25
- }
26
- </style>
@@ -1,89 +0,0 @@
1
- <script setup>
2
- const gap = 5;
3
- const blockStyle = {
4
- width: 70,
5
- height: 20,
6
- };
7
- </script>
8
-
9
- <template>
10
- <div id="layout-root">
11
- <div>
12
- <div class="content-font" :style="{ ...blockStyle }">[字体]</div>
13
- <div
14
- class="content-font"
15
- :style="{ ...blockStyle, top: 25, fontFamily: '宋体' }"
16
- >
17
- abc宋体
18
- </div>
19
- <div
20
- class="content-font"
21
- :style="{
22
- ...blockStyle,
23
- top: 25,
24
- left: blockStyle.width + gap,
25
- fontFamily: '黑体',
26
- }"
27
- >
28
- abc黑体
29
- </div>
30
- <div
31
- :style="{
32
- top: 25,
33
- left: (blockStyle.width + gap) * 2 - 10,
34
- width: blockStyle.width + 30,
35
- height: 28,
36
- fontFamily: '黑体',
37
- fontSize: '24px',
38
- WebkitTextStroke: '1px rgba(255,255,0,1.0)',
39
- }"
40
- >
41
- abc描边
42
- </div>
43
-
44
- <div
45
- class="content-font"
46
- :style="{ ...blockStyle, top: 50, fontWeight: 'bold' }"
47
- >
48
- abc粗体
49
- </div>
50
- <div
51
- class="content-font"
52
- :style="{
53
- ...blockStyle,
54
- top: 50,
55
- left: blockStyle.width + gap,
56
- fontStyle: 'italic',
57
- }"
58
- >
59
- abc斜体
60
- </div>
61
- </div>
62
-
63
- <div :style="{ top: 75 }">
64
- <div class="content-font" :style="{ ...blockStyle }">[其他]</div>
65
- <div :style="{ top: 25, width: 130, height: 35, fontSize: '30px' }">
66
- abc字号
67
- </div>
68
- <div
69
- :style="{
70
- top: 25,
71
- left: 110,
72
- width: 130,
73
- height: 35,
74
- color: 'rgba(255, 0, 0, 1)',
75
- fontFamily: 'sans-serif',
76
- fontSize: '30px',
77
- fontStyle: 'italic',
78
- fontWeight: 'bold',
79
- }"
80
- >
81
- abc综合
82
- </div>
83
- </div>
84
- </div>
85
- </template>
86
-
87
- <style>
88
- @import "../FontStyle.css";
89
- </style>
@@ -1,49 +0,0 @@
1
- <script setup>
2
- import ContentBlock from "../ContentBlock.vue";
3
- import TextAlign from "./TextAlign.vue";
4
- import TextFontStyle from "./TextFontStyle.vue";
5
- import TextOverflow from "./TextOverflow.vue";
6
-
7
- const props = defineProps({
8
- contentClass: String,
9
- itemSides: Object,
10
- });
11
-
12
- const contentBlockProps = {
13
- colIndex: 0,
14
- itemSides: props.itemSides,
15
- };
16
- </script>
17
-
18
- <template>
19
- <div id="item-root">
20
- <ContentBlock
21
- :class="contentClass"
22
- :style="{ top: itemSides.height * 0 }"
23
- :="contentBlockProps"
24
- :index="0"
25
- title="文字对齐"
26
- >
27
- <TextAlign />
28
- </ContentBlock>
29
- <ContentBlock
30
- :class="contentClass"
31
- :style="{ top: itemSides.height * 1 }"
32
- :="contentBlockProps"
33
- :index="1"
34
- title="字体和字号"
35
- >
36
- <TextFontStyle />
37
- </ContentBlock>
38
- <ContentBlock
39
- :class="contentClass"
40
- :style="{ top: itemSides.height * 2 }"
41
- :="{ ...contentBlockProps, itemSides: { ...itemSides, height: 290 } }"
42
- :index="2"
43
- title="文字折行"
44
- >
45
- <TextOverflow />
46
- </ContentBlock>
47
- </div>
48
- </template>
49
-
@@ -1,28 +0,0 @@
1
- <script setup>
2
- import ContentBlock from "../ContentBlock.vue";
3
- import TextEmoji from "./TextEmoji.vue";
4
-
5
- const props = defineProps({
6
- contentClass: String,
7
- itemSides: Object,
8
- });
9
-
10
- const contentBlockProps = {
11
- colIndex: 0,
12
- itemSides: props.itemSides,
13
- };
14
- </script>
15
- <template>
16
- <div id="item-root">
17
- <ContentBlock
18
- :class="contentClass"
19
- :style="{ top: itemSides.height * 0 }"
20
- :="contentBlockProps"
21
- :index="0"
22
- title="文字对齐"
23
- >
24
- <TextEmoji />
25
- </ContentBlock>
26
- </div>
27
- </template>
28
-
@@ -1,110 +0,0 @@
1
- <script setup>
2
- const gap = 5;
3
- const blockSize = {
4
- width: 180,
5
- height: 35,
6
- };
7
- const baseStyle = {
8
- width: blockSize.width,
9
- height: blockSize.height,
10
- backgroundColor: "rgba(255, 255, 0, 0.5)",
11
- color: "rgba(255, 0, 0, 1)",
12
- };
13
- const multiLineCut =
14
- "多行文字(末尾截断):" +
15
- '\n第一行:我末尾有个"\\n"' +
16
- "\n第二行:一二三四五六七八九十,一二三四五六七八九十,一二三四五六七八九十" +
17
- "\n第三行:一二三四五六七八九十,一二三四五六七八九十,一二三四五六七八九十";
18
- const multiLineEllipsis =
19
- "多行文字(末尾省略):" +
20
- '\n第一行:我末尾有个"\\n"' +
21
- "\n第二行:一二三四五六七八九十,一二三四五六七八九十,一二三四五六七八九十" +
22
- "\n第三行:一二三四五六七八九十,一二三四五六七八九十,一二三四五六七八九十";
23
- </script>
24
-
25
- <template>
26
- <div id="layout-root">
27
- <div
28
- class="content-font"
29
- :style="{
30
- ...baseStyle,
31
- whiteSpace: 'nowrap',
32
- textOverflow: 'clip',
33
- overflow: 'hidden',
34
- }"
35
- >
36
- 1.长文字截断,后面的文字你可能看不到
37
- </div>
38
-
39
- <div
40
- class="content-font"
41
- :style="{
42
- ...baseStyle,
43
- top: blockSize.height + gap,
44
- whiteSpace: 'nowrap',
45
- textOverflow: 'ellipsis',
46
- overflow: 'hidden',
47
- }"
48
- >
49
- 2.长文字省略,后面的文字你可能看不到
50
- </div>
51
-
52
- <div
53
- class="content-font"
54
- :style="{
55
- ...baseStyle,
56
- top: (blockSize.height + gap) * 2,
57
- whiteSpace: 'pre-wrap',
58
- textOverflow: 'clip',
59
- overflow: 'hidden',
60
- }"
61
- >
62
- 3.长文字折行+截断,后面的文字你可能看不到,与PC效果有区别,一二三四五六七八九十
63
- </div>
64
-
65
- <div
66
- class="content-font"
67
- :style="{
68
- ...baseStyle,
69
- top: (blockSize.height + gap) * 3,
70
- whiteSpace: 'pre-wrap',
71
- textOverflow: 'ellipsis',
72
- overflow: 'hidden',
73
- }"
74
- >
75
- 4.长文字折行+省略,后面的文字你可能看不到,与PC效果有区别,一二三四五六七八九十
76
- </div>
77
-
78
- <div
79
- class="content-font"
80
- :style="{
81
- ...baseStyle,
82
- top: (blockSize.height + gap) * 4,
83
- height: 65,
84
- whiteSpace: 'pre-wrap',
85
- textOverflow: 'clip',
86
- overflow: 'hidden',
87
- }"
88
- >
89
- 5.{{ multiLineCut }}
90
- </div>
91
-
92
- <div
93
- class="content-font"
94
- :style="{
95
- ...baseStyle,
96
- top: (blockSize.height + gap) * 4 + 67,
97
- height: 65,
98
- whiteSpace: 'pre-wrap',
99
- textOverflow: 'ellipsis',
100
- overflow: 'hidden',
101
- }"
102
- >
103
- 6.{{ multiLineEllipsis }}
104
- </div>
105
- </div>
106
- </template>
107
-
108
- <style>
109
- @import "../FontStyle.css";
110
- </style>