Quellcode durchsuchen

Merge branch 'master' of http://192.168.0.115:3000/renyicun/NanjingMuseumWuJinZang

aamin vor 1 Jahr
Ursprung
Commit
68fbac233f
66 geänderte Dateien mit 482 neuen und 3533 gelöschten Zeilen
  1. 1 2
      .env.dev
  2. 0 1
      .gitignore
  3. 21 17
      public/configExcel.js
  4. BIN
      public/configMultiMedia/author/zhaomengfu1.png
  5. BIN
      public/configMultiMedia/author/zhaomengfu2.png
  6. BIN
      public/configMultiMedia/paintings-big/万竹秋深图(局部).jpg
  7. BIN
      public/configMultiMedia/paintings-big/修篁树石图.jpg
  8. BIN
      public/configMultiMedia/paintings-big/十二墨花图(墨竹部分).jpg
  9. BIN
      public/configMultiMedia/paintings-big/墨竹.jpg
  10. BIN
      public/configMultiMedia/paintings-big/墨竹图屏.jpg
  11. BIN
      public/configMultiMedia/paintings-big/墨竹图(一).jpg
  12. BIN
      public/configMultiMedia/paintings-big/墨竹图(二).jpg
  13. BIN
      public/configMultiMedia/paintings-big/平安磐石.jpg
  14. BIN
      public/configMultiMedia/paintings-big/托根乱岩图.jpg
  15. BIN
      public/configMultiMedia/paintings-big/晚香高节图.jpg
  16. BIN
      public/configMultiMedia/paintings-big/朱竹图.jpg
  17. BIN
      public/configMultiMedia/paintings-big/枯木竹石图.jpg
  18. BIN
      public/configMultiMedia/paintings-big/桃竹双凫图.jpg
  19. BIN
      public/configMultiMedia/paintings-big/湘潭秋意图.jpg
  20. BIN
      public/configMultiMedia/paintings-big/潇湘竹石图(竹石部分).jpg
  21. BIN
      public/configMultiMedia/paintings-big/灵谷探梅图.jpg
  22. BIN
      public/configMultiMedia/paintings-big/竹枝图.jpg
  23. BIN
      public/configMultiMedia/paintings-big/竹石菊花图.jpg
  24. BIN
      public/configMultiMedia/paintings-big/竹禽图卷.jpg
  25. BIN
      public/configMultiMedia/paintings-big/筼筜清影图.jpg
  26. BIN
      public/configMultiMedia/paintings-big/花果图(墨竹部分).jpg
  27. BIN
      public/configMultiMedia/paintings-big/赵氏一门三竹图.jpg
  28. BIN
      public/configMultiMedia/paintings-big/雪竹图.jpg
  29. BIN
      public/configMultiMedia/paintings/home-painting2.jpg
  30. BIN
      public/game/Build/Build.data.unityweb
  31. BIN
      public/game/Build/Build.framework.js.unityweb
  32. 1 0
      public/game/Build/Build.loader.js
  33. BIN
      public/game/Build/Build.wasm.unityweb
  34. 33 0
      public/game/ServiceWorker.js
  35. 36 0
      public/game/StreamingAssets/aa/AddressablesLink/link.xml
  36. BIN
      public/game/StreamingAssets/aa/WebGL/defaultlocalgroup_assets_all_4d8d9784050dbfe9105306cf7330ff10.bundle
  37. 1 0
      public/game/StreamingAssets/aa/catalog.json
  38. 1 0
      public/game/StreamingAssets/aa/settings.json
  39. BIN
      public/game/TemplateData/favicon.ico
  40. BIN
      public/game/TemplateData/img_bg.jpg
  41. BIN
      public/game/TemplateData/img_bg@3x.png
  42. BIN
      public/game/TemplateData/img_paper.png
  43. BIN
      public/game/TemplateData/loading_1.mp4
  44. BIN
      public/game/TemplateData/progress-bar-empty-dark.png
  45. BIN
      public/game/TemplateData/progress-bar-empty-light.png
  46. BIN
      public/game/TemplateData/progress-bar-full-dark.png
  47. BIN
      public/game/TemplateData/progress-bar-full-light.png
  48. BIN
      public/game/TemplateData/progress.png
  49. 5 0
      public/game/TemplateData/style.css
  50. 59 0
      public/game/index.css
  51. 168 0
      public/game/index.html
  52. 59 0
      public/game/index.js
  53. 15 0
      public/game/manifest.webmanifest
  54. BIN
      src/assets/images/home-painting2.jpg
  55. BIN
      src/assets/images/learn-more.png
  56. 17 1
      src/components/BtnBack.vue
  57. 18 20
      src/views/BambooBookScene1.vue
  58. 0 2079
      src/views/HomeView(横向滑动).vue
  59. 0 1365
      src/views/HomeView(点击交互).vue
  60. 7 13
      src/views/HomeView.vue
  61. 1 1
      src/views/PaintingDetailList.vue
  62. 3 1
      src/views/PaintingList.vue
  63. 33 31
      src/views/PoemList.vue
  64. 1 0
      src/views/ShuangGouSheSeDetail.vue
  65. 1 1
      src/views/ShuanggouPaintingDetail copy.vue
  66. 1 1
      src/views/ShuanggouPaintingDetail.vue

+ 1 - 2
.env.dev

@@ -2,5 +2,4 @@ VUE_APP_CLI_MODE=dev
 NODE_ENV=development
 PUBLIC_PATH=/
 VUE_APP_DEPLOY_ORIGIN=
-VUE_APP_PC_URL="https://culture.4dage.com/NanjingMuseumWuJinZangPC/index.html#/"
-
+VUE_APP_PC_URL="https://culture.4dage.com/NanjingMuseumWuJinZangPc/index.html#/"

+ 0 - 1
.gitignore

@@ -1,7 +1,6 @@
 .DS_Store
 node_modules
 /dist
-/public/game
 /public/scene
 
 *.zip

Datei-Diff unterdrückt, da er zu groß ist
+ 21 - 17
public/configExcel.js


BIN
public/configMultiMedia/author/zhaomengfu1.png


BIN
public/configMultiMedia/author/zhaomengfu2.png


BIN
public/configMultiMedia/paintings-big/万竹秋深图(局部).jpg


BIN
public/configMultiMedia/paintings-big/修篁树石图.jpg


BIN
public/configMultiMedia/paintings-big/十二墨花图(墨竹部分).jpg


BIN
public/configMultiMedia/paintings-big/墨竹.jpg


BIN
public/configMultiMedia/paintings-big/墨竹图屏.jpg


BIN
public/configMultiMedia/paintings-big/墨竹图(一).jpg


BIN
public/configMultiMedia/paintings-big/墨竹图(二).jpg


BIN
public/configMultiMedia/paintings-big/平安磐石.jpg


BIN
public/configMultiMedia/paintings-big/托根乱岩图.jpg


BIN
public/configMultiMedia/paintings-big/晚香高节图.jpg


BIN
public/configMultiMedia/paintings-big/朱竹图.jpg


BIN
public/configMultiMedia/paintings-big/枯木竹石图.jpg


BIN
public/configMultiMedia/paintings-big/桃竹双凫图.jpg


BIN
public/configMultiMedia/paintings-big/湘潭秋意图.jpg


BIN
public/configMultiMedia/paintings-big/潇湘竹石图(竹石部分).jpg


BIN
public/configMultiMedia/paintings-big/灵谷探梅图.jpg


BIN
public/configMultiMedia/paintings-big/竹枝图.jpg


BIN
public/configMultiMedia/paintings-big/竹石菊花图.jpg


BIN
public/configMultiMedia/paintings-big/竹禽图卷.jpg


BIN
public/configMultiMedia/paintings-big/筼筜清影图.jpg


BIN
public/configMultiMedia/paintings-big/花果图(墨竹部分).jpg


BIN
public/configMultiMedia/paintings-big/赵氏一门三竹图.jpg


BIN
public/configMultiMedia/paintings-big/雪竹图.jpg


BIN
public/configMultiMedia/paintings/home-painting2.jpg


BIN
public/game/Build/Build.data.unityweb


BIN
public/game/Build/Build.framework.js.unityweb


Datei-Diff unterdrückt, da er zu groß ist
+ 1 - 0
public/game/Build/Build.loader.js


BIN
public/game/Build/Build.wasm.unityweb


+ 33 - 0
public/game/ServiceWorker.js

@@ -0,0 +1,33 @@
+const cacheName = "4Dage-H5Game-NanjingMuseum-1.1.3";
+const contentToCache = [
+    "Build/Build.loader.js",
+    "Build/Build.framework.js.unityweb",
+    "Build/Build.data.unityweb",
+    "Build/Build.wasm.unityweb",
+    "TemplateData/style.css"
+
+];
+
+self.addEventListener('install', function (e) {
+    console.log('[Service Worker] Install');
+    
+    e.waitUntil((async function () {
+      const cache = await caches.open(cacheName);
+      console.log('[Service Worker] Caching all: app shell and content');
+      await cache.addAll(contentToCache);
+    })());
+});
+
+self.addEventListener('fetch', function (e) {
+    e.respondWith((async function () {
+      let response = await caches.match(e.request);
+      console.log(`[Service Worker] Fetching resource: ${e.request.url}`);
+      if (response) { return response; }
+
+      response = await fetch(e.request);
+      const cache = await caches.open(cacheName);
+      console.log(`[Service Worker] Caching new resource: ${e.request.url}`);
+      cache.put(e.request, response.clone());
+      return response;
+    })());
+});

+ 36 - 0
public/game/StreamingAssets/aa/AddressablesLink/link.xml

@@ -0,0 +1,36 @@
+<linker>
+  <assembly fullname="Unity.Addressables, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null" preserve="all">
+    <type fullname="UnityEngine.AddressableAssets.Addressables" preserve="all" />
+  </assembly>
+  <assembly fullname="Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null" preserve="all">
+    <type fullname="UnityEngine.ResourceManagement.ResourceProviders.AssetBundleProvider" preserve="all" />
+    <type fullname="UnityEngine.ResourceManagement.ResourceProviders.BundledAssetProvider" preserve="all" />
+    <type fullname="UnityEngine.ResourceManagement.ResourceProviders.InstanceProvider" preserve="all" />
+    <type fullname="UnityEngine.ResourceManagement.ResourceProviders.LegacyResourcesProvider" preserve="all" />
+    <type fullname="UnityEngine.ResourceManagement.ResourceProviders.SceneProvider" preserve="all" />
+  </assembly>
+  <assembly fullname="Unity.TextMeshPro, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null">
+    <type fullname="TMPro.TMP_FontAsset" preserve="all" />
+    <type fullname="TMPro.FaceInfo_Legacy" preserve="nothing" serialized="true" />
+    <type fullname="TMPro.FontAssetCreationSettings" preserve="nothing" serialized="true" />
+    <type fullname="TMPro.KerningTable" preserve="nothing" serialized="true" />
+    <type fullname="TMPro.TMP_Character" preserve="nothing" serialized="true" />
+    <type fullname="TMPro.TMP_FontFeatureTable" preserve="nothing" serialized="true" />
+    <type fullname="TMPro.TMP_FontWeightPair" preserve="nothing" serialized="true" />
+  </assembly>
+  <assembly fullname="UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null">
+    <type fullname="UnityEngine.Material" preserve="all" />
+    <type fullname="UnityEngine.Object" preserve="all" />
+    <type fullname="UnityEngine.Shader" preserve="all" />
+    <type fullname="UnityEngine.Texture2D" preserve="all" />
+  </assembly>
+  <assembly fullname="UnityEngine.TextRenderingModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null">
+    <type fullname="UnityEngine.Font" preserve="all" />
+  </assembly>
+  <assembly fullname="UnityEngine.TextCoreFontEngineModule">
+    <type fullname="UnityEngine.TextCore.FaceInfo" preserve="nothing" serialized="true" />
+    <type fullname="UnityEngine.TextCore.Glyph" preserve="nothing" serialized="true" />
+    <type fullname="UnityEngine.TextCore.GlyphMetrics" preserve="nothing" serialized="true" />
+    <type fullname="UnityEngine.TextCore.GlyphRect" preserve="nothing" serialized="true" />
+  </assembly>
+</linker>

BIN
public/game/StreamingAssets/aa/WebGL/defaultlocalgroup_assets_all_4d8d9784050dbfe9105306cf7330ff10.bundle


Datei-Diff unterdrückt, da er zu groß ist
+ 1 - 0
public/game/StreamingAssets/aa/catalog.json


Datei-Diff unterdrückt, da er zu groß ist
+ 1 - 0
public/game/StreamingAssets/aa/settings.json


BIN
public/game/TemplateData/favicon.ico


BIN
public/game/TemplateData/img_bg.jpg


BIN
public/game/TemplateData/img_bg@3x.png


BIN
public/game/TemplateData/img_paper.png


BIN
public/game/TemplateData/loading_1.mp4


BIN
public/game/TemplateData/progress-bar-empty-dark.png


BIN
public/game/TemplateData/progress-bar-empty-light.png


BIN
public/game/TemplateData/progress-bar-full-dark.png


BIN
public/game/TemplateData/progress-bar-full-light.png


BIN
public/game/TemplateData/progress.png


+ 5 - 0
public/game/TemplateData/style.css

@@ -0,0 +1,5 @@
+body { padding: 0; margin: 0 }
+#unity-container { position: fixed; width: 100%; height: 100%; }
+#unity-canvas { width: 100%; height: 100%; background: #231F20 }
+#unity-loading-bar { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); display: none }
+#unity-warning { position: absolute; left: 50%; top: 5%; transform: translate(-50%); background: white; padding: 10px; display: none }

+ 59 - 0
public/game/index.css

@@ -0,0 +1,59 @@
+.save-image-block {
+    position: fixed;
+    width: 100%;
+    height: 100%;
+
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    pointer-events: none;
+}
+
+.save-image-backgroup {
+    opacity: 0;
+    pointer-events: none;
+}
+
+#unity-loading {
+    position: fixed;
+    top: 0;
+    left: 0;
+    width: 100%;
+    height: 100%;
+
+    display: flex;
+    justify-content: center;
+    align-items: center;
+}
+
+#unity-loading-paper {
+    position: absolute;
+}
+
+#unity-loading-bg {
+    position: absolute;
+    object-fit: cover;
+    width: 100%;
+    height: 100%;
+}
+
+#unity-loading-video {
+    position: absolute;
+    object-fit: contain;
+    width: 100%;
+    height: 100%;
+}
+
+#unity-loading-progress{
+    position: absolute;
+    width: 30vw;
+    height: 30vw;
+}
+
+#unity-loading-progress-text{
+    position: relative;
+    left: 5px;
+    top: -9px;
+    z-index: 10;
+    color: #fff;
+}

+ 168 - 0
public/game/index.html

@@ -0,0 +1,168 @@
+<!DOCTYPE html>
+<html lang="en-us">
+  <head>
+    <meta charset="utf-8">
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+    <title>无尽藏</title>
+    <link rel="shortcut icon" href="TemplateData/favicon.ico">
+    <link rel="stylesheet" href="TemplateData/style.css">
+    <link rel="manifest" href="manifest.webmanifest">
+    <link rel="stylesheet" href="./index.css">
+  </head>
+  <body>
+    <div id="unity-container">
+      <canvas id="unity-canvas" tabindex="-1"></canvas>
+
+      <div id="unity-loading">
+        <img id="unity-loading-bg" src="./TemplateData/img_bg.jpg" alt="" />
+        <img id="unity-loading-paper" src="./TemplateData/img_paper.png" alt="" />
+        <img id="unity-loading-progress" src="./TemplateData/progress.png" alt="" />
+        <span id="unity-loading-progress-text"></span>
+      </div>
+      
+      <div id="unity-warning"> </div>
+    </div>
+    <div class="save-image-block">
+      <img src="" class="save-image-backgroup" alt="">
+    </div>
+    <script>
+      window.addEventListener("load", function () {
+        if ("serviceWorker" in navigator) {
+          navigator.serviceWorker.register("ServiceWorker.js");
+        }
+      });
+
+      let container = document.querySelector("#unity-container");
+      let canvas = document.querySelector("#unity-canvas");
+      let warningBanner = document.querySelector("#unity-warning");
+
+      // Shows a temporary message banner/ribbon for a few seconds, or
+      // a permanent error message on top of the canvas if type=='error'.
+      // If type=='warning', a yellow highlight color is used.
+      // Modify or remove this function to customize the visually presented
+      // way that non-critical warnings and error messages are presented to the
+      // user.
+      function unityShowBanner(msg, type) {
+        function updateBannerVisibility() {
+          warningBanner.style.display = warningBanner.children.length ? 'block' : 'none';
+        }
+        let
+                div = document.createElement('div');
+        div.innerHTML = msg;
+        warningBanner.appendChild(div);
+        if (type == 'error') div.style = 'background: red; padding: 10px;';
+        else {
+          if (type == 'warning') div.style = 'background: yellow; padding: 10px;';
+          setTimeout(function() {
+            warningBanner.removeChild(div);
+            updateBannerVisibility();
+          }, 5000);
+        }
+        updateBannerVisibility();
+      }
+
+      let buildUrl = "Build";
+      let loaderUrl = buildUrl + "/Build.loader.js";
+      let config = {
+        dataUrl: buildUrl + "/Build.data.unityweb",
+        frameworkUrl: buildUrl + "/Build.framework.js.unityweb",
+        codeUrl: buildUrl + "/Build.wasm.unityweb",
+        streamingAssetsUrl: "StreamingAssets",
+        companyName: "4Dage",
+        productName: "H5Game-NanjingMuseum",
+        productVersion: "1.1.3",
+        showBanner: unityShowBanner,
+      };
+
+      // By default Unity keeps WebGL canvas render target size matched with
+      // the DOM size of the canvas element (scaled by window.devicePixelRatio)
+      // Set this to false if you want to decouple this synchronization from
+      // happening inside the engine, and you would instead like to size up
+      // the canvas DOM size and WebGL render target sizes yourself.
+      // config.matchWebGLToCanvasSize = false;
+
+      if (/iPhone|iPad|iPod|Android/i.test(navigator.userAgent)) {
+        // Mobile device style: fill the whole browser client area with the game canvas:
+        let meta = document.createElement('meta');
+        meta.name = 'viewport';
+        meta.content = 'width=device-width, height=device-height, initial-scale=1.0, user-scalable=no, shrink-to-fit=yes';
+        document.getElementsByTagName('head')[0].appendChild(meta);
+      }
+
+
+      let isShowLoading = true;
+      const loadingDom = document.querySelector('#unity-loading');
+      const loadingPaperDom = document.querySelector('#unity-loading-paper');
+      const loadingBgDom = document.querySelector('#unity-loading-bg');
+      const progressDom = document.querySelector('#unity-loading-progress');
+      const progressText = document.querySelector('#unity-loading-progress-text');
+
+      progressText.innerHTML = "0%";
+      let opacity = 1;
+      function fadeOutVideo(){
+        if (opacity > 0) {
+          setTimeout(function() {
+            opacity = opacity - 0.05;
+            progressDom.style.opacity = opacity;
+            loadingPaperDom.style.opacity = opacity;
+            loadingBgDom.style.opacity = opacity;
+            fadeOutVideo();
+          }, 20)
+        } else {
+          window.removeEventListener('resize', refreshLoadingPaperBlockSize);
+          loadingDom.remove();
+        }
+      }
+
+      let script = document.createElement("script");
+      script.src = loaderUrl;
+      script.onload = () => {
+        createUnityInstance(canvas, config, (progress) => {
+          progressText.innerHTML = parseInt(progress * 100) + "%";
+        }).then((unityInstance) => {
+          window.unityInstance = unityInstance;
+          fadeOutVideo();
+        }).catch((message) => {
+          alert(message);
+        });
+      };
+      document.body.appendChild(script);
+
+      function refreshLoadingPaperBlockSize() {
+        // Unity画布宽高比
+        const unityCanvasWidth = 1560;
+        const unityCanvasHeight = 3376;
+
+        const unityPanelWidth = 1560;
+        const unityPanelHeight = 3301;
+        const unityPanelOffsetY = 97.5;
+        const unityPanelOffsetX = -34;
+
+        const innerWidth = window.innerWidth;
+        const innerHeight = window.innerHeight;
+
+        const scale = (unityCanvasWidth / unityPanelHeight) >
+        (innerWidth / innerHeight) ? (innerWidth / unityCanvasWidth) : (innerHeight / unityCanvasHeight);
+
+        loadingPaperDom.style.width = (unityPanelWidth * scale) + 'px';
+        loadingPaperDom.style.height = (unityPanelHeight * scale) + 'px';
+
+        if (unityPanelOffsetY > 0){
+          loadingPaperDom.style.marginTop = (unityPanelOffsetY * scale * 2) + 'px';
+        } else {
+          loadingPaperDom.style.marginBottom = (-unityPanelOffsetY * scale * 2) + 'px';
+        }
+
+        if (unityPanelOffsetX > 0){
+          loadingPaperDom.style.marginLeft = (unityPanelOffsetX * scale * 2) + 'px';
+        } else {
+          loadingPaperDom.style.marginRight = (-unityPanelOffsetX * scale * 2) + 'px';
+        }
+      }
+
+      refreshLoadingPaperBlockSize();
+      window.addEventListener('resize', refreshLoadingPaperBlockSize);
+    </script>
+    <script src="./index.js"></script>
+  </body>
+</html>

+ 59 - 0
public/game/index.js

@@ -0,0 +1,59 @@
+const saveDom = document.querySelector('.save-image-backgroup');
+let isShowSaveDom = false;
+
+window.updateTexture = function (title, base64string) {
+    saveDom.src = 'data:image/png;base64,' + base64string;
+    isShowSaveDom = true;
+    saveDom.style.pointerEvents = 'auto';
+    refreshShareBlockSize();
+}
+
+window.gameInitialized = function () {
+}
+
+window.closeGame = function () {
+    window.parent?.closeGame();
+}
+
+window.closePanel = function () {
+    isShowSaveDom = false;
+    saveDom.style.pointerEvents = 'none';
+}
+
+window.clickEdit = function () {
+    window.parent?.isShowToastFromGame()
+}
+
+// 提供给父页面点击保存按钮使用
+window.saveTitle = function(msg) {
+    window.unityInstance.SendMessage('WebEvent', 'UpdateTextureContent', msg)
+}
+
+function refreshShareBlockSize() {
+
+    // Unity画布宽高比
+    let unityCanvasWidth = 1560;
+    let unityCanvaslHeight = 3376;
+    let unityPanelWidth = 1450;
+    let unityPanelHeight = 2800;
+    let unityPanelOffsetY = -148;
+
+    let innerWidth = window.innerWidth;
+    let innerHeight = window.innerHeight;
+
+    let scale = (unityCanvasWidth / unityPanelHeight) >
+        (innerWidth / innerHeight) ? (innerWidth / unityCanvasWidth) : (innerHeight / unityCanvaslHeight);
+    
+    saveDom.style.width = (unityPanelWidth * scale) + 'px';
+    saveDom.style.height = (unityPanelHeight * scale) + 'px';
+    
+    if (unityPanelOffsetY > 0){
+        saveDom.style.marginTop = (unityPanelOffsetY * scale * 2) + 'px';
+    } else {
+        saveDom.style.marginBottom = (-unityPanelOffsetY * scale * 2) + 'px';
+    }
+}
+
+window.addEventListener('resize', ()=>{
+    if (isShowSaveDom) refreshShareBlockSize();
+});

+ 15 - 0
public/game/manifest.webmanifest

@@ -0,0 +1,15 @@
+{
+    "name": {{{ JSON.stringify(PRODUCT_NAME) }}},
+    "short_name": {{{ JSON.stringify(PRODUCT_NAME) }}},
+    "start_url": "index.html",
+    "display": "fullscreen",
+    "background_color": "{{{ BACKGROUND_COLOR }}}",
+    "theme_color": "{{{  SPLASH_SCREEN_STYLE.toLowerCase() === 'light' ? '#fff' : '#000' }}}",
+    "description": {{{ JSON.stringify(PRODUCT_DESCRIPTION) }}},
+    "icons": [{
+      "src": "TemplateData/icons/unity-logo-{{{ SPLASH_SCREEN_STYLE.toLowerCase() }}}.png",
+      "sizes": "144x144",
+      "type": "image/png",
+      "purpose": "any maskable"
+    }]
+  }

BIN
src/assets/images/home-painting2.jpg


BIN
src/assets/images/learn-more.png


+ 17 - 1
src/components/BtnBack.vue

@@ -7,6 +7,12 @@
         alt=""
         draggable="false"
       >
+      <div
+        class="myBtnTxt"
+        :style="`color:${color==='white'?'white':'#96a783'}`"
+      >
+        返回
+      </div>
     </button>
   </div>
 </template>
@@ -41,7 +47,7 @@ const props = defineProps({
 .btn-back{
   position: fixed;
   left: calc(17 / v-bind('windowSizeWhenDesignForRef') * v-bind('windowSizeInCssForRef'));
-  bottom: calc(20 / v-bind('windowSizeWhenDesignForRef') * v-bind('windowSizeInCssForRef'));
+  bottom: calc(36 / v-bind('windowSizeWhenDesignForRef') * v-bind('windowSizeInCssForRef'));
   width: calc(30 / v-bind('windowSizeWhenDesignForRef') * v-bind('windowSizeInCssForRef'));
   height: calc(30 / v-bind('windowSizeWhenDesignForRef') * v-bind('windowSizeInCssForRef'));
   >button{
@@ -51,9 +57,19 @@ const props = defineProps({
     justify-content: center;
     align-items: center;
     >img{
+      // width: 30px;
+      // height: 30px;
       width: calc(40 / v-bind('windowSizeWhenDesignForRef') * v-bind('windowSizeInCssForRef'));
       height: calc(40 / v-bind('windowSizeWhenDesignForRef') * v-bind('windowSizeInCssForRef'));
     }
   }
+  .myBtnTxt{
+    position: absolute;
+    bottom: -14px;
+    left: -10px;
+    font-size: 14px;
+    font-family: KaiTi;
+    writing-mode:horizontal-tb !important;
+  }
 }
 </style>

+ 18 - 20
src/views/BambooBookScene1.vue

@@ -96,7 +96,6 @@ const innerHeight = ref(window.innerHeight + "px")
     bottom: 0;
     right: 0;
 
-
     .xuliezheng {
       width: calc(v-bind(innerWidth));
       // max-width: 30px;
@@ -208,7 +207,7 @@ const innerHeight = ref(window.innerHeight + "px")
       // margin-right: calc(170 /v-bind('windowSizeWhenDesignForRef') * v-bind('windowSizeInCssForRef'));
       // margin-bottom: calc(250 /v-bind('windowSizeWhenDesignForRef') * v-bind('windowSizeInCssForRef'));
     }
-    >.text{
+    > .text {
       width: calc(
         170 / v-bind("windowSizeWhenDesignForRef") *
           v-bind("windowSizeInCssForRef")
@@ -226,37 +225,36 @@ const innerHeight = ref(window.innerHeight + "px")
         153 / v-bind("windowSizeWhenDesignForRef") *
           v-bind("windowSizeInCssForRef")
       );
-      font-size:  calc(
+      font-size: calc(
         20 / v-bind("windowSizeWhenDesignForRef") *
           v-bind("windowSizeInCssForRef")
       );
-      line-height:  calc(
+      line-height: calc(
         30 / v-bind("windowSizeWhenDesignForRef") *
           v-bind("windowSizeInCssForRef")
       );
       text-indent: 2em;
-      color: #7B916B;
-      font-family: 'KaiTi';
+      color: #7b916b;
+      font-family: "KaiTi";
       writing-mode: initial;
       direction: ltr;
-
     }
 
     > .system-btns {
       width: 100%;
-      padding: 0
-        calc(
-          20 / v-bind(windowSizeWhenDesignForRef) *
-            v-bind(windowSizeInCssForRef)
-        );
-      display: flex;
-      flex-direction: column;
-      justify-content: space-between;
-      position: absolute;
-      bottom: calc(
-        20 / v-bind(windowSizeWhenDesignForRef) * v-bind(windowSizeInCssForRef)
-      );
-      z-index: 2;
+      // padding: 0
+      //   calc(
+      //     20 / v-bind(windowSizeWhenDesignForRef) *
+      //       v-bind(windowSizeInCssForRef)
+      //   );
+      // display: flex;
+      // flex-direction: column;
+      // justify-content: space-between;
+      // position: absolute;
+      // bottom: calc(
+      //   20 / v-bind(windowSizeWhenDesignForRef) * v-bind(windowSizeInCssForRef)
+      // );
+      // z-index: 2;
     }
   }
 }

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 2079
src/views/HomeView(横向滑动).vue


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 1365
src/views/HomeView(点击交互).vue


+ 7 - 13
src/views/HomeView.vue

@@ -74,7 +74,7 @@ const touchEnd = (event) => {
 const $env = inject("$env")
 function showBigPainting() {
   viewerApi({
-    images: [`${$env.BASE_URL}configMultiMedia/paintings/home-painting2.jpg`],
+    images: [`${$env.BASE_URL}configMultiMedia/paintings-big/修篁树石图.jpg`],
     options: {
       className: "viewer-backdrop-home",
     },
@@ -245,12 +245,6 @@ const backFu = () => {
         draggable="false"
       >
       <img
-        class="painting-stem"
-        src="@/assets/images/home-painting2.jpg"
-        alt=""
-        draggable="false"
-      >
-      <img
         :style="{ opacity: curPageIndex == 3 ? 1 : 0, zIndex: 3 }"
         class="painting-stem"
         src="@/assets/images/home2-1.png"
@@ -1088,7 +1082,7 @@ div {
 
   > .learn-more {
     width: calc(
-      134 / v-bind("windowSizeWhenDesignForRef") *
+      200 / v-bind("windowSizeWhenDesignForRef") *
         v-bind("windowSizeInCssForRef")
     );
     height: calc(
@@ -1122,7 +1116,7 @@ div {
       display: flex;
       flex-direction: column;
       position: absolute;
-      right: -40%;
+      right: -10%;
       bottom: -80%;
       > img{
         width: calc(
@@ -1230,8 +1224,8 @@ div {
       left: 0;
       background: linear-gradient(
         rgba(0, 0, 0, 0),
-        rgba(0, 0, 0, 0.1),
-        rgba(0, 0, 0, 0.4)
+        rgba(0, 0, 0, 0.3),
+        rgba(0, 0, 0, 0.8)
       );
       position: absolute;
       bottom: 0;
@@ -1331,8 +1325,8 @@ div {
       left: 0;
       background: linear-gradient(
         rgba(0, 0, 0, 0),
-        rgba(0, 0, 0, 0.1),
-        rgba(0, 0, 0, 0.4)
+        rgba(0, 0, 0, 0.3),
+        rgba(0, 0, 0, 0.8)
       );
       // background: linear-gradient( 180deg, #d9d9d93f 0%, rgba(115,115,115,0) 100%);
       position: absolute;

+ 1 - 1
src/views/PaintingDetailList.vue

@@ -29,7 +29,7 @@
           :location="item['馆藏']"
           :painting-desc="item['简介']"
           :author-desc="item['作者简介']"
-          :big-painting="`${$env.BASE_URL}configMultiMedia/paintings/${item['标题']}.jpg`"
+          :big-painting="`${$env.BASE_URL}configMultiMedia/paintings-big/${item['标题']}.jpg`"
           :can-close="false"
           :direction="item['方向']"
           :size="item['尺寸'] ? getPaintingSize(item['尺寸']) : ''"

+ 3 - 1
src/views/PaintingList.vue

@@ -96,7 +96,9 @@
               class="top-wrap-img"
             >
               <img
-                :style="{height:item['音图'] == 'zhaomengfu1.png' ? '78%':''}"
+                :style="{
+                  height: (item['音图'] == 'zhaomengfu1.png' || item['音图'] == 'zhaomengfu2.png') ? '78%' : '',
+                }"
                 :src="`${$env.BASE_URL}configMultiMedia/author/${item['音图']}`"
               >
             </div>

+ 33 - 31
src/views/PoemList.vue

@@ -15,7 +15,8 @@
     <div
       class="RWbox"
       :style="`width: ${domWidth}px; left:-${
-        baseRWboxLeft ? 500 : indexAc * pageWidth}px;
+        baseRWboxLeft ? 500 : indexAc * pageWidth
+      }px;
         `"
     >
       <div
@@ -87,12 +88,10 @@
     <div class="shandow-box" />
 
     <!-- 返回按钮 -->
-    <div class="RWback">
-      <BtnBack
-        class="button-back"
-        @click="btnBackFu"
-      />
-    </div>
+    <BtnBack
+      class="button-back"
+      @click="btnBackFu"
+    />
 
     <!-- 选择 时代 -->
     <div
@@ -136,7 +135,6 @@ import { useRouter } from "vue-router"
 import useSizeAdapt from "@/useFunctions/useSizeAdapt"
 import { arrList } from "./PoemList.js"
 
-
 import useMoveFu from "../moveFu"
 
 const { touchstart, touchmove, touchend } = useMoveFu()
@@ -742,34 +740,38 @@ const isMoveFu = (index, num) => {
     pointer-events: auto;
   }
   // 返回按钮
-  .RWback {
-    position: absolute;
-    z-index: 22;
-    left: 20px;
-    bottom: 20px;
-    width: 30px;
-    height: 30px;
-    border-radius: 50%;
-    // background-color: rgba(0, 0, 0, 0.5);
-    display: flex;
-    justify-content: center;
-    align-items: center;
-  }
   .btn-back {
     position: absolute;
-    top: 50%;
-    left: 50%;
-    transform: translate(-50%, -50%);
-    max-width: 100%;
-    max-height: 100%;
+    z-index: 22;
+
+    left: calc(
+      17 / v-bind("windowSizeWhenDesignForRef") *
+        v-bind("windowSizeInCssForRef")
+    );
+    bottom: calc(
+      36 / v-bind("windowSizeWhenDesignForRef") *
+        v-bind("windowSizeInCssForRef")
+    );
+    width: calc(
+      30 / v-bind("windowSizeWhenDesignForRef") *
+        v-bind("windowSizeInCssForRef")
+    );
+    height: calc(
+      30 / v-bind("windowSizeWhenDesignForRef") *
+        v-bind("windowSizeInCssForRef")
+    );
   }
 
-  .shandow-box{
+  .shandow-box {
     width: 100%;
-    height:130px;
-    left:0;
-    background: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
-    position:absolute;
+    height: 130px;
+    left: 0;
+    background: linear-gradient(
+      0deg,
+      rgba(0, 0, 0, 0.5) 0%,
+      rgba(0, 0, 0, 0) 100%
+    );
+    position: absolute;
     bottom: 0;
     z-index: 2;
   }

+ 1 - 0
src/views/ShuangGouSheSeDetail.vue

@@ -325,6 +325,7 @@ const curPercentage = computed(() => {
       right: 0;
       display: flex;
       align-items: center;
+      pointer-events: none;
       & > img {
         width: 40px;
       }

+ 1 - 1
src/views/ShuanggouPaintingDetail copy.vue

@@ -23,7 +23,7 @@
           :location="item['馆藏']"
           :painting-desc="item['简介']"
           :author-desc="item['作者简介']"
-          :big-painting="`${$env.BASE_URL}configMultiMedia/paintings/${item['标题']}.jpg`"
+          :big-painting="`${$env.BASE_URL}configMultiMedia/paintings-big/${item['标题']}.jpg`"
           :can-close="false"
           :size="getPaintingSize(item['尺寸'])"
         >

+ 1 - 1
src/views/ShuanggouPaintingDetail.vue

@@ -37,7 +37,7 @@
           :location="item['馆藏']"
           :painting-desc="item['简介']"
           :author-desc="item['作者简介']"
-          :big-painting="`${$env.BASE_URL}configMultiMedia/paintings/${item['标题']}.jpg`"
+          :big-painting="`${$env.BASE_URL}configMultiMedia/paintings-big/${item['标题']}.jpg`"
           :can-close="false"
           :direction="item['方向']"
           :size="getPaintingSize(item['尺寸'])"