watermark.vue 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <template>
  2. <div class="container">
  3. <el-row :gutter="20">
  4. <el-col :span="18">
  5. <el-watermark :content="config.content" :font="config.font" :z-index="config.zIndex"
  6. :rotate="config.rotate" :gap="config.gap" :offset="config.offset">
  7. <div style="height: 600px" />
  8. </el-watermark>
  9. </el-col>
  10. <el-col :span="6">
  11. <el-form class="form" :model="config" label-position="top" label-width="50px">
  12. <el-form-item label="Content">
  13. <el-input v-model="config.content" />
  14. </el-form-item>
  15. <el-form-item label="Color">
  16. <el-color-picker v-model="config.font.color" show-alpha />
  17. </el-form-item>
  18. <el-form-item label="FontSize">
  19. <el-slider v-model="config.font.fontSize" />
  20. </el-form-item>
  21. <el-form-item label="zIndex">
  22. <el-slider v-model="config.zIndex" />
  23. </el-form-item>
  24. <el-form-item label="Rotate">
  25. <el-slider v-model="config.rotate" :min="-180" :max="180" />
  26. </el-form-item>
  27. <el-form-item label="Gap">
  28. <el-space>
  29. <el-input-number v-model="config.gap[0]" controls-position="right" />
  30. <el-input-number v-model="config.gap[1]" controls-position="right" />
  31. </el-space>
  32. </el-form-item>
  33. <el-form-item label="Offset">
  34. <el-space>
  35. <el-input-number v-model="config.offset[0]" placeholder="offsetLeft"
  36. controls-position="right" />
  37. <el-input-number v-model="config.offset[1]" placeholder="offsetTop"
  38. controls-position="right" />
  39. </el-space>
  40. </el-form-item>
  41. </el-form>
  42. </el-col>
  43. </el-row>
  44. </div>
  45. </template>
  46. <script setup lang="ts">
  47. import { reactive } from 'vue'
  48. const config = reactive({
  49. content: 'vue-manage-system',
  50. font: {
  51. fontSize: 16,
  52. color: 'rgba(0, 0, 0, 0.15)',
  53. },
  54. zIndex: -1,
  55. rotate: -22,
  56. gap: [100, 100] as [number, number],
  57. offset: [] as unknown as [number, number],
  58. })
  59. </script>