{"id":4352,"date":"2026-02-25T08:01:29","date_gmt":"2026-02-25T08:01:29","guid":{"rendered":"https:\/\/idaequipment.com\/?page_id=4352"},"modified":"2026-02-25T08:13:47","modified_gmt":"2026-02-25T08:13:47","slug":"tool-cost-estimator","status":"publish","type":"page","link":"https:\/\/idaequipment.com\/es\/ink-production-line\/tool-cost-estimator\/","title":{"rendered":"Estimador de costos de herramientas"},"content":{"rendered":"\n<div class=\"wp-block-stackable-columns alignfull stk-block-columns stk-block stk-5ccb3c1\" data-block-id=\"5ccb3c1\"><div class=\"stk-row stk-inner-blocks stk-block-content stk-content-align stk-5ccb3c1-column alignfull\">\n<div class=\"wp-block-stackable-column stk-block-column stk-column stk-block stk-6d14013\" data-v=\"4\" data-block-id=\"6d14013\"><div class=\"stk-column-wrapper stk-block-column__content stk-container stk-6d14013-container stk--no-background stk--no-padding\"><div class=\"stk-block-content stk-inner-blocks stk-6d14013-inner-blocks\">\n<section id=\"ink-cost-calc\" class=\"ice-wrapper\">\n  <style>\n    @import url('https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@400;500;600;700&display=swap');\n\n    .ice-wrapper {\n      font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;\n      background-color: #ffffff;\n      padding: 80px 20px;\n      color: #1F2937;\n      line-height: 1.5;\n      box-sizing: border-box;\n    }\n\n    .ice-wrapper *, .ice-wrapper *::before, .ice-wrapper *::after {\n      box-sizing: inherit;\n    }\n\n    .ice-container {\n      max-width: 960px; \/* \u7a0d\u5fae\u6536\u7a84\u4ee5\u5339\u914d\u622a\u56fe\u7684\u7cbe\u81f4\u611f *\/\n      margin: 0 auto;\n    }\n\n    \/* \u5934\u90e8\u533a\u57df *\/\n    .ice-header {\n      margin-bottom: 40px;\n    }\n\n    .ice-title {\n      font-size: 30px;\n      font-weight: 700;\n      color: #111827;\n      margin: 0 0 12px 0;\n      letter-spacing: -0.02em;\n    }\n\n    .ice-desc {\n      font-size: 16px;\n      color: #6B7280;\n      max-width: 800px;\n      line-height: 1.6;\n      margin: 0;\n    }\n\n    \/* \u8868\u5355\u7f51\u683c *\/\n    .ice-form-grid {\n      display: grid;\n      grid-template-columns: 1fr 1fr;\n      gap: 32px; \/* \u8f83\u5927\u7684\u95f4\u8ddd *\/\n      margin-bottom: 32px;\n    }\n\n    .ice-field {\n      display: flex;\n      flex-direction: column;\n      gap: 8px;\n    }\n\n    .ice-field.full-width {\n      grid-column: 1 \/ -1;\n    }\n\n    .ice-label {\n      font-size: 14px;\n      font-weight: 600;\n      color: #0060A8; \/* \u54c1\u724c\u8272\u4f5c\u4e3a\u6807\u7b7e\u8272 *\/\n      display: block;\n    }\n\n    \/* \u8f93\u5165\u6846\u4e0e\u4e0b\u62c9\u6846\u901a\u7528\u6837\u5f0f *\/\n    .ice-input, .ice-select {\n      width: 100%;\n      height: 48px;\n      padding: 0 16px;\n      border: 1px solid #D1D5DB;\n      border-radius: 6px; \/* \u622a\u56fe\u4e2d\u7684\u5706\u89d2 *\/\n      font-size: 15px;\n      color: #111827;\n      background-color: #ffffff;\n      transition: all 0.2s ease;\n      box-shadow: 0 1px 2px rgba(0,0,0,0.05);\n    }\n\n    .ice-input:focus, .ice-select:focus {\n      outline: none;\n      border-color: #0060A8;\n      box-shadow: 0 0 0 3px rgba(0, 96, 168, 0.1);\n    }\n\n    \/* \u4e0b\u62c9\u7bad\u5934\u81ea\u5b9a\u4e49 *\/\n    .ice-select {\n      appearance: none;\n      background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' fill='none' viewBox='0 0 24 24' stroke='%236B7280' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19 9l-7 7-7-7'%3E%3C\/path%3E%3C\/svg%3E\");\n      background-repeat: no-repeat;\n      background-position: right 14px center;\n      background-size: 16px;\n      padding-right: 40px;\n    }\n\n    \/* \u5e26\u524d\u7f00\u7684\u8f93\u5165\u6846 ($) *\/\n    .ice-input-group {\n      position: relative;\n    }\n    \n    .ice-prefix {\n      position: absolute;\n      left: 16px;\n      top: 50%;\n      transform: translateY(-50%);\n      color: #6B7280;\n      font-size: 15px;\n      pointer-events: none;\n    }\n    \n    .ice-input.has-prefix {\n      padding-left: 32px;\n    }\n\n    .ice-helper {\n      font-size: 13px;\n      color: #6B7280;\n      font-style: italic;\n      margin-top: 4px;\n    }\n\n    \/* \u6ed1\u5757\u6837\u5f0f (\u590d\u523b\u622a\u56fe) *\/\n    .ice-slider-header {\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      margin-bottom: 12px;\n    }\n\n    .ice-slider-val {\n      font-family: monospace;\n      font-weight: 700;\n      font-size: 16px;\n      color: #111827;\n    }\n\n    .ice-slider {\n      -webkit-appearance: none;\n      width: 100%;\n      height: 6px;\n      border-radius: 3px;\n      background: #E5E7EB; \/* \u9ed8\u8ba4\u7070\u8272\u8f68\u9053 *\/\n      outline: none;\n      cursor: pointer;\n      \/* \u901a\u8fc7 CSS \u53d8\u91cf\u52a8\u6001\u8bbe\u7f6e\u8fdb\u5ea6\u6761\u989c\u8272 *\/\n      background-image: linear-gradient(#0060A8, #0060A8);\n      background-size: 20% 100%; \/* JS\u63a7\u5236 *\/\n      background-repeat: no-repeat;\n    }\n\n    .ice-slider::-webkit-slider-thumb {\n      -webkit-appearance: none;\n      height: 24px;\n      width: 24px;\n      border-radius: 50%;\n      background: #0060A8;\n      border: 4px solid #ffffff;\n      box-shadow: 0 2px 6px rgba(0,0,0,0.2);\n      cursor: pointer;\n      transition: transform 0.1s;\n    }\n\n    .ice-slider::-webkit-slider-thumb:hover {\n      transform: scale(1.1);\n    }\n\n    \/* \u6309\u94ae\u7ec4 *\/\n    .ice-actions {\n      display: flex;\n      gap: 16px;\n      margin-top: 10px;\n    }\n\n    .ice-btn {\n      height: 46px;\n      padding: 0 24px;\n      font-size: 15px;\n      font-weight: 600;\n      border-radius: 6px;\n      cursor: pointer;\n      transition: all 0.2s;\n    }\n\n    .ice-btn-primary {\n      background-color: #1F5182; \/* \u6df1\u84dd *\/\n      color: #ffffff;\n      border: none;\n    }\n\n    .ice-btn-primary:hover {\n      background-color: #163E63;\n    }\n\n    .ice-btn-outline {\n      background-color: #ffffff;\n      color: #1F5182;\n      border: 1px solid #D1D5DB;\n    }\n\n    .ice-btn-outline:hover {\n      background-color: #F9FAFB;\n      border-color: #1F5182;\n    }\n\n    \/* --- \u7ed3\u679c\u9762\u677f (\u8ba1\u7b97\u540e\u663e\u793a) --- *\/\n    .ice-results {\n      display: none; \/* \u9ed8\u8ba4\u9690\u85cf *\/\n      margin-top: 50px;\n      border-top: 1px solid #E5E7EB;\n      padding-top: 40px;\n      animation: slideIn 0.4s ease;\n    }\n\n    @keyframes slideIn {\n      from { opacity: 0; transform: translateY(10px); }\n      to { opacity: 1; transform: translateY(0); }\n    }\n\n    .res-header {\n      margin-bottom: 24px;\n    }\n    \n    .res-title {\n      font-size: 22px;\n      font-weight: 700;\n      color: #111827;\n      margin-bottom: 8px;\n    }\n\n    \/* KPI \u5361\u7247 *\/\n    .res-grid {\n      display: grid;\n      grid-template-columns: repeat(3, 1fr);\n      gap: 20px;\n      margin-bottom: 30px;\n    }\n\n    .res-card {\n      background: #F8FAFC;\n      border: 1px solid #E2E8F0;\n      border-radius: 8px;\n      padding: 20px;\n      text-align: center;\n    }\n\n    .res-card.highlight {\n      background: #EFF6FF;\n      border-color: #BFDBFE;\n    }\n\n    .res-val {\n      font-size: 24px;\n      font-weight: 700;\n      color: #0060A8;\n      display: block;\n      margin-bottom: 4px;\n    }\n\n    .res-label {\n      font-size: 13px;\n      color: #6B7280;\n      text-transform: uppercase;\n      letter-spacing: 0.05em;\n    }\n\n    \/* \u8282\u7701\u6e05\u5355 *\/\n    .res-savings {\n      background: #ECFDF5;\n      border: 1px solid #D1FAE5;\n      border-radius: 8px;\n      padding: 20px;\n    }\n    \n    .res-savings-title {\n      font-weight: 700;\n      color: #047857;\n      margin-bottom: 12px;\n      display: flex;\n      align-items: center;\n      gap: 8px;\n    }\n\n    .res-list {\n      list-style: none;\n      padding: 0;\n      margin: 0;\n    }\n\n    .res-list li {\n      font-size: 14px;\n      color: #064E3B;\n      margin-bottom: 8px;\n      padding-left: 20px;\n      position: relative;\n    }\n\n    .res-list li::before {\n      content: '\u2713';\n      position: absolute;\n      left: 0;\n      color: #059669;\n      font-weight: bold;\n    }\n\n    \/* \u79fb\u52a8\u7aef\u9002\u914d *\/\n    @media (max-width:690px) {\n      .ice-form-grid {\n        grid-template-columns: 1fr;\n        gap: 24px;\n      }\n      .res-grid {\n        grid-template-columns: 1fr;\n      }\n      .ice-actions {\n        flex-direction: column;\n      }\n      .ice-btn {\n        width: 100%;\n      }\n    }\n  <\/style>\n\n  <div class=\"ice-container\">\n    \n    <div class=\"ice-header\">\n      <h2 class=\"ice-title\">Ink Production Cost Estimator<\/h2>\n      <p class=\"ice-desc\">\n        Enter your production parameters to get a detailed per-ton cost breakdown. See where IDA automated equipment cuts your costs the most.\n      <\/p>\n    <\/div>\n\n    <div class=\"ice-form-grid\">\n      \n      <div class=\"ice-field\">\n        <label class=\"ice-label\" for=\"ink-type\">Ink Type<\/label>\n        <select id=\"ink-type\" class=\"ice-select\">\n          <option value=\"water\">Water-based<\/option>\n          <option value=\"solvent\" selected>Solvent-based<\/option>\n          <option value=\"uv\">UV-curable<\/option>\n          <option value=\"offset\">Offset (Paste)<\/option>\n        <\/select>\n      <\/div>\n\n      <div class=\"ice-field\">\n        <label class=\"ice-label\" for=\"worker-count\">Workers per Shift<\/label>\n        <select id=\"worker-count\" class=\"ice-select\">\n          <option value=\"2\">2 workers<\/option>\n          <option value=\"3\">3 workers<\/option>\n          <option value=\"4\" selected>4 workers<\/option>\n          <option value=\"5\">5 workers<\/option>\n          <option value=\"6\">6 workers<\/option>\n          <option value=\"8\">8 workers<\/option>\n        <\/select>\n      <\/div>\n\n      <div class=\"ice-field full-width\">\n        <div class=\"ice-slider-header\">\n          <label class=\"ice-label\" for=\"output-target\">Annual Output Target <span style=\"font-weight:400;color:#9CA3AF\">(tons\/year)<\/span><\/label>\n          <span class=\"ice-slider-val\" id=\"output-val\">2,000 t<\/span>\n        <\/div>\n        <input type=\"range\" min=\"100\" max=\"10000\" value=\"2000\" step=\"100\" class=\"ice-slider\" id=\"output-target\">\n      <\/div>\n\n      <div class=\"ice-field\">\n        <label class=\"ice-label\" for=\"mat-cost\">Raw Material Cost <span style=\"font-weight:400;color:#9CA3AF\">(per ton)<\/span><\/label>\n        <div class=\"ice-input-group\">\n          <span class=\"ice-prefix\">$<\/span>\n          <input type=\"number\" id=\"mat-cost\" class=\"ice-input has-prefix\" value=\"2500\">\n        <\/div>\n        <span class=\"ice-helper\" id=\"mat-hint\">Typical for solvent-based: $2,000 \u2013 $4,000<\/span>\n      <\/div>\n\n      <div class=\"ice-field\">\n        <label class=\"ice-label\" for=\"energy-cost\">Energy Cost <span style=\"font-weight:400;color:#9CA3AF\">(per kWh)<\/span><\/label>\n        <div class=\"ice-input-group\">\n          <span class=\"ice-prefix\">$<\/span>\n          <input type=\"number\" id=\"energy-cost\" class=\"ice-input has-prefix\" value=\"0.10\" step=\"0.01\">\n        <\/div>\n        <span class=\"ice-helper\">Typical range: $0.05 \u2013 $0.20<\/span>\n      <\/div>\n\n    <\/div>\n\n    <div class=\"ice-actions\">\n      <button type=\"button\" class=\"ice-btn ice-btn-primary\" id=\"btn-calc\">Estimate Costs<\/button>\n      <button type=\"button\" class=\"ice-btn ice-btn-outline\" id=\"btn-reset\">Start Over<\/button>\n    <\/div>\n\n    <div class=\"ice-results\" id=\"res-panel\">\n      <div class=\"res-header\">\n        <h3 class=\"res-title\">Estimated Production Costs<\/h3>\n        <p style=\"color:#6B7280; font-size:14px;\">Based on your inputs and IDA equipment efficiency benchmarks.<\/p>\n      <\/div>\n\n      <div class=\"res-grid\">\n        <div class=\"res-card\">\n          <span class=\"res-val\" id=\"val-per-ton\">&#8212;<\/span>\n          <span class=\"res-label\">Cost Per Ton<\/span>\n        <\/div>\n        <div class=\"res-card\">\n          <span class=\"res-val\" id=\"val-total\">&#8212;<\/span>\n          <span class=\"res-label\">Total Annual Cost<\/span>\n        <\/div>\n        <div class=\"res-card highlight\">\n          <span class=\"res-val\" style=\"color:#059669;\" id=\"val-saving\">&#8212;<\/span>\n          <span class=\"res-label\">Potential Savings<\/span>\n        <\/div>\n      <\/div>\n\n      <div class=\"res-savings\">\n        <div class=\"res-savings-title\">\n          <span>\ud83d\udca1<\/span> Where You Save with IDA Automation\n        <\/div>\n        <ul class=\"res-list\" id=\"res-list\">\n          <\/ul>\n      <\/div>\n    <\/div>\n\n  <\/div>\n\n  <script>\n    document.addEventListener('DOMContentLoaded', function() {\n      \/\/ \u5143\u7d20\u83b7\u53d6\n      const slider = document.getElementById('output-target');\n      const outputVal = document.getElementById('output-val');\n      const inkSelect = document.getElementById('ink-type');\n      const matInput = document.getElementById('mat-cost');\n      const matHint = document.getElementById('mat-hint');\n      const btnCalc = document.getElementById('btn-calc');\n      const btnReset = document.getElementById('btn-reset');\n      const resPanel = document.getElementById('res-panel');\n\n      \/\/ \u6570\u636e\u9884\u8bbe\n      const inkData = {\n        water: { label: 'Water-based', energyFactor: 80, equipMaint: 0.02, defaultMat: 2200, hint: '$1,500 \u2013 $3,000' },\n        solvent: { label: 'Solvent-based', energyFactor: 120, equipMaint: 0.025, defaultMat: 2500, hint: '$2,000 \u2013 $4,000' },\n        uv: { label: 'UV-curable', energyFactor: 150, equipMaint: 0.03, defaultMat: 4200, hint: '$3,000 \u2013 $6,000' },\n        offset: { label: 'Offset', energyFactor: 200, equipMaint: 0.02, defaultMat: 3200, hint: '$2,500 \u2013 $5,000' }\n      };\n\n      \/\/ 1. \u6ed1\u5757\u89c6\u89c9\u4ea4\u4e92\uff1a\u66f4\u65b0\u80cc\u666f\u6e10\u53d8\u8272\n      function updateSliderVisual() {\n        const val = slider.value;\n        const min = slider.min;\n        const max = slider.max;\n        const percentage = ((val - min) \/ (max - min)) * 100;\n        \n        slider.style.backgroundSize = percentage + '% 100%';\n        outputVal.textContent = Number(val).toLocaleString() + ' t';\n      }\n\n      slider.addEventListener('input', updateSliderVisual);\n      updateSliderVisual(); \/\/ \u521d\u59cb\u5316\n\n      \/\/ 2. \u6cb9\u58a8\u7c7b\u578b\u8054\u52a8\n      inkSelect.addEventListener('change', function() {\n        const data = inkData[this.value];\n        matInput.value = data.defaultMat;\n        matHint.textContent = `Typical for ${data.label}: ${data.hint}`;\n      });\n\n      \/\/ 3. \u8ba1\u7b97\u903b\u8f91\n      btnCalc.addEventListener('click', function() {\n        \/\/ \u83b7\u53d6\u6570\u503c\n        const output = parseFloat(slider.value);\n        const matCost = parseFloat(matInput.value);\n        const workers = parseInt(document.getElementById('worker-count').value);\n        const energyRate = parseFloat(document.getElementById('energy-cost').value);\n        const type = inkSelect.value;\n        const data = inkData[type];\n\n        \/\/ \u6838\u5fc3\u516c\u5f0f\n        const rawTotal = output * matCost;\n        const laborTotal = workers * 2 * 8000; \/\/ \u5047\u8bbe2\u73ed\u5012\uff0c\u6bcf\u4eba\u6bcf\u5e74$8000\n        const energyTotal = output * data.energyFactor * energyRate;\n        const maintTotal = (output * 50) * data.equipMaint; \/\/ \u4f30\u7b97\u7ef4\u62a4\u8d39\n        \n        const annualTotal = rawTotal + laborTotal + energyTotal + maintTotal;\n        const costPerTon = annualTotal \/ output;\n\n        \/\/ \u8282\u7701\u8ba1\u7b97 (IDA \u81ea\u52a8\u5316\u5e26\u6765\u7684\u4f30\u7b97\u503c)\n        const laborSave = laborTotal * 0.35; \/\/ \u81ea\u52a8\u5316\u51cf\u5c11\u4eba\u5de5\n        const energySave = energyTotal * 0.20; \/\/ \u9ad8\u6548\u7535\u673a\n        const wasteSave = rawTotal * 0.03; \/\/ \u7cbe\u51c6\u6295\u6599\u51cf\u5c11\u6d6a\u8d39\n        const totalSave = laborSave + energySave + wasteSave;\n\n        \/\/ \u6e32\u67d3\u7ed3\u679c\n        document.getElementById('val-per-ton').textContent = '$' + Math.round(costPerTon).toLocaleString();\n        document.getElementById('val-total').textContent = '$' + (annualTotal \/ 1000000).toFixed(2) + 'M';\n        document.getElementById('val-saving').textContent = '$' + Math.round(totalSave).toLocaleString();\n\n        \/\/ \u6e32\u67d3\u8282\u7701\u5217\u8868\n        const listHTML = `\n          <li>Automated batching reduces labor costs by approx. <strong>$${Math.round(laborSave).toLocaleString()}<\/strong>\/year.<\/li>\n          <li>High-efficiency mills cut energy consumption by <strong>$${Math.round(energySave).toLocaleString()}<\/strong>\/year.<\/li>\n          <li>Precision dosing minimizes raw material waste, saving <strong>$${Math.round(wasteSave).toLocaleString()}<\/strong>\/year.<\/li>\n        `;\n        document.getElementById('res-list').innerHTML = listHTML;\n\n        \/\/ \u663e\u793a\u9762\u677f\u5e76\u6eda\u52a8\n        resPanel.style.display = 'block';\n        resPanel.scrollIntoView({ behavior: 'smooth', block: 'start' });\n      });\n\n      \/\/ 4. \u91cd\u7f6e\u529f\u80fd\n      btnReset.addEventListener('click', function() {\n        resPanel.style.display = 'none';\n        inkSelect.value = 'solvent';\n        slider.value = 2000;\n        updateSliderVisual();\n        matInput.value = 2500;\n        document.getElementById('energy-cost').value = 0.10;\n        window.scrollTo({ top: document.getElementById('ink-cost-calc').offsetTop - 100, behavior: 'smooth' });\n      });\n\n    });\n  <\/script>\n<\/section>\n<\/div><\/div><\/div>\n<\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Ink Production Cost Estimator Enter your production parameters to get a detailed per-ton cost breakdown. See where IDA automated equipment cuts your costs the most. Ink Type Water-basedSolvent-basedUV-curableOffset (Paste) Workers per Shift 2 workers3 workers4 workers5 workers6 workers8 workers Annual Output Target (tons\/year) 2,000 t Raw Material Cost (per ton) $ Typical for solvent-based: $2,000 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":4285,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_gspb_post_css":"","footnotes":""},"class_list":["post-4352","page","type-page","status-publish","hentry"],"blocksy_meta":{"has_hero_section":"disabled","styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":6}},"_links":{"self":[{"href":"https:\/\/idaequipment.com\/es\/wp-json\/wp\/v2\/pages\/4352","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/idaequipment.com\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/idaequipment.com\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/idaequipment.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/idaequipment.com\/es\/wp-json\/wp\/v2\/comments?post=4352"}],"version-history":[{"count":0,"href":"https:\/\/idaequipment.com\/es\/wp-json\/wp\/v2\/pages\/4352\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/idaequipment.com\/es\/wp-json\/wp\/v2\/pages\/4285"}],"wp:attachment":[{"href":"https:\/\/idaequipment.com\/es\/wp-json\/wp\/v2\/media?parent=4352"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}