{"product_id":"custom-printed-3-way-projecting-sign-lettering-triangular-shaped-projection-sign-with-custom-text","title":"Custom Printed 3-Way Projecting Sign Lettering, Triangular-shaped Projection Sign with Custom Text","description":"\u003cp\u003e\u003cstrong\u003eTriangular projecting custom sign\u003c\/strong\u003e designed for clear identification and directional guidance from both approaches. Customize the left and right sides separately with different text for aisles, rooms, departments, exits, sections, work areas, or other locations.\u003c\/p\u003e\n\n\u003cp\u003eThe \u003cstrong\u003etriangular projecting design\u003c\/strong\u003e extends outward from the mounting surface, making the sign easy to see from either direction. Use it in warehouses, offices, hallways, production facilities, schools, commercial buildings, storage areas, and other shared spaces where information needs to be visible before someone reaches the sign.\u003c\/p\u003e\n\n\u003cp\u003eEach outward-facing panel can display \u003cstrong\u003edifferent custom text\u003c\/strong\u003e. Enter separate wording for the left and right sides to identify different directions, destinations, rooms, departments, zones, or instructions from one mounting location.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eEasy Installation:\u003c\/strong\u003e Mount the sign to a wall, rack upright, column, shelving unit, or other suitable surface using screws through the predrilled mounting holes or double-sided mounting tape. Choose the installation method appropriate for your surface and intended use.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eCustom Printed to Order:\u003c\/strong\u003e Enter your desired wording for each side, and we professionally produce the graphics in a bold, high-contrast format designed for clear visibility.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eConstruction:\u003c\/strong\u003e Lightweight, rigid polystyrene with a clean matte finish and high-contrast vinyl graphics. The sign is easy to handle and install while remaining stiff enough to maintain its projecting triangular shape.\u003c\/p\u003e\n\n\u003cul\u003e\n  \u003cli\u003e\n    \u003cp\u003e\u003cstrong\u003eSeparate Left and Right Text:\u003c\/strong\u003e Customize each outward-facing panel with different wording.\u003c\/p\u003e\n  \u003c\/li\u003e\n  \u003cli\u003e\n    \u003cp\u003e\u003cstrong\u003eVisible From Both Directions:\u003c\/strong\u003e Projecting triangular shape makes information easy to see from either approach.\u003c\/p\u003e\n  \u003c\/li\u003e\n  \u003cli\u003e\n    \u003cp\u003e\u003cstrong\u003eScrew or Tape Installation:\u003c\/strong\u003e Install using the predrilled holes or suitable double-sided mounting tape.\u003c\/p\u003e\n  \u003c\/li\u003e\n  \u003cli\u003e\n    \u003cp\u003e\u003cstrong\u003eTwo Printed Faces:\u003c\/strong\u003e Communicate different directions, destinations, or messages from one location.\u003c\/p\u003e\n  \u003c\/li\u003e\n  \u003cli\u003e\n    \u003cp\u003e\u003cstrong\u003eLightweight Matte Construction:\u003c\/strong\u003e Rigid polystyrene provides a clean appearance without unnecessary weight.\u003c\/p\u003e\n  \u003c\/li\u003e\n  \u003cli\u003e\n    \u003cp\u003e\u003cstrong\u003eVersatile Placement:\u003c\/strong\u003e Suitable for walls, columns, rack uprights, shelving, corridors, entryways, and other visible mounting locations.\u003c\/p\u003e\n  \u003c\/li\u003e\n  \u003cli\u003e\n    \u003cp\u003e\u003cstrong\u003eClean, Professional Appearance:\u003c\/strong\u003e Crisp typography and consistent formatting across both faces.\u003c\/p\u003e\n  \u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003eCommon Uses:\u003c\/strong\u003e Warehouse aisle identification, office and department signs, room identification, hallway directions, exit-route guidance, shipping and receiving areas, production areas, storage sections, facility navigation, and custom operational signage.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eSpecs:\u003c\/strong\u003e Two 12\" x 12\" outward-facing panels, approximately 14\" overall width including projection. Lightweight matte polystyrene construction. Predrilled mounting holes. Installs with screws or suitable double-sided mounting tape. Separately customizable left and right sides. Character limits may apply.\u003c\/p\u003e\n\n\u003cscript\u003e\n(() =\u003e {\n  if (!location.pathname.includes('\/products\/')) return;\n\n  const LEFT_RIGHT_PRODUCT =\n    '\/products\/custom-printed-3-way-projecting-sign-lettering-triangular-shaped-projection-sign-with-custom-text';\n\n  if (location.pathname.includes(LEFT_RIGHT_PRODUCT)) return;\n\n  const ORIGINAL = window.updatePreviewText;\n\n  if (typeof ORIGINAL !== 'function') {\n    console.warn('updatePreviewText not found yet. Run after page fully loads.');\n    return;\n  }\n\n  function getFirstImageContainer() {\n    return document.querySelector('.p-item:first-child');\n  }\n\n  function ensureCenteredOverlay(isTwoLine = false) {\n    const firstImage = getFirstImageContainer();\n\n    if (!firstImage) return null;\n\n    firstImage.style.position = 'relative';\n\n    let overlay =\n      firstImage.querySelector('.custom-text-overlay');\n\n    if (!overlay) {\n      overlay = document.createElement('div');\n      overlay.className = 'custom-text-overlay';\n      firstImage.appendChild(overlay);\n    }\n\n    Object.assign(overlay.style, {\n      position: 'absolute',\n      width: '69%',\n      height: '60%',\n      top: '50%',\n      left: '50%',\n      transform: 'translate(-50%, -50%)',\n      display: 'flex',\n      alignItems: 'center',\n      justifyContent: 'center',\n      pointerEvents: 'none',\n      zIndex: '2'\n    });\n\n    if (isTwoLine) {\n      if (\n        !overlay.querySelector('.preview-text-line1') ||\n        !overlay.querySelector('.preview-text-line2')\n      ) {\n        overlay.innerHTML =\n          '\u003cdiv class=\"preview-text-line1\"\u003e\u003c\/div\u003e\u003cdiv class=\"preview-text-line2\"\u003e\u003c\/div\u003e';\n      }\n    } else {\n      if (!overlay.querySelector('.preview-text')) {\n        overlay.innerHTML =\n          '\u003cdiv class=\"preview-text\"\u003e\u003c\/div\u003e';\n      }\n    }\n\n    return overlay;\n  }\n\n  function fitSingleLinePreview() {\n    const selected =\n      document.querySelector('.nt-swatch.is-selected');\n\n    const isTwoLine =\n      selected \u0026\u0026\n      selected.getAttribute('data-value') ===\n        'two-line-text';\n\n    if (isTwoLine) return;\n\n    const overlay = ensureCenteredOverlay(false);\n\n    const textEl =\n      overlay?.querySelector('.preview-text');\n\n    if (!overlay || !textEl) return;\n\n    textEl.style.whiteSpace = 'nowrap';\n    textEl.style.wordWrap = 'normal';\n    textEl.style.textAlign = 'center';\n    textEl.style.width = '100%';\n\n    const text =\n      (textEl.textContent || '').trim() ||\n      'Enter Your Text Here';\n\n    const textStyle = getComputedStyle(textEl);\n    const maxWidth = textEl.clientWidth;\n\n    const start =\n      Math.max(\n        24,\n        Math.floor(overlay.clientHeight * 0.8)\n      );\n\n    const min = 12;\n    const step = 1;\n\n    const canvas =\n      fitSingleLinePreview._canvas ||\n      (\n        fitSingleLinePreview._canvas =\n          document.createElement('canvas')\n      );\n\n    const context = canvas.getContext('2d');\n\n    let size = start;\n\n    while (size \u003e min) {\n      context.font =\n        `${textStyle.fontWeight || 700} ` +\n        `${size}px ${textStyle.fontFamily}`;\n\n      if (\n        context.measureText(text).width \u003c=\n        maxWidth\n      ) {\n        break;\n      }\n\n      size -= step;\n    }\n\n    textEl.style.fontSize = `${size}px`;\n    textEl.style.lineHeight = '1';\n  }\n\n  window.updatePreviewText =\n    function patchedUpdatePreviewText(\n      text,\n      lineNumber = null\n    ) {\n      ORIGINAL(text, lineNumber);\n\n      const selected =\n        document.querySelector(\n          '.nt-swatch.is-selected'\n        );\n\n      const isTwoLine =\n        selected \u0026\u0026\n        selected.getAttribute('data-value') ===\n          'two-line-text';\n\n      ensureCenteredOverlay(!!isTwoLine);\n\n      if (!isTwoLine) {\n        requestAnimationFrame(\n          fitSingleLinePreview\n        );\n      }\n    };\n\n  const selected =\n    document.querySelector('.nt-swatch.is-selected');\n\n  const isTwoLine =\n    selected \u0026\u0026\n    selected.getAttribute('data-value') ===\n      'two-line-text';\n\n  ensureCenteredOverlay(!!isTwoLine);\n\n  requestAnimationFrame(\n    fitSingleLinePreview\n  );\n\n  window.addEventListener('resize', () =\u003e\n    requestAnimationFrame(\n      fitSingleLinePreview\n    )\n  );\n\n  console.log(\n    'Custom preview script active: centered overlay and single-line autofit.'\n  );\n})();\n\u003c\/script\u003e\n\n\u003cscript\u003e\nwindow.addEventListener('load', function () {\n  const element =\n    document.querySelector(\n      '.sp-pr-gallery__img.is-selected'\n    );\n\n  if (!element) return;\n\n  const newImage =\n    'https:\/\/cdn.shopify.com\/s\/files\/1\/0806\/7350\/5591\/files\/3-WAY-projecting-sign-custom-print_800x800.png?v=1785920415';\n\n  function force() {\n    element.setAttribute(\n      'data-bgset',\n      newImage\n    );\n\n    element.setAttribute(\n      'data-src',\n      newImage\n    );\n\n    element.style.setProperty(\n      'background-image',\n      `url(\"${newImage}\")`,\n      'important'\n    );\n\n    element.style.setProperty(\n      'background-size',\n      'cover',\n      'important'\n    );\n\n    element.style.setProperty(\n      'background-position',\n      'center',\n      'important'\n    );\n  }\n\n  force();\n  setTimeout(force, 200);\n  setTimeout(force, 500);\n  setTimeout(force, 1000);\n});\n\u003c\/script\u003e\n","brand":"Stanchon Hardware","offers":[{"title":"One-line Text","offer_id":52788409205047,"sku":"3WAY-PRO-SIGN","price":18.95,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0806\/7350\/5591\/files\/3-WAY-projecting-sign-custom-print.png?v=1785920415","url":"https:\/\/stanchon.com\/products\/custom-printed-3-way-projecting-sign-lettering-triangular-shaped-projection-sign-with-custom-text","provider":"Stanchon Hardware","version":"1.0","type":"link"}