{"id":289,"date":"2026-04-19T15:38:24","date_gmt":"2026-04-19T15:38:24","guid":{"rendered":"https:\/\/price.ho-shi.com\/?page_id=289"},"modified":"2026-04-19T16:11:37","modified_gmt":"2026-04-19T16:11:37","slug":"%e0%b8%a3%e0%b8%b2%e0%b8%84%e0%b8%b2%e0%b8%aa%e0%b8%81%e0%b8%a3%e0%b8%b5%e0%b8%99-dtg-%e0%b8%84%e0%b8%ad%e0%b8%95%e0%b8%95%e0%b8%ad%e0%b8%99-100","status":"publish","type":"page","link":"https:\/\/price.ho-shi.com\/?page_id=289","title":{"rendered":"\u0e23\u0e32\u0e04\u0e32\u0e2a\u0e01\u0e23\u0e35\u0e19 DTG \u0e04\u0e2d\u0e15\u0e15\u0e2d\u0e19 100%"},"content":{"rendered":"<div class=\"wpb-content-wrapper\"><p>[vc_row][vc_column][vc_column_text]<\/p>\n<p style=\"text-align: center;\">        <div class=\"hoshi-dtg-wrap\">\n          <div class=\"hoshi-dtg-title hoshi-title-banner\">\n            <h1>\u0e42\u0e1b\u0e23\u0e41\u0e01\u0e23\u0e21\u0e04\u0e33\u0e19\u0e27\u0e13\u0e23\u0e32\u0e04\u0e32\u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e1e\u0e23\u0e49\u0e2d\u0e21\u0e2a\u0e01\u0e23\u0e35\u0e19 DTG<\/h1>\n            <p><b>\u0e2a\u0e33\u0e04\u0e31\u0e0d<\/b> \u0e40\u0e25\u0e37\u0e2d\u0e01\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2a\u0e01\u0e23\u0e35\u0e19 DTG (\u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e14\u0e33 \u0e2b\u0e23\u0e37\u0e2d \u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e2a\u0e35) \u0e43\u0e2b\u0e49\u0e15\u0e23\u0e07\u0e15\u0e32\u0e21\u0e08\u0e23\u0e34\u0e07<br><span class=\"hoshi-yellow-note\">\u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e04\u0e2d\u0e15\u0e15\u0e2d\u0e19 100% \u0e40\u0e17\u0e48\u0e32\u0e19\u0e31\u0e49\u0e19<\/span><\/p>\n          <\/div>\n\n          <div class=\"hoshi-dtg-grid\">\n            <div class=\"hoshi-dtg-card\">\n              <h2>\u0e01\u0e23\u0e2d\u0e01\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e2d\u0e2d\u0e40\u0e14\u0e2d\u0e23\u0e4c<\/h2>\n              <p class=\"hoshi-dtg-sub\">\u0e01\u0e23\u0e2d\u0e01\u0e08\u0e33\u0e19\u0e27\u0e19\u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e15\u0e32\u0e21\u0e44\u0e0b\u0e2a\u0e4c \u0e40\u0e25\u0e37\u0e2d\u0e01\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2a\u0e01\u0e23\u0e35\u0e19 \u0e41\u0e25\u0e30\u0e23\u0e30\u0e1a\u0e38\u0e08\u0e33\u0e19\u0e27\u0e19\u0e08\u0e38\u0e14\u0e2a\u0e01\u0e23\u0e35\u0e19\u0e02\u0e2d\u0e07\u0e41\u0e15\u0e48\u0e25\u0e30\u0e02\u0e19\u0e32\u0e14 \u0e40\u0e0a\u0e48\u0e19 A7 = 2 \u0e08\u0e38\u0e14, A3+ = 1 \u0e08\u0e38\u0e14<\/p>\n\n              <div class=\"hoshi-dtg-section\">\n                <h3>1) \u0e08\u0e33\u0e19\u0e27\u0e19\u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e15\u0e32\u0e21\u0e44\u0e0b\u0e2a\u0e4c<\/h3>\n                <div class=\"hoshi-shirt-grid\">\n                  <div class=\"hoshi-field\"><label for=\"hoshi-xs\">XS<\/label><input id=\"hoshi-xs\" type=\"number\" min=\"0\" value=\"0\" inputmode=\"numeric\"><\/div>\n                  <div class=\"hoshi-field\"><label for=\"hoshi-s\">S<\/label><input id=\"hoshi-s\" type=\"number\" min=\"0\" value=\"0\" inputmode=\"numeric\"><\/div>\n                  <div class=\"hoshi-field\"><label for=\"hoshi-m\">M<\/label><input id=\"hoshi-m\" type=\"number\" min=\"0\" value=\"0\" inputmode=\"numeric\"><\/div>\n                  <div class=\"hoshi-field\"><label for=\"hoshi-l\">L<\/label><input id=\"hoshi-l\" type=\"number\" min=\"0\" value=\"0\" inputmode=\"numeric\"><\/div>\n                  <div class=\"hoshi-field\"><label for=\"hoshi-xl\">XL<\/label><input id=\"hoshi-xl\" type=\"number\" min=\"0\" value=\"0\" inputmode=\"numeric\"><\/div>\n                <\/div>\n              <\/div>\n\n              <div class=\"hoshi-dtg-section\">\n                <h3>2) \u0e40\u0e25\u0e37\u0e2d\u0e01\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2a\u0e01\u0e23\u0e35\u0e19\u0e41\u0e25\u0e30\u0e02\u0e19\u0e32\u0e14\u0e2a\u0e01\u0e23\u0e35\u0e19<\/h3>\n                <div class=\"hoshi-two-col\">\n                  <div class=\"hoshi-field\">\n                    <label for=\"hoshi-printType\">\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2a\u0e01\u0e23\u0e35\u0e19 DTG<\/label>\n                    <select id=\"hoshi-printType\">\n                      <option value=\"white\">DTG \u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e2a\u0e35\u0e02\u0e32\u0e27<\/option>\n                      <option value=\"color\">DTG \u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e2a\u0e35<\/option>\n                    <\/select>\n                  <\/div>\n                  <div class=\"hoshi-field\">\n                    <label>\u0e23\u0e39\u0e1b\u0e41\u0e1a\u0e1a\u0e01\u0e32\u0e23\u0e04\u0e34\u0e14\u0e23\u0e32\u0e04\u0e32 (\u0e02\u0e19\u0e32\u0e14+\u0e08\u0e38\u0e14)<\/label>\n                    <div class=\"hoshi-static-box\">\u0e04\u0e34\u0e14\u0e15\u0e32\u0e21\u0e02\u0e19\u0e32\u0e14\u0e2a\u0e01\u0e23\u0e35\u0e19 \u00d7 \u0e08\u0e33\u0e19\u0e27\u0e19\u0e08\u0e38\u0e14<\/div>\n                  <\/div>\n                <\/div>\n\n                <div class=\"hoshi-hint\">\n                  \u0e23\u0e30\u0e1a\u0e38\u0e08\u0e33\u0e19\u0e27\u0e19\u0e08\u0e38\u0e14\u0e02\u0e2d\u0e07\u0e41\u0e15\u0e48\u0e25\u0e30\u0e02\u0e19\u0e32\u0e14\u0e44\u0e14\u0e49\u0e42\u0e14\u0e22\u0e15\u0e23\u0e07 \u0e40\u0e0a\u0e48\u0e19 A7 = 2 \u0e08\u0e38\u0e14 \u0e41\u0e25\u0e30 A3+ = 1 \u0e08\u0e38\u0e14 \u0e23\u0e30\u0e1a\u0e1a\u0e08\u0e30\u0e04\u0e33\u0e19\u0e27\u0e13\u0e23\u0e27\u0e21\u0e43\u0e2b\u0e49\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34\n                <\/div>\n\n                <div class=\"hoshi-print-grid\" style=\"margin-top:12px;\">\n                  <div class=\"hoshi-field\"><label for=\"hoshi-psA7\">A7<\/label><input id=\"hoshi-psA7\" type=\"number\" min=\"0\" value=\"0\" inputmode=\"numeric\"><\/div>\n                  <div class=\"hoshi-field\"><label for=\"hoshi-psA6\">A6<\/label><input id=\"hoshi-psA6\" type=\"number\" min=\"0\" value=\"0\" inputmode=\"numeric\"><\/div>\n                  <div class=\"hoshi-field\"><label for=\"hoshi-psA5\">A5<\/label><input id=\"hoshi-psA5\" type=\"number\" min=\"0\" value=\"0\" inputmode=\"numeric\"><\/div>\n                  <div class=\"hoshi-field\"><label for=\"hoshi-psA4\">A4<\/label><input id=\"hoshi-psA4\" type=\"number\" min=\"0\" value=\"0\" inputmode=\"numeric\"><\/div>\n                  <div class=\"hoshi-field\"><label for=\"hoshi-psA4p\">A4+<\/label><input id=\"hoshi-psA4p\" type=\"number\" min=\"0\" value=\"0\" inputmode=\"numeric\"><\/div>\n                  <div class=\"hoshi-field\"><label for=\"hoshi-psA3p\">A3+<\/label><input id=\"hoshi-psA3p\" type=\"number\" min=\"0\" value=\"0\" inputmode=\"numeric\"><\/div>\n                <\/div>\n                <div class=\"hoshi-print-grid hoshi-print-grid-second\">\n                  <div class=\"hoshi-field\"><label for=\"hoshi-psA2\">A2<\/label><input id=\"hoshi-psA2\" type=\"number\" min=\"0\" value=\"0\" inputmode=\"numeric\"><\/div>\n                <\/div>\n              <\/div>\n\n              <div class=\"hoshi-actions\">\n                <button class=\"hoshi-btn-secondary\" type=\"button\" onclick=\"hoshiDTGReset()\">\u0e25\u0e49\u0e32\u0e07\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25<\/button>\n              <\/div>\n            <\/div>\n\n            <div class=\"hoshi-dtg-card\">\n              <h2>\u0e2a\u0e23\u0e38\u0e1b\u0e23\u0e32\u0e04\u0e32<\/h2>\n              <div id=\"hoshi-summary\" class=\"hoshi-summary-box\">\n                <div class=\"hoshi-warn\">\u0e01\u0e23\u0e38\u0e13\u0e32\u0e01\u0e23\u0e2d\u0e01\u0e08\u0e33\u0e19\u0e27\u0e19\u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e41\u0e25\u0e30\u0e08\u0e33\u0e19\u0e27\u0e19\u0e08\u0e38\u0e14\u0e2a\u0e01\u0e23\u0e35\u0e19 \u0e23\u0e30\u0e1a\u0e1a\u0e08\u0e30\u0e04\u0e33\u0e19\u0e27\u0e13\u0e43\u0e2b\u0e49\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34<\/div>\n              <\/div>\n            <\/div>\n          <\/div>\n\n          <div class=\"hoshi-dtg-card\" style=\"margin-top:18px;\">\n            <span class=\"hoshi-pill\">\u0e15\u0e32\u0e23\u0e32\u0e07\u0e2d\u0e49\u0e32\u0e07\u0e2d\u0e34\u0e07\u0e02\u0e31\u0e49\u0e19\u0e1a\u0e31\u0e19\u0e44\u0e14\u0e17\u0e35\u0e48\u0e23\u0e30\u0e1a\u0e1a\u0e43\u0e0a\u0e49\u0e04\u0e33\u0e19\u0e27\u0e13<\/span>\n            <div id=\"hoshi-rateTables\"><\/div>\n          <\/div>\n        <\/div>\n\n<style>\n:root{\n  --hoshi-bg:#0e0f10;\n  --hoshi-panel:#17191b;\n  --hoshi-panel-2:#111315;\n  --hoshi-line:#2a2f33;\n  --hoshi-text:#f5f7f8;\n  --hoshi-muted:#aeb7bd;\n  --hoshi-green:#24c26a;\n  --hoshi-green-2:#169a52;\n  --hoshi-white:#ffffff;\n}\n.hoshi-dtg-wrap *{box-sizing:border-box}\n.hoshi-dtg-wrap{\n  color:var(--hoshi-text);\n  font-family:Arial, Helvetica, sans-serif;\n}\n.hoshi-dtg-title{text-align:center;margin-bottom:18px}\n.hoshi-title-banner{\n  background:#0f1114;\n  border:1px solid #232a30;\n  border-radius:20px;\n  padding:22px 18px;\n  box-shadow:0 10px 28px rgba(0,0,0,.20);\n}\n.hoshi-dtg-title h1{margin:0 0 10px;font-size:clamp(26px,4vw,40px);color:#ffffff;line-height:1.2}\n.hoshi-dtg-title p{margin:0;color:#e8eef2;font-size:16px;line-height:1.6}\n.hoshi-dtg-title p b{color:#ffffff}\n.hoshi-yellow-note{\n  display:block;\n  margin-top:8px;\n  font-size:24px;\n  font-weight:900;\n  color:#ffd84d;\n  line-height:1.25;\n  text-shadow:0 1px 0 rgba(0,0,0,.35);\n}\n.hoshi-dtg-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}\n.hoshi-dtg-card{\n  background:rgba(23,25,27,.94);\n  border:1px solid var(--hoshi-line);\n  border-radius:20px;\n  padding:18px;\n  box-shadow:0 10px 30px rgba(0,0,0,.25);\n}\n.hoshi-dtg-card h2{margin:0 0 14px;font-size:22px;color:var(--hoshi-green)}\n.hoshi-dtg-sub{margin:0 0 14px;color:var(--hoshi-muted);font-size:14px;line-height:1.5}\n.hoshi-dtg-section{\n  margin-bottom:18px;\n  padding:14px;\n  border:1px solid var(--hoshi-line);\n  border-radius:16px;\n  background:var(--hoshi-panel-2);\n}\n.hoshi-dtg-section h3{margin:0 0 12px;font-size:16px;color:#dff7ea}\n.hoshi-shirt-grid,.hoshi-print-grid{\n  display:grid;\n  grid-template-columns:repeat(6,minmax(0,1fr));\n  gap:10px;\n}\n.hoshi-print-grid-second{\n  margin-top:10px;\n  grid-template-columns:repeat(6,minmax(0,1fr));\n}\n.hoshi-field label{\n  display:block;\n  margin-bottom:6px;\n  font-size:13px;\n  color:var(--hoshi-muted);\n  font-weight:700;\n}\n.hoshi-dtg-wrap input[type=\"number\"],\n.hoshi-dtg-wrap select{\n  width:100%;\n  height:46px;\n  border-radius:12px;\n  border:1px solid #364048;\n  background:#0f1214;\n  color:#ffffff !important;\n  padding:0 12px;\n  font-size:16px;\n  outline:none;\n  appearance:none;\n  -webkit-appearance:none;\n  -moz-appearance:none;\n}\n.hoshi-dtg-wrap input[type=\"number\"]::-webkit-outer-spin-button,\n.hoshi-dtg-wrap input[type=\"number\"]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}\n.hoshi-dtg-wrap input[type=\"number\"]{ -moz-appearance:textfield; }\n.hoshi-dtg-wrap input[type=\"number\"]:focus,\n.hoshi-dtg-wrap select:focus{\n  border-color:var(--hoshi-green);\n  box-shadow:0 0 0 3px rgba(36,194,106,.15);\n}\n.hoshi-two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}\n.hoshi-static-box{\n  height:46px;\n  display:flex;\n  align-items:center;\n  padding:0 12px;\n  border:1px solid #364048;\n  border-radius:12px;\n  background:#0f1214;\n  color:#dff8ea;\n  font-weight:700;\n}\n.hoshi-hint{\n  margin-top:10px;\n  padding:10px 12px;\n  background:rgba(36,194,106,.08);\n  border:1px solid rgba(36,194,106,.22);\n  border-radius:12px;\n  color:#def7e8;\n  font-size:13px;\n  line-height:1.5;\n}\n.hoshi-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}\n.hoshi-btn-secondary{\n  border:none;border-radius:12px;padding:12px 16px;font-size:15px;font-weight:700;cursor:pointer;\n  background:#1c2126;color:#eef3f6;border:1px solid #333b42;\n}\n.hoshi-summary-box{display:grid;gap:12px}\n.hoshi-summary-section{\n  padding:16px;border:1px solid var(--hoshi-line);border-radius:16px;background:#0f1214;\n}\n.hoshi-summary-section h3{margin:0 0 10px;color:#eafff2;font-size:18px}\n.hoshi-line-item{\n  display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px dashed #293138;\n}\n.hoshi-line-item:last-child{border-bottom:none}\n.hoshi-line-left{color:#eaf1f4}\n.hoshi-line-right{font-weight:700;color:#ffffff;text-align:right;white-space:nowrap}\n.hoshi-minor-detail .hoshi-line-left,\n.hoshi-minor-detail .hoshi-line-right{\n  font-size:12px;\n  color:#93a0a8;\n  font-weight:500;\n}\n.hoshi-grand{\n  padding:16px;border-radius:16px;background:linear-gradient(180deg, rgba(36,194,106,.18), rgba(36,194,106,.07));\n  border:1px solid rgba(36,194,106,.35);\n}\n.hoshi-grand .hoshi-big{font-size:34px;font-weight:900;color:#eafff2;margin-top:6px}\n.hoshi-small{color:var(--hoshi-muted);font-size:12px;line-height:1.5}\n.hoshi-dtg-wrap table{\n  width:100%;border-collapse:collapse;overflow:hidden;border-radius:14px;margin-top:8px;font-size:14px;\n}\n.hoshi-dtg-wrap th,.hoshi-dtg-wrap td{border:1px solid #2d3338;padding:10px 8px;text-align:center}\n.hoshi-dtg-wrap th{background:#122017;color:#dcf7e8;font-weight:700}\n.hoshi-dtg-wrap td{background:#0e1113;color:#eef3f6}\n.hoshi-match{outline:2px solid var(--hoshi-green);outline-offset:-2px;background:#112117 !important;font-weight:800}\n.hoshi-warn{\n  color:#ffd7d7;background:rgba(255,107,107,.08);border:1px solid rgba(255,107,107,.2);border-radius:12px;padding:10px 12px;font-size:13px;\n}\n.hoshi-pill{\n  display:inline-block;padding:6px 10px;border-radius:999px;border:1px solid rgba(36,194,106,.25);background:rgba(36,194,106,.1);color:#dff8ea;font-size:12px;font-weight:700;margin-bottom:8px;\n}\n@media (max-width: 920px){.hoshi-dtg-grid{grid-template-columns:1fr}}\n@media (max-width: 720px){\n  .hoshi-dtg-card{padding:14px}\n  .hoshi-shirt-grid,.hoshi-print-grid{grid-template-columns:repeat(2,minmax(0,1fr))}\n  .hoshi-dtg-wrap input[type=\"number\"], .hoshi-dtg-wrap select{height:52px;font-size:16px}\n  .hoshi-dtg-wrap th,.hoshi-dtg-wrap td{padding:8px 6px;font-size:12px}\n  .hoshi-grand .hoshi-big{font-size:28px}\n  .hoshi-title-banner{padding:18px 14px;border-radius:16px}\n  .hoshi-dtg-title p{font-size:15px}\n  .hoshi-yellow-note{font-size:21px}\n}\n<\/style>\n\n<script>\n(function(){\n  const garmentRates = [\n    { label: \"1\u201311 \u0e15\u0e31\u0e27\", min: 1, max: 11, rates: { XS:130, S:130, M:130, L:130, XL:140 } },\n    { label: \"12\u201348 \u0e15\u0e31\u0e27\", min: 12, max: 48, rates: { XS:125, S:125, M:125, L:125, XL:135 } },\n    { label: \"49\u2013100 \u0e15\u0e31\u0e27\", min: 49, max: 100, rates: { XS:120, S:120, M:120, L:120, XL:130 } },\n    { label: \"101\u2013300 \u0e15\u0e31\u0e27\", min: 101, max: 300, rates: { XS:115, S:115, M:115, L:115, XL:125 } },\n    { label: \"301\u2013500 \u0e15\u0e31\u0e27\", min: 301, max: 500, rates: { XS:102, S:102, M:102, L:102, XL:112 } },\n    { label: \"500 \u0e15\u0e31\u0e27\u0e02\u0e36\u0e49\u0e19\u0e44\u0e1b\", min: 501, max: Infinity, rates: { XS:100, S:100, M:100, L:100, XL:110 } }\n  ];\n\n  const dtgWhiteRates = [\n    { label:\"1\u20133\", min:1, max:3, rates:{ \"A7\":96, \"A6\":128, \"A5\":136, \"A4\":160, \"A4+\":176, \"A3+\":200, \"A2\":224 } },\n    { label:\"4\u20139\", min:4, max:9, rates:{ \"A7\":88, \"A6\":120, \"A5\":128, \"A4\":152, \"A4+\":168, \"A3+\":192, \"A2\":216 } },\n    { label:\"10\u201324\", min:10, max:24, rates:{ \"A7\":80, \"A6\":112, \"A5\":120, \"A4\":144, \"A4+\":160, \"A3+\":184, \"A2\":208 } },\n    { label:\"25\u201350\", min:25, max:50, rates:{ \"A7\":72, \"A6\":104, \"A5\":112, \"A4\":136, \"A4+\":152, \"A3+\":176, \"A2\":200 } },\n    { label:\"51\u2013100\", min:51, max:100, rates:{ \"A7\":64, \"A6\":96, \"A5\":104, \"A4\":128, \"A4+\":144, \"A3+\":168, \"A2\":192 } },\n    { label:\"101\u2013300\", min:101, max:300, rates:{ \"A7\":56, \"A6\":80, \"A5\":96, \"A4\":120, \"A4+\":136, \"A3+\":160, \"A2\":184 } },\n    { label:\"301\u2013500\", min:301, max:500, rates:{ \"A7\":48, \"A6\":72, \"A5\":88, \"A4\":112, \"A4+\":128, \"A3+\":152, \"A2\":176 } },\n    { label:\"501\u20131000\", min:501, max:1000, rates:{ \"A7\":40, \"A6\":64, \"A5\":80, \"A4\":104, \"A4+\":120, \"A3+\":144, \"A2\":168 } },\n    { label:\"1000+\", min:1001, max:Infinity, rates:{ \"A7\":28, \"A6\":52, \"A5\":68, \"A4\":92, \"A4+\":108, \"A3+\":132, \"A2\":156 } }\n  ];\n\n  const dtgColorRates = [\n    { label:\"1\u20133\", min:1, max:3, rates:{ \"A7\":156, \"A6\":208, \"A5\":221, \"A4\":260, \"A4+\":286, \"A3+\":325, \"A2\":364 } },\n    { label:\"4\u20139\", min:4, max:9, rates:{ \"A7\":143, \"A6\":195, \"A5\":208, \"A4\":247, \"A4+\":273, \"A3+\":312, \"A2\":351 } },\n    { label:\"10\u201324\", min:10, max:24, rates:{ \"A7\":130, \"A6\":182, \"A5\":195, \"A4\":234, \"A4+\":260, \"A3+\":299, \"A2\":338 } },\n    { label:\"25\u201350\", min:25, max:50, rates:{ \"A7\":117, \"A6\":169, \"A5\":182, \"A4\":221, \"A4+\":247, \"A3+\":286, \"A2\":325 } },\n    { label:\"51\u2013100\", min:51, max:100, rates:{ \"A7\":104, \"A6\":156, \"A5\":169, \"A4\":208, \"A4+\":234, \"A3+\":273, \"A2\":312 } },\n    { label:\"101\u2013300\", min:101, max:300, rates:{ \"A7\":91, \"A6\":130, \"A5\":156, \"A4\":195, \"A4+\":221, \"A3+\":260, \"A2\":299 } },\n    { label:\"301\u2013500\", min:301, max:500, rates:{ \"A7\":78, \"A6\":117, \"A5\":143, \"A4\":182, \"A4+\":208, \"A3+\":247, \"A2\":286 } },\n    { label:\"501\u20131000\", min:501, max:1000, rates:{ \"A7\":65, \"A6\":104, \"A5\":130, \"A4\":169, \"A4+\":195, \"A3+\":234, \"A2\":273 } },\n    { label:\"1000+\", min:1001, max:Infinity, rates:{ \"A7\":45, \"A6\":84, \"A5\":110, \"A4\":149, \"A4+\":175, \"A3+\":214, \"A2\":253 } }\n  ];\n\n  const sizes = [\"XS\",\"S\",\"M\",\"L\",\"XL\"];\n  const printSizes = [\"A7\",\"A6\",\"A5\",\"A4\",\"A4+\",\"A3+\",\"A2\"];\n  const printInputMap = {\n    \"A7\":\"hoshi-psA7\",\"A6\":\"hoshi-psA6\",\"A5\":\"hoshi-psA5\",\"A4\":\"hoshi-psA4\",\"A4+\":\"hoshi-psA4p\",\"A3+\":\"hoshi-psA3p\",\"A2\":\"hoshi-psA2\"\n  };\n\n  function el(id){ return document.getElementById(id); }\n  function getQty(id){\n    const node = el(id);\n    const v = parseInt((node && node.value) || \"0\", 10);\n    return isNaN(v) || v < 0 ? 0 : v;\n  }\n  function findTier(total, table){\n    return table.find(row => total >= row.min && total <= row.max) || null;\n  }\n  function money(n){ return new Intl.NumberFormat(\"th-TH\").format(n); }\n  function getPrintPoints(){\n    const data = {};\n    printSizes.forEach(ps => data[ps] = getQty(printInputMap[ps]));\n    return data;\n  }\n\n  function renderRateTables(totalQty=0, garmentTier=null, printType=\"white\", printTier=null){\n    const garmentHeader = `\n      <table>\n        <thead>\n          <tr>\n            <th>\u0e08\u0e33\u0e19\u0e27\u0e19\u0e40\u0e2a\u0e37\u0e49\u0e2d<\/th><th>XS<\/th><th>S<\/th><th>M<\/th><th>L<\/th><th>XL<\/th>\n          <\/tr>\n        <\/thead>\n        <tbody>\n          ${garmentRates.map(row => `\n            <tr>\n              <td class=\"${garmentTier && garmentTier.label === row.label ? 'hoshi-match' : ''}\">${row.label}<\/td>\n              <td class=\"${garmentTier && garmentTier.label === row.label ? 'hoshi-match' : ''}\">${row.rates[\"XS\"]}<\/td>\n              <td class=\"${garmentTier && garmentTier.label === row.label ? 'hoshi-match' : ''}\">${row.rates[\"S\"]}<\/td>\n              <td class=\"${garmentTier && garmentTier.label === row.label ? 'hoshi-match' : ''}\">${row.rates[\"M\"]}<\/td>\n              <td class=\"${garmentTier && garmentTier.label === row.label ? 'hoshi-match' : ''}\">${row.rates[\"L\"]}<\/td>\n              <td class=\"${garmentTier && garmentTier.label === row.label ? 'hoshi-match' : ''}\">${row.rates[\"XL\"]}<\/td>\n            <\/tr>\n          `).join(\"\")}\n        <\/tbody>\n      <\/table>\n    `;\n\n    const activePrintTable = printType === \"white\" ? dtgWhiteRates : dtgColorRates;\n    const printTitle = printType === \"white\" ? \"\u0e15\u0e32\u0e23\u0e32\u0e07\u0e23\u0e32\u0e04\u0e32\u0e2a\u0e01\u0e23\u0e35\u0e19 DTG (\u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e2a\u0e35\u0e02\u0e32\u0e27)\" : \"\u0e15\u0e32\u0e23\u0e32\u0e07\u0e23\u0e32\u0e04\u0e32\u0e2a\u0e01\u0e23\u0e35\u0e19 DTG (\u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e2a\u0e35)\";\n    const printTableHtml = `\n      <table>\n        <thead>\n          <tr>\n            <th>\u0e08\u0e33\u0e19\u0e27\u0e19\u0e15\u0e31\u0e27<\/th>${printSizes.map(s => `<th>${s}<\/th>`).join(\"\")}\n          <\/tr>\n        <\/thead>\n        <tbody>\n          ${activePrintTable.map(row => `\n            <tr>\n              <td class=\"${printTier && printTier.label === row.label ? 'hoshi-match' : ''}\">${row.label}<\/td>\n              ${printSizes.map(ps => `<td class=\"${printTier && printTier.label === row.label ? 'hoshi-match' : ''}\">${row.rates[ps]}<\/td>`).join(\"\")}\n            <\/tr>\n          `).join(\"\")}\n        <\/tbody>\n      <\/table>\n    `;\n\n    el(\"hoshi-rateTables\").innerHTML = `\n      <div class=\"hoshi-dtg-section\">\n        <h3>\u0e15\u0e32\u0e23\u0e32\u0e07\u0e23\u0e32\u0e04\u0e32\u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e04\u0e2d\u0e15\u0e15\u0e2d\u0e19 100%<\/h3>\n        ${garmentHeader}\n      <\/div>\n      <div class=\"hoshi-dtg-section\">\n        <h3>${printTitle}<\/h3>\n        ${printTableHtml}\n        <div class=\"hoshi-small\" style=\"margin-top:8px;\">${totalQty > 0 ? `\u0e08\u0e33\u0e19\u0e27\u0e19\u0e23\u0e27\u0e21\u0e15\u0e2d\u0e19\u0e19\u0e35\u0e49\u0e04\u0e37\u0e2d ${money(totalQty)} \u0e15\u0e31\u0e27 \u0e23\u0e30\u0e1a\u0e1a\u0e44\u0e2e\u0e44\u0e25\u0e15\u0e4c\u0e41\u0e16\u0e27\u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e04\u0e33\u0e19\u0e27\u0e13\u0e41\u0e25\u0e49\u0e27` : '\u0e40\u0e21\u0e37\u0e48\u0e2d\u0e04\u0e33\u0e19\u0e27\u0e13\u0e41\u0e25\u0e49\u0e27 \u0e23\u0e30\u0e1a\u0e1a\u0e08\u0e30\u0e44\u0e2e\u0e44\u0e25\u0e15\u0e4c\u0e41\u0e16\u0e27\u0e23\u0e32\u0e04\u0e32\u0e17\u0e35\u0e48\u0e16\u0e39\u0e01\u0e19\u0e33\u0e44\u0e1b\u0e43\u0e0a\u0e49\u0e08\u0e23\u0e34\u0e07'}<\/div>\n      <\/div>\n    `;\n  }\n\n  function calculate(){\n    const qty = {\n      XS: getQty(\"hoshi-xs\"),\n      S: getQty(\"hoshi-s\"),\n      M: getQty(\"hoshi-m\"),\n      L: getQty(\"hoshi-l\"),\n      XL: getQty(\"hoshi-xl\")\n    };\n    const totalQty = Object.values(qty).reduce((a,b)=>a+b,0);\n    const printType = el(\"hoshi-printType\").value;\n    const printPoints = getPrintPoints();\n    const totalPoints = Object.values(printPoints).reduce((a,b)=>a+b,0);\n\n    if(totalQty <= 0){\n      el(\"hoshi-summary\").innerHTML = `<div class=\"hoshi-warn\">\u0e01\u0e23\u0e38\u0e13\u0e32\u0e01\u0e23\u0e2d\u0e01\u0e08\u0e33\u0e19\u0e27\u0e19\u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e19\u0e49\u0e2d\u0e22 1 \u0e15\u0e31\u0e27<\/div>`;\n      renderRateTables(0, null, printType, null);\n      return;\n    }\n    if(totalPoints <= 0){\n      el(\"hoshi-summary\").innerHTML = `<div class=\"hoshi-warn\">\u0e01\u0e23\u0e38\u0e13\u0e32\u0e01\u0e23\u0e2d\u0e01\u0e08\u0e33\u0e19\u0e27\u0e19\u0e08\u0e38\u0e14\u0e2a\u0e01\u0e23\u0e35\u0e19\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e19\u0e49\u0e2d\u0e22 1 \u0e08\u0e38\u0e14<\/div>`;\n      renderRateTables(totalQty, findTier(totalQty, garmentRates), printType, findTier(totalQty, printType === \"white\" ? dtgWhiteRates : dtgColorRates));\n      return;\n    }\n\n    const garmentTier = findTier(totalQty, garmentRates);\n    const printTable = printType === \"white\" ? dtgWhiteRates : dtgColorRates;\n    const printTier = findTier(totalQty, printTable);\n\n    let garmentSubtotal = 0;\n    let garmentLines = \"\";\n    sizes.forEach(size => {\n      const q = qty[size];\n      if(q > 0){\n        const rate = garmentTier.rates[size];\n        const sub = q * rate;\n        garmentSubtotal += sub;\n        garmentLines += `\n          <div class=\"hoshi-line-item hoshi-minor-detail\">\n            <div class=\"hoshi-line-left\">${size} \u00d7 ${money(q)} \u0e15\u0e31\u0e27<\/div>\n            <div class=\"hoshi-line-right\">\u0e3f${money(rate)} \/ \u0e15\u0e31\u0e27 = \u0e3f${money(sub)}<\/div>\n          <\/div>\n        `;\n      }\n    });\n\n    let printSubtotal = 0;\n    let printLines = \"\";\n    printSizes.forEach(ps => {\n      const pointCount = printPoints[ps];\n      if(pointCount > 0){\n        const rate = printTier.rates[ps];\n        const sub = rate * totalQty * pointCount;\n        printSubtotal += sub;\n        printLines += `\n          <div class=\"hoshi-line-item hoshi-minor-detail\">\n            <div class=\"hoshi-line-left\">${ps} \u00d7 ${money(pointCount)} \u0e08\u0e38\u0e14<\/div>\n            <div class=\"hoshi-line-right\">\u0e3f${money(rate)} \u00d7 ${money(totalQty)} \u0e15\u0e31\u0e27 = \u0e3f${money(sub)}<\/div>\n          <\/div>\n        `;\n      }\n    });\n\n    const grandTotal = garmentSubtotal + printSubtotal;\n    const avgPrice = grandTotal \/ totalQty;\n    const printTypeText = printType === \"white\" ? \"DTG \u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e2a\u0e35\u0e02\u0e32\u0e27\" : \"DTG \u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e2a\u0e35\";\n\n    el(\"hoshi-summary\").innerHTML = `\n      <div class=\"hoshi-summary-section\">\n        <h3>\u0e23\u0e32\u0e22\u0e25\u0e30\u0e40\u0e2d\u0e35\u0e22\u0e14<\/h3>\n\n        <div class=\"hoshi-line-item\">\n          <div class=\"hoshi-line-left\">\u0e08\u0e33\u0e19\u0e27\u0e19\u0e23\u0e27\u0e21 (Q)<\/div>\n          <div class=\"hoshi-line-right\">${money(totalQty)}<\/div>\n        <\/div>\n\n        <div class=\"hoshi-line-item\">\n          <div class=\"hoshi-line-left\">\u0e1b\u0e23\u0e30\u0e40\u0e20\u0e17\u0e2a\u0e01\u0e23\u0e35\u0e19<\/div>\n          <div class=\"hoshi-line-right\">${printTypeText}<\/div>\n        <\/div>\n\n        <div class=\"hoshi-line-item\">\n          <div class=\"hoshi-line-left\">\u0e40\u0e23\u0e17\u0e23\u0e32\u0e04\u0e32\u0e40\u0e2a\u0e37\u0e49\u0e2d<\/div>\n          <div class=\"hoshi-line-right\">${garmentTier.label}<\/div>\n        <\/div>\n\n        <div class=\"hoshi-line-item\">\n          <div class=\"hoshi-line-left\">\u0e04\u0e48\u0e32\u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e23\u0e27\u0e21<\/div>\n          <div class=\"hoshi-line-right\">\u0e3f${money(garmentSubtotal)}<\/div>\n        <\/div>\n\n        ${garmentLines}\n\n        <div class=\"hoshi-line-item\" style=\"margin-top:8px;\">\n          <div class=\"hoshi-line-left\">\u0e04\u0e48\u0e32\u0e2a\u0e01\u0e23\u0e35\u0e19\u0e23\u0e27\u0e21<\/div>\n          <div class=\"hoshi-line-right\">\u0e3f${money(printSubtotal)}<\/div>\n        <\/div>\n\n        ${printLines}\n\n        <div class=\"hoshi-grand\" style=\"margin-top:12px;\">\n          <div>\u0e22\u0e2d\u0e14\u0e2a\u0e38\u0e17\u0e18\u0e34<\/div>\n          <div class=\"hoshi-big\">\u0e3f${money(grandTotal)}<\/div>\n        <\/div>\n\n        <div class=\"hoshi-grand\" style=\"margin-top:12px;\">\n          <div>\u0e23\u0e32\u0e04\u0e32\u0e40\u0e09\u0e25\u0e35\u0e48\u0e22 \/ \u0e15\u0e31\u0e27<\/div>\n          <div class=\"hoshi-big\">\u0e3f${money(Math.round(avgPrice))} <span style=\"font-size:18px;font-weight:700;\">\/ \u0e15\u0e31\u0e27<\/span><\/div>\n        <\/div>\n      <\/div>\n    `;\n\n    renderRateTables(totalQty, garmentTier, printType, printTier);\n  }\n\n  function attachAutoCalculate(){\n    const ids = [\"hoshi-xs\",\"hoshi-s\",\"hoshi-m\",\"hoshi-l\",\"hoshi-xl\",\"hoshi-psA7\",\"hoshi-psA6\",\"hoshi-psA5\",\"hoshi-psA4\",\"hoshi-psA4p\",\"hoshi-psA3p\",\"hoshi-psA2\",\"hoshi-printType\"];\n    ids.forEach(id => {\n      const node = el(id);\n      if(!node) return;\n      node.addEventListener(\"input\", calculate);\n      node.addEventListener(\"change\", calculate);\n    });\n  }\n\n  window.hoshiDTGReset = function(){\n    [\"hoshi-xs\",\"hoshi-s\",\"hoshi-m\",\"hoshi-l\",\"hoshi-xl\",\"hoshi-psA7\",\"hoshi-psA6\",\"hoshi-psA5\",\"hoshi-psA4\",\"hoshi-psA4p\",\"hoshi-psA3p\",\"hoshi-psA2\"].forEach(id => { const node = el(id); if(node) node.value = 0; });\n    el(\"hoshi-printType\").value = \"white\";\n    el(\"hoshi-summary\").innerHTML = `<div class=\"hoshi-warn\">\u0e01\u0e23\u0e38\u0e13\u0e32\u0e01\u0e23\u0e2d\u0e01\u0e08\u0e33\u0e19\u0e27\u0e19\u0e40\u0e2a\u0e37\u0e49\u0e2d\u0e41\u0e25\u0e30\u0e08\u0e33\u0e19\u0e27\u0e19\u0e08\u0e38\u0e14\u0e2a\u0e01\u0e23\u0e35\u0e19 \u0e23\u0e30\u0e1a\u0e1a\u0e08\u0e30\u0e04\u0e33\u0e19\u0e27\u0e13\u0e43\u0e2b\u0e49\u0e2d\u0e31\u0e15\u0e42\u0e19\u0e21\u0e31\u0e15\u0e34<\/div>`;\n    renderRateTables(0, null, \"white\", null);\n    calculate();\n  };\n\n  attachAutoCalculate();\n  renderRateTables();\n  calculate();\n})();\n<\/script>\n        <\/p>\n<p>[\/vc_column_text][vc_row_inner][vc_column_inner width=&#8221;1\/2&#8243;][vc_single_image image=&#8221;294&#8243; img_size=&#8221;FULL&#8221; css=&#8221;&#8221;][\/vc_column_inner][vc_column_inner width=&#8221;1\/2&#8243;][vc_single_image image=&#8221;295&#8243; img_size=&#8221;FULL&#8221; css=&#8221;&#8221;][\/vc_column_inner][\/vc_row_inner][vc_row_inner][vc_column_inner width=&#8221;1\/2&#8243;][vc_single_image image=&#8221;297&#8243; img_size=&#8221;FULL&#8221; css=&#8221;&#8221;][\/vc_column_inner][vc_column_inner width=&#8221;1\/2&#8243;][vc_single_image image=&#8221;298&#8243; img_size=&#8221;FULL&#8221; css=&#8221;&#8221;][\/vc_column_inner][\/vc_row_inner][\/vc_column][\/vc_row]<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>[vc_row][vc_column][vc_column_text] [\/vc_column_text][vc_row_inner][vc_column_inner width=&#8221;1\/2&#8243;][vc_single_image image=&#8221;294&#8243; img_size=&#8221;FULL&#8221; css=&#8221;&#8221;][\/vc_column_inner][vc_column_inner width=&#8221;1\/2&#8243;][vc_single_image image=&#8221;295&#8243; img_size=&#8221;FULL&#8221; css=&#8221;&#8221;][\/vc_column_inner][\/vc_row_inner][vc_row_inner][vc_column_inner width=&#8221;1\/2&#8243;][vc_single_image image=&#8221;297&#8243; img_size=&#8221;FULL&#8221; css=&#8221;&#8221;][\/vc_column_inner][vc_column_inner width=&#8221;1\/2&#8243;][vc_single_image image=&#8221;298&#8243; img_size=&#8221;FULL&#8221; css=&#8221;&#8221;][\/vc_column_inner][\/vc_row_inner][\/vc_column][\/vc_row]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":16,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-289","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/price.ho-shi.com\/index.php?rest_route=\/wp\/v2\/pages\/289","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/price.ho-shi.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/price.ho-shi.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/price.ho-shi.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/price.ho-shi.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=289"}],"version-history":[{"count":4,"href":"https:\/\/price.ho-shi.com\/index.php?rest_route=\/wp\/v2\/pages\/289\/revisions"}],"predecessor-version":[{"id":299,"href":"https:\/\/price.ho-shi.com\/index.php?rest_route=\/wp\/v2\/pages\/289\/revisions\/299"}],"up":[{"embeddable":true,"href":"https:\/\/price.ho-shi.com\/index.php?rest_route=\/wp\/v2\/pages\/16"}],"wp:attachment":[{"href":"https:\/\/price.ho-shi.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=289"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}