diff --git a/src/assets/videos/earth.mp4 b/src/assets/videos/earth.mp4
new file mode 100644
index 00000000..75355f6f
Binary files /dev/null and b/src/assets/videos/earth.mp4 differ
diff --git a/src/packages/components/Informations/Mores/Video/config.ts b/src/packages/components/Informations/Mores/Video/config.ts
new file mode 100644
index 00000000..bfeabf00
--- /dev/null
+++ b/src/packages/components/Informations/Mores/Video/config.ts
@@ -0,0 +1,26 @@
+import { PublicConfigClass } from '@/packages/public'
+import { CreateComponentType } from '@/packages/index.d'
+import { VideoConfig } from './index'
+import cloneDeep from 'lodash/cloneDeep'
+import video from '@/assets/videos/earth.mp4'
+
+export const option = {
+ // 视频路径
+ dataset: video,
+ // 循环播放
+ loop: true,
+ // 自动播放
+ autoplay: true,
+ // 静音
+ muted: true,
+ // 适应方式
+ fit: 'contain',
+ // 圆角
+ borderRadius: 10
+}
+
+export default class Config extends PublicConfigClass implements CreateComponentType {
+ public key = VideoConfig.key
+ public chartConfig = cloneDeep(VideoConfig)
+ public option = cloneDeep(option)
+}
diff --git a/src/packages/components/Informations/Mores/Video/config.vue b/src/packages/components/Informations/Mores/Video/config.vue
new file mode 100644
index 00000000..1b8a5f71
--- /dev/null
+++ b/src/packages/components/Informations/Mores/Video/config.vue
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ 自动播放
+
+
+ 循环播放
+
+
+ 静音
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/packages/components/Informations/Mores/Video/index.ts b/src/packages/components/Informations/Mores/Video/index.ts
new file mode 100644
index 00000000..01998cb7
--- /dev/null
+++ b/src/packages/components/Informations/Mores/Video/index.ts
@@ -0,0 +1,14 @@
+import image from '@/assets/images/chart/informations/photo.png'
+import { ConfigType, PackagesCategoryEnum } from '@/packages/index.d'
+import { ChatCategoryEnum, ChatCategoryEnumName } from '../../index.d'
+
+export const VideoConfig: ConfigType = {
+ key: 'Video',
+ chartKey: 'VVideo',
+ conKey: 'VCVideo',
+ title: '视频',
+ category: ChatCategoryEnum.MORE,
+ categoryName: ChatCategoryEnumName.MORE,
+ package: PackagesCategoryEnum.INFORMATIONS,
+ image
+}
diff --git a/src/packages/components/Informations/Mores/Video/index.vue b/src/packages/components/Informations/Mores/Video/index.vue
new file mode 100644
index 00000000..ba016d2c
--- /dev/null
+++ b/src/packages/components/Informations/Mores/Video/index.vue
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/packages/components/Informations/Mores/index.ts b/src/packages/components/Informations/Mores/index.ts
index eb12db36..19648094 100644
--- a/src/packages/components/Informations/Mores/index.ts
+++ b/src/packages/components/Informations/Mores/index.ts
@@ -1,4 +1,5 @@
import { TextCloudConfig } from './TextCloud/index'
import { ImageConfig } from './Image/index'
+import { VideoConfig } from './Video/index'
-export default [ImageConfig, TextCloudConfig]
+export default [ImageConfig, VideoConfig, TextCloudConfig]
diff --git a/src/views/chart/ContentEdit/components/EditShapeBox/index.vue b/src/views/chart/ContentEdit/components/EditShapeBox/index.vue
index dc521ad8..93450fed 100644
--- a/src/views/chart/ContentEdit/components/EditShapeBox/index.vue
+++ b/src/views/chart/ContentEdit/components/EditShapeBox/index.vue
@@ -69,6 +69,10 @@ const select = computed(() => {
@include go(shape-box) {
position: absolute;
cursor: move;
+
+ // 混合模式
+ mix-blend-mode: screen;
+
/* 锚点 */
.shape-point {
z-index: 1;
diff --git a/src/views/preview/components/PreviewRenderGroup/index.vue b/src/views/preview/components/PreviewRenderGroup/index.vue
index edecb3f8..f3ae9ac7 100644
--- a/src/views/preview/components/PreviewRenderGroup/index.vue
+++ b/src/views/preview/components/PreviewRenderGroup/index.vue
@@ -4,7 +4,7 @@
v-for="item in groupData.groupList"
:class="animationsClass(item.styles.animations)"
:key="item.id"
- :style="{
+ :style="{
...getComponentAttrStyle(item.attr, groupIndex),
...getFilterStyle(item.styles),
...getTransformStyle(item.styles)
@@ -15,7 +15,7 @@
:chartConfig="item"
:themeSetting="themeSetting"
:themeColor="themeColor"
- :style="{...getSizeStyle(item.attr)}"
+ :style="{ ...getSizeStyle(item.attr) }"
>
@@ -49,5 +49,6 @@ const props = defineProps({
diff --git a/src/views/preview/components/PreviewRenderList/index.vue b/src/views/preview/components/PreviewRenderList/index.vue
index c943be66..9094dba0 100644
--- a/src/views/preview/components/PreviewRenderList/index.vue
+++ b/src/views/preview/components/PreviewRenderList/index.vue
@@ -63,5 +63,6 @@ const themeColor = computed(() => {