{"id":669,"date":"2026-08-31T09:24:10","date_gmt":"2026-08-31T02:24:10","guid":{"rendered":"https:\/\/proudworldtravel.com\/?p=669"},"modified":"2026-09-07T18:05:44","modified_gmt":"2026-09-07T11:05:44","slug":"zh_%e0%b8%ab%e0%b8%a2%e0%b8%b8%e0%b8%99%e0%b9%80%e0%b8%89%e0%b8%b4%e0%b8%99-%e0%b8%81%e0%b8%a7%e0%b8%99%e0%b8%ad%e0%b8%b9%e0%b9%8b%e0%b8%8b%e0%b8%b2%e0%b8%99-6-%e0%b8%a7%e0%b8%b1%e0%b8%995%e0%b8%84","status":"publish","type":"post","link":"https:\/\/proudworldtravel.com\/?p=669","title":{"rendered":"ZH_\u0e2b\u0e22\u0e38\u0e19\u0e40\u0e09\u0e34\u0e19-\u0e01\u0e27\u0e19\u0e2d\u0e39\u0e4b\u0e0b\u0e32\u0e19 6 \u0e27\u0e31\u0e195\u0e04\u0e37\u0e19"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"669\" class=\"elementor elementor-669\" data-elementor-post-type=\"post\">\n\t\t\t\t<div class=\"elementor-element elementor-element-207ecfa5 e-flex e-con-boxed e-con e-parent\" data-id=\"207ecfa5\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-51215004 elementor-widget elementor-widget-html\" data-id=\"51215004\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div id=\"pdfSliderViewer\" class=\"pdf-slider-viewer\">\n\n  <!-- Toolbar -->\n  <div class=\"pdf-toolbar\">\n\n    <button id=\"prevPage\" class=\"nav-btn\" type=\"button\" aria-label=\"\u0e2b\u0e19\u0e49\u0e32\u0e01\u0e48\u0e2d\u0e19\u0e2b\u0e19\u0e49\u0e32\">\n      \u2039\n    <\/button>\n\n    <span id=\"pageInfo\" class=\"page-info\">\n      \u0e01\u0e33\u0e25\u0e31\u0e07\u0e42\u0e2b\u0e25\u0e14...\n    <\/span>\n\n    <button id=\"nextPage\" class=\"nav-btn\" type=\"button\" aria-label=\"\u0e2b\u0e19\u0e49\u0e32\u0e16\u0e31\u0e14\u0e44\u0e1b\">\n      \u203a\n    <\/button>\n\n    <div class=\"toolbar-divider\"><\/div>\n\n    <button id=\"zoomOut\" class=\"zoom-btn\" type=\"button\" aria-label=\"\u0e22\u0e48\u0e2d\">\n      \u2212\n    <\/button>\n\n    <button id=\"zoomReset\" class=\"zoom-reset\" type=\"button\">\n      100%\n    <\/button>\n\n    <button id=\"zoomIn\" class=\"zoom-btn\" type=\"button\" aria-label=\"\u0e02\u0e22\u0e32\u0e22\">\n      +\n    <\/button>\n\n  <\/div>\n\n\n  <!-- PDF -->\n  <div id=\"pdfCanvasWrap\" class=\"pdf-canvas-wrap\">\n\n    <canvas id=\"pdfCanvas\"><\/canvas>\n\n  <\/div>\n\n\n  <!-- Mobile Help -->\n  <div class=\"pdf-hint\">\n\n    <span class=\"hint-normal\">\n      \u0e1b\u0e31\u0e14\u0e0b\u0e49\u0e32\u0e22\/\u0e02\u0e27\u0e32\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e40\u0e1b\u0e25\u0e35\u0e48\u0e22\u0e19\u0e2b\u0e19\u0e49\u0e32 \u2022 \u0e43\u0e0a\u0e49 2 \u0e19\u0e34\u0e49\u0e27\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e0b\u0e39\u0e21\n    <\/span>\n\n    <span class=\"hint-zoomed\">\n      \u0e25\u0e32\u0e01\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e14\u0e39\u0e2a\u0e48\u0e27\u0e19\u0e15\u0e48\u0e32\u0e07 \u0e46 \u2022 \u0e01\u0e14 100% \u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e01\u0e25\u0e31\u0e1a\u0e2b\u0e19\u0e49\u0e32\u0e1b\u0e01\u0e15\u0e34\n    <\/span>\n\n  <\/div>\n\n<\/div>\n\n\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/pdf.js\/3.11.174\/pdf.min.js\"><\/script>\n\n\n<script>\n(function () {\n\n  \/* =========================================\n     PDF URL\n  ========================================== *\/\n\n  const PDF_URL =\n    \"http:\/\/proudworldtravel.com\/wp-content\/uploads\/2026\/08\/ZH_\u0e2b\u0e22\u0e38\u0e19\u0e40\u0e09\u0e34\u0e19-\u0e01\u0e27\u0e19\u0e2d\u0e39\u0e4b\u0e0b\u0e32\u0e19-6-\u0e27\u0e31\u0e195\u0e04\u0e37\u0e19-01-2.pdf\";\n\n\n  \/* =========================================\n     Elements\n  ========================================== *\/\n\n  const viewer = document.getElementById(\"pdfSliderViewer\");\n  const canvas = document.getElementById(\"pdfCanvas\");\n  const ctx = canvas.getContext(\"2d\");\n\n  const wrap = document.getElementById(\"pdfCanvasWrap\");\n\n  const pageInfo = document.getElementById(\"pageInfo\");\n\n  const prevBtn = document.getElementById(\"prevPage\");\n  const nextBtn = document.getElementById(\"nextPage\");\n\n  const zoomInBtn = document.getElementById(\"zoomIn\");\n  const zoomOutBtn = document.getElementById(\"zoomOut\");\n  const zoomResetBtn = document.getElementById(\"zoomReset\");\n\n\n  \/* =========================================\n     PDF.js\n  ========================================== *\/\n\n  pdfjsLib.GlobalWorkerOptions.workerSrc =\n    \"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/pdf.js\/3.11.174\/pdf.worker.min.js\";\n\n\n  \/* =========================================\n     Variables\n  ========================================== *\/\n\n  let pdfDoc = null;\n\n  let pageNum = 1;\n\n  let pageRendering = false;\n\n  let pendingPage = null;\n\n\n  \/* =========================================\n     Zoom\n  ========================================== *\/\n\n  let zoomLevel = 1;\n\n  const MIN_ZOOM = 1;\n  const MAX_ZOOM = 3;\n  const ZOOM_STEP = 0.25;\n\n\n  \/* =========================================\n     Swipe\n  ========================================== *\/\n\n  let touchStartX = 0;\n  let touchStartY = 0;\n\n  let touchEndX = 0;\n  let touchEndY = 0;\n\n\n  \/* =========================================\n     Pinch\n  ========================================== *\/\n\n  let isPinching = false;\n\n  let pinchStartDistance = 0;\n\n  let pinchStartZoom = 1;\n\n  let previewZoom = 1;\n\n\n  \/* =========================================\n     Available Size\n  ========================================== *\/\n\n  function getAvailableSize() {\n\n    const styles = window.getComputedStyle(wrap);\n\n    const horizontalPadding =\n      parseFloat(styles.paddingLeft) +\n      parseFloat(styles.paddingRight);\n\n    const verticalPadding =\n      parseFloat(styles.paddingTop) +\n      parseFloat(styles.paddingBottom);\n\n    return {\n\n      width:\n        Math.max(\n          100,\n          wrap.clientWidth - horizontalPadding\n        ),\n\n      height:\n        Math.max(\n          100,\n          wrap.clientHeight - verticalPadding\n        )\n\n    };\n\n  }\n\n\n  \/* =========================================\n     Update Zoom UI\n  ========================================== *\/\n\n  function updateZoomUI() {\n\n    const percent =\n      Math.round(zoomLevel * 100);\n\n    zoomResetBtn.textContent =\n      percent + \"%\";\n\n\n    zoomOutBtn.disabled =\n      zoomLevel <= MIN_ZOOM;\n\n    zoomInBtn.disabled =\n      zoomLevel >= MAX_ZOOM;\n\n\n    if (zoomLevel > 1) {\n\n      viewer.classList.add(\"is-zoomed\");\n\n    } else {\n\n      viewer.classList.remove(\"is-zoomed\");\n\n    }\n\n  }\n\n\n  \/* =========================================\n     Render PDF\n  ========================================== *\/\n\n  function renderPage(num) {\n\n    if (!pdfDoc) return;\n\n\n    pageRendering = true;\n\n\n    pdfDoc.getPage(num).then(function (page) {\n\n      const size =\n        getAvailableSize();\n\n\n      \/* Original PDF size *\/\n\n      const originalViewport =\n        page.getViewport({\n          scale: 1\n        });\n\n\n      \/*\n       * Fit PDF \u0e17\u0e31\u0e49\u0e07\u0e2b\u0e19\u0e49\u0e32\u0e43\u0e2b\u0e49\u0e1e\u0e2d\u0e14\u0e35\u0e01\u0e31\u0e1a\u0e2b\u0e19\u0e49\u0e32\u0e08\u0e2d\n       *\/\n\n      const scaleX =\n        size.width \/\n        originalViewport.width;\n\n      const scaleY =\n        size.height \/\n        originalViewport.height;\n\n\n      const fitScale =\n        Math.min(\n          scaleX,\n          scaleY\n        );\n\n\n      \/*\n       * Zoom \u0e40\u0e1e\u0e34\u0e48\u0e21\u0e08\u0e32\u0e01 Fit Scale\n       *\/\n\n      const finalScale =\n        fitScale *\n        zoomLevel;\n\n\n      const viewport =\n        page.getViewport({\n          scale: finalScale\n        });\n\n\n      \/*\n       * Retina \/ High DPI\n       *\/\n\n      const outputScale =\n        Math.min(\n          window.devicePixelRatio || 1,\n          2\n        );\n\n\n      canvas.width =\n        Math.floor(\n          viewport.width *\n          outputScale\n        );\n\n\n      canvas.height =\n        Math.floor(\n          viewport.height *\n          outputScale\n        );\n\n\n      canvas.style.width =\n        Math.floor(\n          viewport.width\n        ) + \"px\";\n\n\n      canvas.style.height =\n        Math.floor(\n          viewport.height\n        ) + \"px\";\n\n\n      const transform =\n        outputScale !== 1\n\n        ? [\n            outputScale,\n            0,\n            0,\n            outputScale,\n            0,\n            0\n          ]\n\n        : null;\n\n\n      ctx.clearRect(\n        0,\n        0,\n        canvas.width,\n        canvas.height\n      );\n\n\n      const renderContext = {\n\n        canvasContext: ctx,\n\n        transform: transform,\n\n        viewport: viewport\n\n      };\n\n\n      const renderTask =\n        page.render(\n          renderContext\n        );\n\n\n      renderTask.promise.then(function () {\n\n        pageRendering = false;\n\n\n        pageInfo.textContent =\n          \"\u0e2b\u0e19\u0e49\u0e32 \" +\n          pageNum +\n          \" \/ \" +\n          pdfDoc.numPages;\n\n\n        prevBtn.disabled =\n          pageNum <= 1;\n\n\n        nextBtn.disabled =\n          pageNum >= pdfDoc.numPages;\n\n\n        updateZoomUI();\n\n\n        \/*\n         * \u0e16\u0e49\u0e32\u0e40\u0e1b\u0e25\u0e35\u0e48\u0e22\u0e19\u0e2b\u0e19\u0e49\u0e32\u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e33\u0e25\u0e31\u0e07 Render\n         *\/\n\n        if (pendingPage !== null) {\n\n          const page =\n            pendingPage;\n\n          pendingPage = null;\n\n          renderPage(page);\n\n        }\n\n\n        \/*\n         * GTM DataLayer\n         *\/\n\n        if (\n          window.dataLayer &&\n          zoomLevel === 1\n        ) {\n\n          window.dataLayer.push({\n\n            event:\n              \"pdf_page_view\",\n\n            pdf_page_number:\n              pageNum,\n\n            pdf_total_pages:\n              pdfDoc.numPages\n\n          });\n\n        }\n\n      });\n\n    });\n\n  }\n\n\n  \/* =========================================\n     Queue Rendering\n  ========================================== *\/\n\n  function queueRenderPage(num) {\n\n    if (pageRendering) {\n\n      pendingPage = num;\n\n    } else {\n\n      renderPage(num);\n\n    }\n\n  }\n\n\n  \/* =========================================\n     Previous Page\n  ========================================== *\/\n\n  function goPrev() {\n\n    if (\n      !pdfDoc ||\n      pageNum <= 1\n    ) return;\n\n\n    pageNum--;\n\n\n    \/*\n     * \u0e40\u0e1b\u0e25\u0e35\u0e48\u0e22\u0e19\u0e2b\u0e19\u0e49\u0e32\u0e41\u0e25\u0e49\u0e27\u0e01\u0e25\u0e31\u0e1a\u0e40\u0e1b\u0e47\u0e19 Fit Screen\n     *\/\n\n    zoomLevel = 1;\n\n    updateZoomUI();\n\n    queueRenderPage(pageNum);\n\n  }\n\n\n  \/* =========================================\n     Next Page\n  ========================================== *\/\n\n  function goNext() {\n\n    if (\n      !pdfDoc ||\n      pageNum >= pdfDoc.numPages\n    ) return;\n\n\n    pageNum++;\n\n\n    \/*\n     * \u0e40\u0e1b\u0e25\u0e35\u0e48\u0e22\u0e19\u0e2b\u0e19\u0e49\u0e32\u0e41\u0e25\u0e49\u0e27\u0e01\u0e25\u0e31\u0e1a\u0e40\u0e1b\u0e47\u0e19 Fit Screen\n     *\/\n\n    zoomLevel = 1;\n\n    updateZoomUI();\n\n    queueRenderPage(pageNum);\n\n  }\n\n\n  \/* =========================================\n     Page Buttons\n  ========================================== *\/\n\n  prevBtn.addEventListener(\n    \"click\",\n    goPrev\n  );\n\n\n  nextBtn.addEventListener(\n    \"click\",\n    goNext\n  );\n\n\n  \/* =========================================\n     Zoom In\n  ========================================== *\/\n\n  zoomInBtn.addEventListener(\n    \"click\",\n    function () {\n\n      if (\n        zoomLevel >= MAX_ZOOM\n      ) return;\n\n\n      zoomLevel =\n        Math.min(\n          MAX_ZOOM,\n          zoomLevel +\n          ZOOM_STEP\n        );\n\n\n      updateZoomUI();\n\n      queueRenderPage(\n        pageNum\n      );\n\n    }\n  );\n\n\n  \/* =========================================\n     Zoom Out\n  ========================================== *\/\n\n  zoomOutBtn.addEventListener(\n    \"click\",\n    function () {\n\n      if (\n        zoomLevel <= MIN_ZOOM\n      ) return;\n\n\n      zoomLevel =\n        Math.max(\n          MIN_ZOOM,\n          zoomLevel -\n          ZOOM_STEP\n        );\n\n\n      updateZoomUI();\n\n      queueRenderPage(\n        pageNum\n      );\n\n    }\n  );\n\n\n  \/* =========================================\n     Reset Zoom\n  ========================================== *\/\n\n  zoomResetBtn.addEventListener(\n    \"click\",\n    function () {\n\n      zoomLevel = 1;\n\n      updateZoomUI();\n\n      wrap.scrollTo({\n        top: 0,\n        left: 0,\n        behavior: \"smooth\"\n      });\n\n      queueRenderPage(\n        pageNum\n      );\n\n    }\n  );\n\n\n  \/* =========================================\n     Pinch Distance\n  ========================================== *\/\n\n  function getDistance(touches) {\n\n    const x =\n      touches[0].clientX -\n      touches[1].clientX;\n\n    const y =\n      touches[0].clientY -\n      touches[1].clientY;\n\n\n    return Math.sqrt(\n      x * x +\n      y * y\n    );\n\n  }\n\n\n  \/* =========================================\n     Touch Start\n  ========================================== *\/\n\n  wrap.addEventListener(\n    \"touchstart\",\n    function (e) {\n\n      \/*\n       * PINCH\n       *\/\n\n      if (\n        e.touches.length === 2\n      ) {\n\n        isPinching = true;\n\n\n        pinchStartDistance =\n          getDistance(\n            e.touches\n          );\n\n\n        pinchStartZoom =\n          zoomLevel;\n\n\n        previewZoom =\n          zoomLevel;\n\n\n        return;\n\n      }\n\n\n      \/*\n       * SWIPE\n       *\/\n\n      if (\n        e.touches.length === 1 &&\n        zoomLevel === 1\n      ) {\n\n        touchStartX =\n          e.touches[0].clientX;\n\n        touchStartY =\n          e.touches[0].clientY;\n\n      }\n\n    },\n    {\n      passive: true\n    }\n  );\n\n\n  \/* =========================================\n     Touch Move \/ Pinch Zoom\n  ========================================== *\/\n\n  wrap.addEventListener(\n    \"touchmove\",\n    function (e) {\n\n      if (\n        !isPinching ||\n        e.touches.length !== 2\n      ) return;\n\n\n      e.preventDefault();\n\n\n      const currentDistance =\n        getDistance(\n          e.touches\n        );\n\n\n      const ratio =\n        currentDistance \/\n        pinchStartDistance;\n\n\n      previewZoom =\n        pinchStartZoom *\n        ratio;\n\n\n      previewZoom =\n        Math.max(\n          MIN_ZOOM,\n          Math.min(\n            MAX_ZOOM,\n            previewZoom\n          )\n        );\n\n\n      \/*\n       * Preview \u0e02\u0e13\u0e30\u0e01\u0e32\u0e07\u0e19\u0e34\u0e49\u0e27\n       *\/\n\n      const relativeScale =\n        previewZoom \/\n        zoomLevel;\n\n\n      canvas.style.transform =\n        \"scale(\" +\n        relativeScale +\n        \")\";\n\n\n      canvas.style.transformOrigin =\n        \"center center\";\n\n\n      zoomResetBtn.textContent =\n        Math.round(\n          previewZoom *\n          100\n        ) + \"%\";\n\n    },\n    {\n      passive: false\n    }\n  );\n\n\n  \/* =========================================\n     Touch End\n  ========================================== *\/\n\n  wrap.addEventListener(\n    \"touchend\",\n    function (e) {\n\n\n      \/*\n       * PINCH END\n       *\/\n\n      if (isPinching) {\n\n        if (\n          e.touches.length < 2\n        ) {\n\n          isPinching = false;\n\n\n          zoomLevel =\n            Math.round(\n              previewZoom *\n              4\n            ) \/ 4;\n\n\n          zoomLevel =\n            Math.max(\n              MIN_ZOOM,\n              Math.min(\n                MAX_ZOOM,\n                zoomLevel\n              )\n            );\n\n\n          canvas.style.transform =\n            \"none\";\n\n\n          updateZoomUI();\n\n\n          queueRenderPage(\n            pageNum\n          );\n\n        }\n\n\n        return;\n\n      }\n\n\n      \/*\n       * Swipe \u0e40\u0e1b\u0e25\u0e35\u0e48\u0e22\u0e19\u0e2b\u0e19\u0e49\u0e32\n       * \u0e17\u0e33\u0e07\u0e32\u0e19\u0e40\u0e09\u0e1e\u0e32\u0e30\u0e15\u0e2d\u0e19 100%\n       *\/\n\n      if (\n        zoomLevel !== 1\n      ) return;\n\n\n      if (\n        e.changedTouches.length !== 1\n      ) return;\n\n\n      touchEndX =\n        e.changedTouches[0].clientX;\n\n      touchEndY =\n        e.changedTouches[0].clientY;\n\n\n      const diffX =\n        touchStartX -\n        touchEndX;\n\n      const diffY =\n        touchStartY -\n        touchEndY;\n\n\n      \/*\n       * \u0e15\u0e49\u0e2d\u0e07\u0e40\u0e1b\u0e47\u0e19\u0e01\u0e32\u0e23\u0e1b\u0e31\u0e14\u0e41\u0e19\u0e27\u0e19\u0e2d\u0e19\u0e08\u0e23\u0e34\u0e07 \u0e46\n       *\/\n\n      if (\n        Math.abs(diffX) > 50 &&\n        Math.abs(diffX) >\n        Math.abs(diffY)\n      ) {\n\n        if (diffX > 0) {\n\n          goNext();\n\n        } else {\n\n          goPrev();\n\n        }\n\n      }\n\n    },\n    {\n      passive: true\n    }\n  );\n\n\n  \/* =========================================\n     Prevent Safari Gesture Zoom\n     \u0e40\u0e09\u0e1e\u0e32\u0e30\u0e1a\u0e23\u0e34\u0e40\u0e27\u0e13 PDF\n  ========================================== *\/\n\n  wrap.addEventListener(\n    \"gesturestart\",\n    function (e) {\n\n      e.preventDefault();\n\n    }\n  );\n\n\n  wrap.addEventListener(\n    \"gesturechange\",\n    function (e) {\n\n      e.preventDefault();\n\n    }\n  );\n\n\n  \/* =========================================\n     Resize\n  ========================================== *\/\n\n  let resizeTimer;\n\n\n  window.addEventListener(\n    \"resize\",\n    function () {\n\n      clearTimeout(\n        resizeTimer\n      );\n\n\n      resizeTimer =\n        setTimeout(\n          function () {\n\n            if (pdfDoc) {\n\n              queueRenderPage(\n                pageNum\n              );\n\n            }\n\n          },\n          250\n        );\n\n    }\n  );\n\n\n  \/* =========================================\n     Orientation\n  ========================================== *\/\n\n  window.addEventListener(\n    \"orientationchange\",\n    function () {\n\n      setTimeout(\n        function () {\n\n          if (pdfDoc) {\n\n            zoomLevel = 1;\n\n            updateZoomUI();\n\n            queueRenderPage(\n              pageNum\n            );\n\n          }\n\n        },\n        400\n      );\n\n    }\n  );\n\n\n  \/* =========================================\n     Load PDF\n  ========================================== *\/\n\n  pdfjsLib\n    .getDocument(PDF_URL)\n    .promise\n    .then(function (pdfDoc_) {\n\n      pdfDoc =\n        pdfDoc_;\n\n\n      requestAnimationFrame(\n        function () {\n\n          renderPage(\n            pageNum\n          );\n\n        }\n      );\n\n    })\n    .catch(function (error) {\n\n      console.error(\n        \"PDF Error:\",\n        error\n      );\n\n\n      pageInfo.textContent =\n        \"\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e42\u0e2b\u0e25\u0e14 PDF \u0e44\u0e14\u0e49\";\n\n    });\n\n\n})();\n<\/script>\n\n\n<style>\n\n\/* =========================================\n   Viewer\n========================================= *\/\n\n.pdf-slider-viewer {\n\n  width: 100%;\n\n  height: 100dvh;\n\n  max-width: 100%;\n\n  margin: 0 auto;\n\n  background: #eeeeee;\n\n  overflow: hidden;\n\n  box-sizing: border-box;\n\n  display: flex;\n\n  flex-direction: column;\n\n}\n\n\n\/* =========================================\n   Toolbar\n========================================= *\/\n\n.pdf-toolbar {\n\n  flex: 0 0 auto;\n\n  z-index: 20;\n\n  display: flex;\n\n  align-items: center;\n\n  justify-content: center;\n\n  gap: 8px;\n\n  padding: 9px 10px;\n\n  background: #ffffff;\n\n  border-bottom: 1px solid #dddddd;\n\n  box-sizing: border-box;\n\n  box-shadow:\n    0 2px 8px\n    rgba(0,0,0,0.08);\n\n}\n\n\n\/* =========================================\n   Navigation Buttons\n========================================= *\/\n\n.nav-btn {\n\n  width: 44px;\n\n  height: 44px;\n\n  flex: 0 0 44px;\n\n  border: none;\n\n  border-radius: 50%;\n\n  font-size: 30px;\n\n  font-weight: bold;\n\n  line-height: 1;\n\n  cursor: pointer;\n\n  background: #111111;\n\n  color: #ffffff;\n\n}\n\n\n\/* =========================================\n   Page\n========================================= *\/\n\n.page-info {\n\n  min-width: 85px;\n\n  text-align: center;\n\n  font-size: 15px;\n\n  font-weight: 600;\n\n  white-space: nowrap;\n\n}\n\n\n\/* =========================================\n   Divider\n========================================= *\/\n\n.toolbar-divider {\n\n  width: 1px;\n\n  height: 28px;\n\n  background: #dddddd;\n\n  margin: 0 3px;\n\n}\n\n\n\/* =========================================\n   Zoom\n========================================= *\/\n\n.zoom-btn {\n\n  width: 44px;\n\n  height: 44px;\n\n  flex: 0 0 44px;\n\n  border: none;\n\n  border-radius: 50%;\n\n  font-size: 28px;\n\n  font-weight: 600;\n\n  line-height: 1;\n\n  cursor: pointer;\n\n  background: #e8e8e8;\n\n  color: #111111;\n\n}\n\n\n.zoom-reset {\n\n  min-width: 62px;\n\n  height: 40px;\n\n  padding: 0 8px;\n\n  border: none;\n\n  border-radius: 8px;\n\n  background: #f1f1f1;\n\n  font-size: 14px;\n\n  font-weight: 600;\n\n  color: #111111;\n\n  cursor: pointer;\n\n}\n\n\nbutton:disabled {\n\n  opacity: 0.3;\n\n  cursor: default;\n\n}\n\n\n\/* =========================================\n   PDF Area\n========================================= *\/\n\n.pdf-canvas-wrap {\n\n  flex: 1 1 auto;\n\n  width: 100%;\n\n  min-height: 0;\n\n  padding: 6px;\n\n  box-sizing: border-box;\n\n  overflow: hidden;\n\n  display: flex;\n\n  align-items: center;\n\n  justify-content: center;\n\n  background: #eeeeee;\n\n  overscroll-behavior: contain;\n\n}\n\n\n\/* =========================================\n   Zoomed PDF\n========================================= *\/\n\n.pdf-slider-viewer.is-zoomed\n.pdf-canvas-wrap {\n\n  display: block;\n\n  overflow: auto;\n\n  -webkit-overflow-scrolling: touch;\n\n  touch-action: pan-x pan-y;\n\n  text-align: center;\n\n}\n\n\n\/* =========================================\n   Canvas\n========================================= *\/\n\n.pdf-canvas-wrap canvas {\n\n  display: block;\n\n  background: #ffffff;\n\n  margin: auto;\n\n  box-shadow:\n    0 3px 15px\n    rgba(0,0,0,0.18);\n\n}\n\n\n\/* =========================================\n   Hint\n========================================= *\/\n\n.pdf-hint {\n\n  flex: 0 0 auto;\n\n  display: none;\n\n  text-align: center;\n\n  font-size: 13px;\n\n  line-height: 1.4;\n\n  color: #555555;\n\n  padding: 7px 10px 9px;\n\n  background: #ffffff;\n\n  border-top: 1px solid #eeeeee;\n\n}\n\n\n.hint-zoomed {\n\n  display: none;\n\n}\n\n\n.pdf-slider-viewer.is-zoomed\n.hint-normal {\n\n  display: none;\n\n}\n\n\n.pdf-slider-viewer.is-zoomed\n.hint-zoomed {\n\n  display: inline;\n\n}\n\n\n\/* =========================================\n   Mobile\n========================================= *\/\n\n@media (max-width: 767px) {\n\n  .pdf-slider-viewer {\n\n    height: 100dvh;\n\n  }\n\n\n  .pdf-toolbar {\n\n    gap: 5px;\n\n    padding: 7px 5px;\n\n  }\n\n\n  .nav-btn,\n  .zoom-btn {\n\n    width: 40px;\n\n    height: 40px;\n\n    flex-basis: 40px;\n\n  }\n\n\n  .nav-btn {\n\n    font-size: 27px;\n\n  }\n\n\n  .zoom-btn {\n\n    font-size: 25px;\n\n  }\n\n\n  .page-info {\n\n    min-width: 70px;\n\n    font-size: 13px;\n\n  }\n\n\n  .zoom-reset {\n\n    min-width: 54px;\n\n    height: 38px;\n\n    font-size: 12px;\n\n  }\n\n\n  .toolbar-divider {\n\n    margin: 0 1px;\n\n  }\n\n\n  .pdf-canvas-wrap {\n\n    padding: 4px;\n\n  }\n\n\n  .pdf-hint {\n\n    display: block;\n\n    font-size: 12px;\n\n  }\n\n}\n\n\n\/* =========================================\n   Very Small Mobile\n========================================= *\/\n\n@media (max-width: 390px) {\n\n  .pdf-toolbar {\n\n    gap: 3px;\n\n    padding-left: 3px;\n\n    padding-right: 3px;\n\n  }\n\n\n  .nav-btn,\n  .zoom-btn {\n\n    width: 37px;\n\n    height: 37px;\n\n    flex-basis: 37px;\n\n  }\n\n\n  .page-info {\n\n    min-width: 62px;\n\n    font-size: 12px;\n\n  }\n\n\n  .zoom-reset {\n\n    min-width: 50px;\n\n    padding: 0 5px;\n\n  }\n\n}\n\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u2039 \u0e01\u0e33\u0e25\u0e31\u0e07\u0e42\u0e2b\u0e25\u0e14&#8230; \u203a \u2212 100% + \u0e1b\u0e31\u0e14\u0e0b\u0e49\u0e32\u0e22\/\u0e02\u0e27\u0e32\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e40\u0e1b\u0e25\u0e35\u0e48\u0e22\u0e19\u0e2b\u0e19\u0e49\u0e32 \u2022 \u0e43\u0e0a\u0e49 2 \u0e19\u0e34\u0e49\u0e27\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e0b\u0e39\u0e21 \u0e25\u0e32\u0e01\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e14\u0e39\u0e2a\u0e48\u0e27\u0e19\u0e15\u0e48\u0e32\u0e07 \u0e46 \u2022 \u0e01\u0e14 100% \u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e01\u0e25\u0e31\u0e1a\u0e2b\u0e19\u0e49\u0e32\u0e1b\u0e01\u0e15\u0e34<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-669","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.7 (Yoast SEO v27.1.1) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>ZH_\u0e2b\u0e22\u0e38\u0e19\u0e40\u0e09\u0e34\u0e19-\u0e01\u0e27\u0e19\u0e2d\u0e39\u0e4b\u0e0b\u0e32\u0e19 6 \u0e27\u0e31\u0e195\u0e04\u0e37\u0e19 - Proud World Travel<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/proudworldtravel.com\/?p=669\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ZH_\u0e2b\u0e22\u0e38\u0e19\u0e40\u0e09\u0e34\u0e19-\u0e01\u0e27\u0e19\u0e2d\u0e39\u0e4b\u0e0b\u0e32\u0e19 6 \u0e27\u0e31\u0e195\u0e04\u0e37\u0e19\" \/>\n<meta property=\"og:description\" content=\"\u2039 \u0e01\u0e33\u0e25\u0e31\u0e07\u0e42\u0e2b\u0e25\u0e14&#8230; \u203a \u2212 100% + \u0e1b\u0e31\u0e14\u0e0b\u0e49\u0e32\u0e22\/\u0e02\u0e27\u0e32\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e40\u0e1b\u0e25\u0e35\u0e48\u0e22\u0e19\u0e2b\u0e19\u0e49\u0e32 \u2022 \u0e43\u0e0a\u0e49 2 \u0e19\u0e34\u0e49\u0e27\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e0b\u0e39\u0e21 \u0e25\u0e32\u0e01\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e14\u0e39\u0e2a\u0e48\u0e27\u0e19\u0e15\u0e48\u0e32\u0e07 \u0e46 \u2022 \u0e01\u0e14 100% \u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e01\u0e25\u0e31\u0e1a\u0e2b\u0e19\u0e49\u0e32\u0e1b\u0e01\u0e15\u0e34\" \/>\n<meta property=\"og:url\" content=\"https:\/\/proudworldtravel.com\/?p=669\" \/>\n<meta property=\"og:site_name\" content=\"Proud World Travel\" \/>\n<meta property=\"article:published_time\" content=\"2026-08-31T02:24:10+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-07T11:05:44+00:00\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/proudworldtravel.com\/?p=669#article\",\"isPartOf\":{\"@id\":\"https:\/\/proudworldtravel.com\/?p=669\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/proudworldtravel.com\/#\/schema\/person\/7769f4ef3492bb1a7d068c2bd6dff957\"},\"headline\":\"ZH_\u0e2b\u0e22\u0e38\u0e19\u0e40\u0e09\u0e34\u0e19-\u0e01\u0e27\u0e19\u0e2d\u0e39\u0e4b\u0e0b\u0e32\u0e19 6 \u0e27\u0e31\u0e195\u0e04\u0e37\u0e19\",\"datePublished\":\"2026-08-31T02:24:10+00:00\",\"dateModified\":\"2026-09-07T11:05:44+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/proudworldtravel.com\/?p=669\"},\"wordCount\":2,\"commentCount\":0,\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/proudworldtravel.com\/?p=669#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/proudworldtravel.com\/?p=669\",\"url\":\"https:\/\/proudworldtravel.com\/?p=669\",\"name\":\"ZH_\u0e2b\u0e22\u0e38\u0e19\u0e40\u0e09\u0e34\u0e19-\u0e01\u0e27\u0e19\u0e2d\u0e39\u0e4b\u0e0b\u0e32\u0e19 6 \u0e27\u0e31\u0e195\u0e04\u0e37\u0e19 - Proud World Travel\",\"isPartOf\":{\"@id\":\"https:\/\/proudworldtravel.com\/#website\"},\"datePublished\":\"2026-08-31T02:24:10+00:00\",\"dateModified\":\"2026-09-07T11:05:44+00:00\",\"author\":{\"@id\":\"https:\/\/proudworldtravel.com\/#\/schema\/person\/7769f4ef3492bb1a7d068c2bd6dff957\"},\"breadcrumb\":{\"@id\":\"https:\/\/proudworldtravel.com\/?p=669#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/proudworldtravel.com\/?p=669\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/proudworldtravel.com\/?p=669#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/proudworldtravel.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ZH_\u0e2b\u0e22\u0e38\u0e19\u0e40\u0e09\u0e34\u0e19-\u0e01\u0e27\u0e19\u0e2d\u0e39\u0e4b\u0e0b\u0e32\u0e19 6 \u0e27\u0e31\u0e195\u0e04\u0e37\u0e19\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/proudworldtravel.com\/#website\",\"url\":\"https:\/\/proudworldtravel.com\/\",\"name\":\"Proud World Travel\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/proudworldtravel.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/proudworldtravel.com\/#\/schema\/person\/7769f4ef3492bb1a7d068c2bd6dff957\",\"name\":\"admin\",\"sameAs\":[\"https:\/\/proudworldtravel.com\"],\"url\":\"https:\/\/proudworldtravel.com\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"ZH_\u0e2b\u0e22\u0e38\u0e19\u0e40\u0e09\u0e34\u0e19-\u0e01\u0e27\u0e19\u0e2d\u0e39\u0e4b\u0e0b\u0e32\u0e19 6 \u0e27\u0e31\u0e195\u0e04\u0e37\u0e19 - Proud World Travel","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/proudworldtravel.com\/?p=669","og_locale":"en_US","og_type":"article","og_title":"ZH_\u0e2b\u0e22\u0e38\u0e19\u0e40\u0e09\u0e34\u0e19-\u0e01\u0e27\u0e19\u0e2d\u0e39\u0e4b\u0e0b\u0e32\u0e19 6 \u0e27\u0e31\u0e195\u0e04\u0e37\u0e19","og_description":"\u2039 \u0e01\u0e33\u0e25\u0e31\u0e07\u0e42\u0e2b\u0e25\u0e14&#8230; \u203a \u2212 100% + \u0e1b\u0e31\u0e14\u0e0b\u0e49\u0e32\u0e22\/\u0e02\u0e27\u0e32\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e40\u0e1b\u0e25\u0e35\u0e48\u0e22\u0e19\u0e2b\u0e19\u0e49\u0e32 \u2022 \u0e43\u0e0a\u0e49 2 \u0e19\u0e34\u0e49\u0e27\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e0b\u0e39\u0e21 \u0e25\u0e32\u0e01\u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e14\u0e39\u0e2a\u0e48\u0e27\u0e19\u0e15\u0e48\u0e32\u0e07 \u0e46 \u2022 \u0e01\u0e14 100% \u0e40\u0e1e\u0e37\u0e48\u0e2d\u0e01\u0e25\u0e31\u0e1a\u0e2b\u0e19\u0e49\u0e32\u0e1b\u0e01\u0e15\u0e34","og_url":"https:\/\/proudworldtravel.com\/?p=669","og_site_name":"Proud World Travel","article_published_time":"2026-08-31T02:24:10+00:00","article_modified_time":"2026-09-07T11:05:44+00:00","author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"admin","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/proudworldtravel.com\/?p=669#article","isPartOf":{"@id":"https:\/\/proudworldtravel.com\/?p=669"},"author":{"name":"admin","@id":"https:\/\/proudworldtravel.com\/#\/schema\/person\/7769f4ef3492bb1a7d068c2bd6dff957"},"headline":"ZH_\u0e2b\u0e22\u0e38\u0e19\u0e40\u0e09\u0e34\u0e19-\u0e01\u0e27\u0e19\u0e2d\u0e39\u0e4b\u0e0b\u0e32\u0e19 6 \u0e27\u0e31\u0e195\u0e04\u0e37\u0e19","datePublished":"2026-08-31T02:24:10+00:00","dateModified":"2026-09-07T11:05:44+00:00","mainEntityOfPage":{"@id":"https:\/\/proudworldtravel.com\/?p=669"},"wordCount":2,"commentCount":0,"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/proudworldtravel.com\/?p=669#respond"]}]},{"@type":"WebPage","@id":"https:\/\/proudworldtravel.com\/?p=669","url":"https:\/\/proudworldtravel.com\/?p=669","name":"ZH_\u0e2b\u0e22\u0e38\u0e19\u0e40\u0e09\u0e34\u0e19-\u0e01\u0e27\u0e19\u0e2d\u0e39\u0e4b\u0e0b\u0e32\u0e19 6 \u0e27\u0e31\u0e195\u0e04\u0e37\u0e19 - Proud World Travel","isPartOf":{"@id":"https:\/\/proudworldtravel.com\/#website"},"datePublished":"2026-08-31T02:24:10+00:00","dateModified":"2026-09-07T11:05:44+00:00","author":{"@id":"https:\/\/proudworldtravel.com\/#\/schema\/person\/7769f4ef3492bb1a7d068c2bd6dff957"},"breadcrumb":{"@id":"https:\/\/proudworldtravel.com\/?p=669#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/proudworldtravel.com\/?p=669"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/proudworldtravel.com\/?p=669#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/proudworldtravel.com\/"},{"@type":"ListItem","position":2,"name":"ZH_\u0e2b\u0e22\u0e38\u0e19\u0e40\u0e09\u0e34\u0e19-\u0e01\u0e27\u0e19\u0e2d\u0e39\u0e4b\u0e0b\u0e32\u0e19 6 \u0e27\u0e31\u0e195\u0e04\u0e37\u0e19"}]},{"@type":"WebSite","@id":"https:\/\/proudworldtravel.com\/#website","url":"https:\/\/proudworldtravel.com\/","name":"Proud World Travel","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/proudworldtravel.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/proudworldtravel.com\/#\/schema\/person\/7769f4ef3492bb1a7d068c2bd6dff957","name":"admin","sameAs":["https:\/\/proudworldtravel.com"],"url":"https:\/\/proudworldtravel.com\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/proudworldtravel.com\/index.php?rest_route=\/wp\/v2\/posts\/669","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/proudworldtravel.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/proudworldtravel.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/proudworldtravel.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/proudworldtravel.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=669"}],"version-history":[{"count":10,"href":"https:\/\/proudworldtravel.com\/index.php?rest_route=\/wp\/v2\/posts\/669\/revisions"}],"predecessor-version":[{"id":695,"href":"https:\/\/proudworldtravel.com\/index.php?rest_route=\/wp\/v2\/posts\/669\/revisions\/695"}],"wp:attachment":[{"href":"https:\/\/proudworldtravel.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=669"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/proudworldtravel.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=669"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/proudworldtravel.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=669"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}