{"id":4,"date":"2026-08-31T17:01:29","date_gmt":"2026-08-31T17:01:29","guid":{"rendered":"https:\/\/bsolution.me\/ko\/pdf-splitter\/"},"modified":"2026-09-22T10:38:47","modified_gmt":"2026-09-22T10:38:47","slug":"pdf-splitter","status":"publish","type":"page","link":"https:\/\/bsolution.me\/ko\/pdf-splitter\/","title":{"rendered":"PDF \ud30c\uc77c \ubd84\ud560\uae30 &#8211; PDF\ub97c \ud398\uc774\uc9c0 \ubc0f \uac1c\ubcc4 \ud30c\uc77c\ub85c \ub098\ub204\uae30"},"content":{"rendered":"\n<div id=\"bnet-tool-pdf-splitter\">\n<style>\n  \/* ========================\n     CSS VARIABLES & RESET\n  ======================== *\/\n  #bnet-tool-pdf-splitter {\n    --bg-color: #f8fafc;\n    --card-bg: #ffffff;\n    --border-color: #e2e8f0;\n    --text-color: #1a1a1a;\n    --text-muted: #64748b;\n    --accent: #6366f1;\n    --accent-hover: #4f46e5;\n    --accent-light: rgba(99,102,241,0.1);\n    --danger: #ef4444;\n    --success: #22c55e;\n    --warning: #f59e0b;\n    --shadow: 0 4px 24px rgba(0,0,0,0.07);\n    --radius: 16px;\n    font-family: 'Heebo', 'Arial', sans-serif;\n    direction: ltr;\n    transition: color 0.3s;\n  }\n\n  body.dark-theme {\n    background-color: #0f172a !important;\n    color: #f1f5f9 !important;\n  }\n\n  body.dark-theme #bnet-tool-pdf-splitter {\n    --bg-color: #0f172a;\n    --card-bg: #1e293b;\n    --border-color: #334155;\n    --text-color: #f1f5f9;\n    --text-muted: #94a3b8;\n    --accent: #818cf8;\n    --accent-hover: #6366f1;\n    --accent-light: rgba(129,140,248,0.15);\n    --shadow: 0 4px 24px rgba(0,0,0,0.3);\n  }\n\n  #bnet-tool-pdf-splitter * {\n    box-sizing: border-box;\n    margin: 0;\n    padding: 0;\n  }\n\n  #bnet-tool-pdf-splitter .page-wrapper {\n    max-width: 1100px;\n    margin: 0 auto;\n    padding: 24px 16px 80px;\n    background: var(--bg-color);\n    min-height: 60vh;\n    transition: background 0.3s;\n  }\n\n  \/* ========================\n     HEADER\n  ======================== *\/\n  #bnet-tool-pdf-splitter header {\n    text-align: center;\n    margin-bottom: 32px;\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    gap: 12px;\n  }\n\n  #bnet-tool-pdf-splitter h1.main-title {\n    margin: 0;\n    font-size: clamp(2rem, 3vw, 2.8rem);\n    font-weight: 900;\n    color: var(--text-color);\n    letter-spacing: -0.02em;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    gap: 12px;\n  }\n\n  #bnet-tool-pdf-splitter .subtitle {\n    margin: 0;\n    color: var(--text-muted);\n    font-size: 1.1rem;\n    line-height: 1.6;\n    max-width: 650px;\n  }\n\n  #bnet-tool-pdf-splitter .free-badge {\n    display: inline-flex;\n    align-items: center;\n    gap: 8px;\n    padding: 6px 14px;\n    border-radius: 999px;\n    background: var(--card-bg);\n    border: 1px solid var(--border-color);\n    color: var(--text-color);\n    font-size: 0.9rem;\n    font-weight: 500;\n    box-shadow: 0 2px 8px rgba(0,0,0,0.04);\n    margin-top: 4px;\n  }\n\n  #bnet-tool-pdf-splitter .free-dot {\n    width: 10px;\n    height: 10px;\n    border-radius: 50%;\n    background: #22c55e;\n    box-shadow: 0 0 0 4px rgba(34,197,94,0.2);\n  }\n\n  \/* ========================\n     THEME TOGGLE\n  ======================== *\/\n  #bnet-tool-pdf-splitter .theme-toggle-wrap {\n    display: flex;\n    justify-content: flex-start;\n    margin-bottom: 8px;\n  }\n\n  #bnet-tool-pdf-splitter .theme-btn {\n    background: var(--card-bg);\n    border: 1px solid var(--border-color);\n    color: var(--text-muted);\n    padding: 6px 14px;\n    border-radius: 999px;\n    cursor: pointer;\n    font-size: 0.85rem;\n    font-family: inherit;\n    transition: all 0.2s;\n  }\n\n  #bnet-tool-pdf-splitter .theme-btn:hover {\n    background: var(--accent-light);\n    color: var(--accent);\n    border-color: var(--accent);\n  }\n\n  \/* ========================\n     CARDS\n  ======================== *\/\n  #bnet-tool-pdf-splitter .tool-card,\n  #bnet-tool-pdf-splitter .seo-card {\n    background: var(--card-bg);\n    border: 1px solid var(--border-color);\n    border-radius: var(--radius);\n    padding: 28px 24px;\n    box-shadow: var(--shadow);\n    margin-bottom: 28px;\n    width: 100%;\n  }\n\n  \/* ========================\n     DROP ZONE\n  ======================== *\/\n  #bnet-tool-pdf-splitter .drop-zone {\n    position: relative;\n    border: 2px dashed var(--border-color);\n    border-radius: 14px;\n    padding: 48px 24px;\n    text-align: center;\n    cursor: pointer;\n    transition: all 0.25s;\n    background: var(--accent-light);\n    user-select: none;\n    -webkit-user-select: none;\n    overflow: hidden;\n  }\n\n  #bnet-tool-pdf-splitter #pdf-splitter-file-input {\n    width: 0.1px;\n    height: 0.1px;\n    opacity: 0;\n    overflow: hidden;\n    position: absolute;\n    z-index: -1;\n  }\n\n  #bnet-tool-pdf-splitter .drop-zone:hover,\n  #bnet-tool-pdf-splitter .drop-zone.drag-over {\n    border-color: var(--accent);\n    background: var(--accent-light);\n  }\n\n  #bnet-tool-pdf-splitter .drop-zone-icon {\n    font-size: 3rem;\n    margin-bottom: 12px;\n    display: block;\n  }\n\n  #bnet-tool-pdf-splitter .drop-zone h2 {\n    font-size: 1.3rem;\n    font-weight: 700;\n    color: var(--text-color);\n    margin-bottom: 6px;\n  }\n\n  #bnet-tool-pdf-splitter .drop-zone p {\n    color: var(--text-muted);\n    font-size: 0.95rem;\n    margin-bottom: 18px;\n  }\n\n  #bnet-tool-pdf-splitter .btn-upload {\n    display: inline-flex;\n    align-items: center;\n    gap: 8px;\n    background: var(--accent);\n    color: #fff;\n    border: none;\n    padding: 12px 24px;\n    border-radius: 10px;\n    font-size: 1rem;\n    font-weight: 600;\n    cursor: pointer;\n    font-family: inherit;\n    transition: background 0.2s, transform 0.15s;\n  }\n\n  #bnet-tool-pdf-splitter .btn-upload:hover {\n    background: var(--accent-hover);\n    transform: translateY(-1px);\n  }\n\n  #bnet-tool-pdf-splitter #pdf-splitter-file-input {\n    display: none;\n  }\n\n  \/* ========================\n     LOADING STATE\n  ======================== *\/\n  #bnet-tool-pdf-splitter .loading-area {\n    text-align: center;\n    padding: 40px 0;\n    display: none;\n  }\n\n  #bnet-tool-pdf-splitter .spinner {\n    width: 48px;\n    height: 48px;\n    border: 5px solid var(--border-color);\n    border-top-color: var(--accent);\n    border-radius: 50%;\n    animation: spin 0.8s linear infinite;\n    margin: 0 auto 16px;\n  }\n\n  @keyframes spin { to { transform: rotate(360deg); } }\n\n  #bnet-tool-pdf-splitter .loading-area p {\n    color: var(--text-muted);\n    font-size: 1rem;\n  }\n\n  \/* ========================\n     TOOLBAR (after load)\n  ======================== *\/\n  #bnet-tool-pdf-splitter .toolbar {\n    display: none;\n    flex-wrap: wrap;\n    gap: 10px;\n    align-items: center;\n    justify-content: space-between;\n    margin-bottom: 20px;\n    padding: 14px 16px;\n    background: var(--accent-light);\n    border-radius: 12px;\n    border: 1px solid var(--border-color);\n  }\n\n  #bnet-tool-pdf-splitter .toolbar-info {\n    font-size: 0.95rem;\n    color: var(--text-color);\n    font-weight: 600;\n  }\n\n  #bnet-tool-pdf-splitter .toolbar-info span {\n    color: var(--accent);\n  }\n\n  #bnet-tool-pdf-splitter .toolbar-actions {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 8px;\n  }\n\n  #bnet-tool-pdf-splitter .btn {\n    display: inline-flex;\n    align-items: center;\n    gap: 6px;\n    padding: 9px 16px;\n    border-radius: 9px;\n    border: none;\n    font-size: 0.9rem;\n    font-weight: 600;\n    cursor: pointer;\n    font-family: inherit;\n    transition: all 0.2s;\n    white-space: nowrap;\n  }\n\n  #bnet-tool-pdf-splitter .btn-primary {\n    background: var(--accent);\n    color: #fff;\n  }\n  #bnet-tool-pdf-splitter .btn-primary:hover {\n    background: var(--accent-hover);\n    transform: translateY(-1px);\n  }\n  #bnet-tool-pdf-splitter .btn-secondary {\n    background: var(--card-bg);\n    color: var(--text-color);\n    border: 1px solid var(--border-color);\n  }\n  #bnet-tool-pdf-splitter .btn-secondary:hover {\n    border-color: var(--accent);\n    color: var(--accent);\n  }\n  #bnet-tool-pdf-splitter .btn-success {\n    background: #22c55e;\n    color: #fff;\n  }\n  #bnet-tool-pdf-splitter .btn-success:hover {\n    background: #16a34a;\n    transform: translateY(-1px);\n  }\n  #bnet-tool-pdf-splitter .btn-danger {\n    background: var(--danger);\n    color: #fff;\n  }\n  #bnet-tool-pdf-splitter .btn-danger:hover {\n    background: #dc2626;\n  }\n  #bnet-tool-pdf-splitter .btn:disabled {\n    opacity: 0.5;\n    cursor: not-allowed;\n    transform: none !important;\n  }\n\n  \/* ========================\n     GROUP LEGEND\n  ======================== *\/\n  #bnet-tool-pdf-splitter .group-legend {\n    display: none;\n    flex-wrap: wrap;\n    gap: 8px;\n    margin-bottom: 16px;\n    align-items: center;\n  }\n\n  #bnet-tool-pdf-splitter .group-legend-label {\n    font-size: 0.85rem;\n    color: var(--text-muted);\n    font-weight: 600;\n  }\n\n  #bnet-tool-pdf-splitter .group-chip {\n    display: inline-flex;\n    align-items: center;\n    gap: 6px;\n    padding: 4px 10px;\n    border-radius: 999px;\n    font-size: 0.82rem;\n    font-weight: 600;\n    color: #fff;\n    cursor: pointer;\n    transition: opacity 0.2s, transform 0.15s;\n  }\n\n  #bnet-tool-pdf-splitter .group-chip:hover {\n    opacity: 0.85;\n    transform: scale(1.04);\n  }\n\n  #bnet-tool-pdf-splitter .group-chip .chip-remove {\n    background: rgba(255,255,255,0.3);\n    border: none;\n    border-radius: 50%;\n    width: 16px;\n    height: 16px;\n    font-size: 10px;\n    cursor: pointer;\n    color: #fff;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    line-height: 1;\n  }\n\n  \/* ========================\n     PAGE GRID\n  ======================== *\/\n  #bnet-tool-pdf-splitter .pages-grid {\n    display: none;\n    display: grid;\n    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));\n    gap: 16px;\n    margin-top: 4px;\n  }\n\n  #bnet-tool-pdf-splitter .page-thumb {\n    border: 2px solid var(--border-color);\n    border-radius: 12px;\n    overflow: hidden;\n    cursor: pointer;\n    transition: all 0.2s;\n    position: relative;\n    background: var(--card-bg);\n  }\n\n  #bnet-tool-pdf-splitter .page-thumb:hover {\n    border-color: var(--accent);\n    box-shadow: 0 4px 16px rgba(99,102,241,0.18);\n    transform: translateY(-2px);\n  }\n\n  #bnet-tool-pdf-splitter .page-thumb.selected {\n    border-color: var(--accent);\n    box-shadow: 0 0 0 3px var(--accent-light), 0 4px 16px rgba(99,102,241,0.18);\n  }\n\n  #bnet-tool-pdf-splitter .page-thumb.in-group {\n    border-width: 3px;\n  }\n\n  #bnet-tool-pdf-splitter .page-canvas-wrap {\n    position: relative;\n    width: 100%;\n    aspect-ratio: 0.707;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    background: #f1f5f9;\n    overflow: hidden;\n  }\n\n  #bnet-tool-pdf-splitter.dark-mode .page-canvas-wrap {\n    background: #1e293b;\n  }\n\n  #bnet-tool-pdf-splitter .page-canvas-wrap canvas {\n    width: 100%;\n    height: 100%;\n    object-fit: contain;\n    display: block;\n  }\n\n  #bnet-tool-pdf-splitter .page-thumb-overlay {\n    position: absolute;\n    top: 0; left: 0; right: 0; bottom: 0;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    opacity: 0;\n    transition: opacity 0.2s;\n    background: rgba(99,102,241,0.15);\n  }\n\n  #bnet-tool-pdf-splitter .page-thumb:hover .page-thumb-overlay {\n    opacity: 1;\n  }\n\n  #bnet-tool-pdf-splitter .thumb-fullscreen-btn {\n    background: rgba(255,255,255,0.9);\n    border: none;\n    border-radius: 8px;\n    padding: 6px 10px;\n    cursor: pointer;\n    font-size: 1.1rem;\n    transition: transform 0.15s;\n    box-shadow: 0 2px 8px rgba(0,0,0,0.15);\n  }\n\n  #bnet-tool-pdf-splitter .thumb-fullscreen-btn:hover {\n    transform: scale(1.1);\n  }\n\n  #bnet-tool-pdf-splitter .page-thumb-footer {\n    padding: 6px 8px;\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    border-top: 1px solid var(--border-color);\n  }\n\n  #bnet-tool-pdf-splitter .page-num {\n    font-size: 0.8rem;\n    color: var(--text-muted);\n    font-weight: 600;\n  }\n\n  #bnet-tool-pdf-splitter .page-group-badge {\n    font-size: 0.72rem;\n    font-weight: 700;\n    padding: 2px 7px;\n    border-radius: 999px;\n    color: #fff;\n  }\n\n  #bnet-tool-pdf-splitter .page-check {\n    position: absolute;\n    top: 6px;\n    right: 6px;\n    width: 22px;\n    height: 22px;\n    border-radius: 50%;\n    background: var(--accent);\n    border: 2px solid #fff;\n    display: none;\n    align-items: center;\n    justify-content: center;\n    color: #fff;\n    font-size: 12px;\n    font-weight: 700;\n    box-shadow: 0 2px 6px rgba(0,0,0,0.2);\n  }\n\n  #bnet-tool-pdf-splitter .page-thumb.selected .page-check {\n    display: flex;\n  }\n\n  \/* ========================\n     GROUP SELECTION PANEL\n  ======================== *\/\n  #bnet-tool-pdf-splitter .group-panel {\n    display: none;\n    margin-top: 20px;\n    padding: 16px;\n    background: var(--accent-light);\n    border-radius: 12px;\n    border: 1px solid var(--border-color);\n  }\n\n  #bnet-tool-pdf-splitter .group-panel h3 {\n    font-size: 1rem;\n    color: var(--text-color);\n    margin-bottom: 10px;\n    font-weight: 700;\n  }\n\n  #bnet-tool-pdf-splitter .group-panel-actions {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 8px;\n    align-items: center;\n  }\n\n  \/* ========================\n     FULLSCREEN POPUP\n  ======================== *\/\n  #bnet-tool-pdf-splitter .popup-overlay {\n    display: none;\n    position: fixed;\n    inset: 0;\n    background: rgba(0,0,0,0.85);\n    z-index: 99999;\n    align-items: center;\n    justify-content: center;\n    padding: 24px;\n  }\n\n  #bnet-tool-pdf-splitter .popup-overlay.open {\n    display: flex;\n  }\n\n  #bnet-tool-pdf-splitter .popup-inner {\n    background: var(--card-bg);\n    border-radius: 18px;\n    max-width: 800px;\n    width: 100%;\n    max-height: 90vh;\n    display: flex;\n    flex-direction: column;\n    overflow: hidden;\n    box-shadow: 0 24px 80px rgba(0,0,0,0.5);\n    position: relative;\n  }\n\n  #bnet-tool-pdf-splitter .popup-header {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    padding: 16px 20px;\n    border-bottom: 1px solid var(--border-color);\n    flex-shrink: 0;\n  }\n\n  #bnet-tool-pdf-splitter .popup-header h3 {\n    font-size: 1.1rem;\n    font-weight: 700;\n    color: var(--text-color);\n  }\n\n  #bnet-tool-pdf-splitter .popup-nav {\n    display: flex;\n    align-items: center;\n    gap: 10px;\n  }\n\n  #bnet-tool-pdf-splitter .popup-nav-btn {\n    background: var(--accent-light);\n    border: 1px solid var(--border-color);\n    border-radius: 8px;\n    padding: 6px 12px;\n    cursor: pointer;\n    font-size: 1rem;\n    color: var(--accent);\n    transition: all 0.2s;\n    font-family: inherit;\n  }\n\n  #bnet-tool-pdf-splitter .popup-nav-btn:hover:not(:disabled) {\n    background: var(--accent);\n    color: #fff;\n  }\n\n  #bnet-tool-pdf-splitter .popup-nav-btn:disabled {\n    opacity: 0.35;\n    cursor: not-allowed;\n  }\n\n  #bnet-tool-pdf-splitter .popup-close {\n    background: none;\n    border: none;\n    font-size: 1.5rem;\n    cursor: pointer;\n    color: var(--text-muted);\n    padding: 4px 8px;\n    border-radius: 6px;\n    transition: background 0.15s;\n    line-height: 1;\n    font-family: inherit;\n  }\n\n  #bnet-tool-pdf-splitter .popup-close:hover {\n    background: rgba(239,68,68,0.1);\n    color: var(--danger);\n  }\n\n  #bnet-tool-pdf-splitter .popup-canvas-area {\n    flex: 1;\n    overflow: auto;\n    display: flex;\n    align-items: flex-start;\n    justify-content: center;\n    padding: 20px;\n    background: #1a1a2e;\n  }\n\n  #bnet-tool-pdf-splitter #pdf-splitter-popup-canvas {\n    max-width: 100%;\n    height: auto;\n    border-radius: 6px;\n    box-shadow: 0 8px 32px rgba(0,0,0,0.4);\n  }\n\n  #bnet-tool-pdf-splitter .popup-footer {\n    padding: 12px 20px;\n    border-top: 1px solid var(--border-color);\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    flex-shrink: 0;\n    flex-wrap: wrap;\n    gap: 8px;\n  }\n\n  #bnet-tool-pdf-splitter .popup-page-info {\n    font-size: 0.9rem;\n    color: var(--text-muted);\n    font-weight: 600;\n  }\n\n  \/* ========================\n     PROGRESS BAR\n  ======================== *\/\n  #bnet-tool-pdf-splitter .progress-area {\n    display: none;\n    margin-top: 20px;\n  }\n\n  #bnet-tool-pdf-splitter .progress-label {\n    font-size: 0.9rem;\n    color: var(--text-muted);\n    margin-bottom: 8px;\n    font-weight: 600;\n  }\n\n  #bnet-tool-pdf-splitter .progress-bar-wrap {\n    background: var(--border-color);\n    border-radius: 999px;\n    height: 8px;\n    overflow: hidden;\n  }\n\n  #bnet-tool-pdf-splitter .progress-bar-fill {\n    height: 100%;\n    background: linear-gradient(90deg, var(--accent), #a78bfa);\n    border-radius: 999px;\n    width: 0%;\n    transition: width 0.3s ease;\n  }\n\n  \/* ========================\n     SEO ARTICLE\n  ======================== *\/\n  #bnet-tool-pdf-splitter #seo-article {\n    margin-top: 0;\n    font-size: 0.92rem;\n    line-height: 1.8;\n    color: var(--text-muted);\n  }\n\n  #bnet-tool-pdf-splitter #seo-article h2,\n  #bnet-tool-pdf-splitter #seo-article h3 {\n    color: var(--text-color);\n    margin-top: 20px;\n    margin-bottom: 8px;\n    font-weight: 700;\n  }\n\n  #bnet-tool-pdf-splitter #seo-article h2 {\n    font-size: 1.3rem;\n    border-bottom: 2px solid var(--border-color);\n    padding-bottom: 6px;\n  }\n\n  #bnet-tool-pdf-splitter #seo-article h3 {\n    font-size: 1.05rem;\n  }\n\n  #bnet-tool-pdf-splitter #seo-article p {\n    margin-bottom: 12px;\n  }\n\n  #bnet-tool-pdf-splitter #seo-article ul,\n  #bnet-tool-pdf-splitter #seo-article ol {\n    padding-right: 22px;\n    margin-bottom: 12px;\n  }\n\n  #bnet-tool-pdf-splitter #seo-article li {\n    margin-bottom: 6px;\n  }\n\n  #bnet-tool-pdf-splitter #seo-article a {\n    color: var(--accent);\n    text-decoration: none;\n    font-weight: 600;\n  }\n\n  #bnet-tool-pdf-splitter #seo-article a:hover {\n    text-decoration: underline;\n  }\n\n  #bnet-tool-pdf-splitter #seo-article table {\n    width: 100%;\n    border-collapse: collapse;\n    margin-bottom: 16px;\n    font-size: 0.88rem;\n  }\n\n  #bnet-tool-pdf-splitter #seo-article th,\n  #bnet-tool-pdf-splitter #seo-article td {\n    padding: 8px 12px;\n    border: 1px solid var(--border-color);\n    text-align: right;\n  }\n\n  #bnet-tool-pdf-splitter #seo-article th {\n    background: var(--accent-light);\n    color: var(--text-color);\n    font-weight: 700;\n  }\n\n  #bnet-tool-pdf-splitter .faq-item {\n    border: 1px solid var(--border-color);\n    border-radius: 10px;\n    margin-bottom: 10px;\n    overflow: hidden;\n  }\n\n  #bnet-tool-pdf-splitter .faq-question {\n    padding: 12px 16px;\n    cursor: pointer;\n    font-weight: 700;\n    color: var(--text-color);\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    transition: background 0.2s;\n    user-select: none;\n  }\n\n  #bnet-tool-pdf-splitter .faq-question:hover {\n    background: var(--accent-light);\n  }\n\n  #bnet-tool-pdf-splitter .faq-answer {\n    padding: 0 16px;\n    max-height: 0;\n    overflow: hidden;\n    transition: max-height 0.35s ease, padding 0.2s;\n    color: var(--text-muted);\n    line-height: 1.7;\n  }\n\n  #bnet-tool-pdf-splitter .faq-item.open .faq-answer {\n    max-height: 500px;\n    padding: 12px 16px;\n  }\n\n  #bnet-tool-pdf-splitter .faq-arrow {\n    transition: transform 0.3s;\n    font-style: normal;\n    font-size: 0.85rem;\n  }\n\n  #bnet-tool-pdf-splitter .faq-item.open .faq-arrow {\n    transform: rotate(180deg);\n  }\n\n  \/* ========================\n     RESPONSIVE\n  ======================== *\/\n  @media (max-width: 768px) {\n    #bnet-tool-pdf-splitter .pages-grid {\n      grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));\n      gap: 10px;\n    }\n    #bnet-tool-pdf-splitter .toolbar {\n      flex-direction: column;\n      align-items: flex-start;\n    }\n    #bnet-tool-pdf-splitter .popup-inner {\n      max-height: 95vh;\n    }\n    #bnet-tool-pdf-splitter .page-wrapper {\n      padding: 16px 12px 60px;\n    }\n    #bnet-tool-pdf-splitter .tool-card,\n    #bnet-tool-pdf-splitter .seo-card {\n      padding: 18px 14px;\n    }\n  }\n\n  @media (max-width: 480px) {\n    #bnet-tool-pdf-splitter .pages-grid {\n      grid-template-columns: repeat(3, 1fr);\n      gap: 8px;\n    }\n  }\n<\/style>\n\n<div class=\"page-wrapper\">\n\n  <!-- THEME TOGGLE -->\n  <div class=\"theme-toggle-wrap\">\n    <button class=\"theme-btn\" id=\"pdf-splitter-theme-btn\">\ud83c\udf19 \uc57c\uac04 \ubaa8\ub4dc<\/button>\n  <\/div>\n\n  <!-- HEADER -->\n  <header>\n    <h1 class=\"main-title\">\u2702\ufe0f PDF \ud30c\uc77c \ubd84\ud560\uae30<\/h1>\n    <p class=\"subtitle\">PDF \ud30c\uc77c\uc744 \uac1c\ubcc4 \ud398\uc774\uc9c0 \ub610\ub294 \uc0ac\uc6a9\uc790 \uc9c0\uc815 \ud398\uc774\uc9c0 \uadf8\ub8f9\uc73c\ub85c \ubd84\ud560\ud558\uc138\uc694 &#8211; \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uc9c1\uc811, \uc11c\ubc84\uc5d0 \uc5c5\ub85c\ub4dc\ud560 \ud544\uc694 \uc5c6\uc774.<\/p>\n    <div class=\"free-badge\">\n      <div class=\"free-dot\"><\/div>\n      <span>\uc774 \ub3c4\uad6c\ub294 \ubb34\ub8cc\uc774\uba70, \ub4f1\ub85d\uc774\ub098 \ub370\uc774\ud130 \uc800\uc7a5 \uc5c6\uc774 \uc0ac\uc6a9 \uac00\ub2a5\ud569\ub2c8\ub2e4.<\/span>\n    <\/div>\n  <\/header>\n\n  <!-- TOOL CARD -->\n  <div class=\"tool-card\">\n\n    <!-- DROP ZONE -->\n    <div class=\"drop-zone\" id=\"pdf-splitter-drop-zone\">\n      <span class=\"drop-zone-icon\">\ud83d\udcc4<\/span>\n      <h2>\uc5ec\uae30\uc5d0 PDF \ud30c\uc77c\uc744 \ub4dc\ub798\uadf8\ud558\uc138\uc694<\/h2>\n      <p>\ub610\ub294 \ucef4\ud4e8\ud130\uc5d0\uc11c \ud30c\uc77c \uc120\ud0dd\uc744 \ud074\ub9ad\ud558\uc138\uc694<\/p>\n      <button class=\"btn-upload\" id=\"pdf-splitter-upload-btn\">\n        \ud83d\udcc2 PDF \ud30c\uc77c \uc120\ud0dd\n      <\/button>\n      <input type=\"file\" id=\"pdf-splitter-file-input\" accept=\".pdf,application\/pdf\">\n    <\/div>\n\n    <!-- LOADING -->\n    <div class=\"loading-area\" id=\"pdf-splitter-loading\">\n      <div class=\"spinner\"><\/div>\n      <p id=\"pdf-splitter-loading-text\">\ud30c\uc77c\uc744 \ub85c\ub4dc\ud558\ub294 \uc911&#8230;<\/p>\n    <\/div>\n\n    <!-- TOOLBAR -->\n    <div class=\"toolbar\" id=\"pdf-splitter-toolbar\">\n      <div class=\"toolbar-info\">\n        \ud83d\udcc4 <span id=\"pdf-splitter-filename-label\"><\/span> &nbsp;|&nbsp;\n        <span id=\"pdf-splitter-page-count\"><\/span> \ud398\uc774\uc9c0 &nbsp;|&nbsp;\n        <span id=\"pdf-splitter-selected-count\">0<\/span> \uc120\ud0dd\ub428\n      <\/div>\n      <div class=\"toolbar-actions\">\n        <button class=\"btn btn-secondary\" id=\"pdf-splitter-select-all-btn\">\u2611\ufe0f \ubaa8\ub450 \uc120\ud0dd<\/button>\n        <button class=\"btn btn-secondary\" id=\"pdf-splitter-clear-btn\">\u2716\ufe0f \uc120\ud0dd \ud574\uc81c<\/button>\n        <button class=\"btn btn-primary\" id=\"pdf-splitter-add-group-btn\" disabled>\u2795 \uadf8\ub8f9 \ucd94\uac00<\/button>\n        <button class=\"btn btn-success\" id=\"pdf-splitter-download-all-btn\">\u2b07\ufe0f \ubaa8\ub4e0 \ud398\uc774\uc9c0 \uac1c\ubcc4 \ub2e4\uc6b4\ub85c\ub4dc<\/button>\n        <button class=\"btn btn-secondary\" id=\"pdf-splitter-reset-btn\">\ud83d\udd04 \uc0c8 \ud30c\uc77c \ub85c\ub4dc<\/button>\n      <\/div>\n    <\/div>\n\n    <!-- GROUP LEGEND -->\n    <div class=\"group-legend\" id=\"pdf-splitter-group-legend\">\n      <span class=\"group-legend-label\">\ub2e4\uc6b4\ub85c\ub4dc \uadf8\ub8f9:<\/span>\n      <!-- chips injected here -->\n    <\/div>\n\n    <!-- PAGES GRID -->\n    <div class=\"pages-grid\" id=\"pdf-splitter-pages-grid\" style=\"display:none\"><\/div>\n\n    <!-- GROUP PANEL -->\n    <div class=\"group-panel\" id=\"pdf-splitter-group-panel\">\n      <h3>\ud83d\udcc1 \uadf8\ub8f9\uc744 \uac1c\ubcc4 \ud30c\uc77c\ub85c \ub2e4\uc6b4\ub85c\ub4dc<\/h3>\n      <div class=\"group-panel-actions\">\n        <button class=\"btn btn-success\" id=\"pdf-splitter-download-groups-btn\">\u2b07\ufe0f \ubaa8\ub4e0 \uadf8\ub8f9 \ub2e4\uc6b4\ub85c\ub4dc<\/button>\n      <\/div>\n    <\/div>\n\n    <!-- PROGRESS -->\n    <div class=\"progress-area\" id=\"pdf-splitter-progress-area\">\n      <div class=\"progress-label\" id=\"pdf-splitter-progress-label\">\ud30c\uc77c \uc900\ube44 \uc911&#8230;<\/div>\n      <div class=\"progress-bar-wrap\">\n        <div class=\"progress-bar-fill\" id=\"pdf-splitter-progress-bar\"><\/div>\n      <\/div>\n    <\/div>\n\n  <\/div><!-- \/tool-card -->\n\n  <!-- FULLSCREEN POPUP -->\n  <div class=\"popup-overlay\" id=\"pdf-splitter-popup\">\n    <div class=\"popup-inner\">\n      <div class=\"popup-header\">\n        <h3 id=\"pdf-splitter-popup-title\">\ud398\uc774\uc9c0 \ubbf8\ub9ac\ubcf4\uae30<\/h3>\n        <div class=\"popup-nav\">\n          <button class=\"popup-nav-btn\" id=\"pdf-splitter-popup-prev\">&#8594;<\/button>\n          <span id=\"pdf-splitter-popup-counter\" style=\"font-size:0.9rem; color:var(--text-muted); font-weight:600;\"><\/span>\n          <button class=\"popup-nav-btn\" id=\"pdf-splitter-popup-next\">&#8592;<\/button>\n        <\/div>\n        <button class=\"popup-close\" id=\"pdf-splitter-popup-close\">\u2715<\/button>\n      <\/div>\n      <div class=\"popup-canvas-area\">\n        <canvas id=\"pdf-splitter-popup-canvas\"><\/canvas>\n      <\/div>\n      <div class=\"popup-footer\">\n        <span class=\"popup-page-info\" id=\"pdf-splitter-popup-page-info\"><\/span>\n        <div style=\"display:flex;gap:8px;\">\n          <button class=\"btn btn-primary\" id=\"pdf-splitter-popup-select-btn\">\u2611\ufe0f \uc774 \ud398\uc774\uc9c0 \uc120\ud0dd<\/button>\n          <button class=\"btn btn-secondary\" id=\"pdf-splitter-popup-download-btn\">\u2b07\ufe0f \uc774 \ud398\uc774\uc9c0 \ub2e4\uc6b4\ub85c\ub4dc<\/button>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <!-- SEO ARTICLE CARD -->\n  <div class=\"seo-card\">\n    <div id=\"seo-article\">\n\n      <h2 class=\"wp-block-heading\">PDF \ubd84\ud560\uae30 &#8211; \uc54c\uc544\uc57c \ud560 \ubaa8\ub4e0 \uac83<\/h2>\n\n      <p>PDF \ud30c\uc77c \ubd84\ud560\uae30\ub294 \uc5ec\ub7ec \ud398\uc774\uc9c0\ub97c \ud3ec\ud568\ud558\ub294 \ub2e8\uc77c PDF \ubb38\uc11c\ub97c \uac1c\ubcc4 \ud30c\uc77c\ub85c \ub098\ub204\ub294 \ub3c4\uad6c\uc785\ub2c8\ub2e4. \uc774 \ub3c4\uad6c\ub294 <strong>\ub2f9\uc2e0\uc758 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uc644\uc804\ud788 \uc791\ub3d9<\/strong>\ud558\uba70, \ud30c\uc77c\uc744 \uc5b4\ub5a4 \uc11c\ubc84\uc5d0\ub3c4 \uc5c5\ub85c\ub4dc\ud558\uc9c0 \uc54a\uc73c\ubbc0\ub85c \ubb38\uc11c\uc758 \uac1c\uc778 \uc815\ubcf4\uac00 \uc644\uc804\ud788 \ubcf4\ud638\ub429\ub2c8\ub2e4.<\/p>\n\n      <h2 class=\"wp-block-heading\">PDF \ud30c\uc77c\uc744 \uc5b4\ub5bb\uac8c \ubd84\ud560\ud558\ub098\uc694?<\/h2>\n      <p>\uc138 \uac00\uc9c0 \ubc29\ubc95\uc73c\ub85c \ubd84\ud560\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4:<\/p>\n      <ol>\n        <li><strong>\uac01 \ud398\uc774\uc9c0 \uac1c\ubcc4\uc801\uc73c\ub85c<\/strong> &#8211; &#8220;\ubaa8\ub4e0 \ud398\uc774\uc9c0 \uac1c\ubcc4 \ub2e4\uc6b4\ub85c\ub4dc&#8221;\ub97c \ud074\ub9ad\ud558\uc5ec \uac01 \ud398\uc774\uc9c0\ub97c \ub3c5\ub9bd\uc801\uc778 PDF \ud30c\uc77c\ub85c \ud3ec\ud568\ud55c ZIP \ud30c\uc77c\uc744 \ubc1b\uc2b5\ub2c8\ub2e4.<\/li>\n        <li><strong>\ud398\uc774\uc9c0 \uadf8\ub8f9<\/strong> &#8211; \ud2b9\uc815 \ud398\uc774\uc9c0\ub97c \uc120\ud0dd\ud558\uace0 &#8220;\uadf8\ub8f9 \ucd94\uac00&#8221;\ub97c \ud074\ub9ad\ud55c \ud6c4 \uc6d0\ud558\ub294 \ubaa8\ub4e0 \ud30c\uc77c\uc5d0 \ub300\ud574 \uc120\ud0dd\uc744 \ubc18\ubcf5\ud55c \ub2e4\uc74c \ubaa8\ub4e0 \uadf8\ub8f9\uc744 \ub2e4\uc6b4\ub85c\ub4dc\ud569\ub2c8\ub2e4.<\/li>\n        <li><strong>\ubbf8\ub9ac\ubcf4\uae30\uc5d0\uc11c \ub2e8\uc77c \ud398\uc774\uc9c0<\/strong> &#8211; \uc804\uccb4 \ud654\uba74\uc5d0\uc11c \ud398\uc774\uc9c0\ub97c \uc5f4\uace0 &#8220;\uc774 \ud398\uc774\uc9c0 \ub2e4\uc6b4\ub85c\ub4dc&#8221;\ub97c \ud074\ub9ad\ud569\ub2c8\ub2e4.<\/li>\n      <\/ol>\n\n      <h2 class=\"wp-block-heading\">\uc5b8\uc81c PDF \ubd84\ud560\uc774 \ud544\uc694\ud560\uae4c\uc694?<\/h2>\n      <ul>\n        <li>\uae34 \ubcf4\uace0\uc11c\ub97c \ubc1b\uc558\uace0 \ud55c \ucc55\ud130\ub9cc \ubcf4\ub0b4\uc57c \ud560 \ub54c<\/li>\n        <li>\ud558\ub098\uc758 \ud30c\uc77c\uc5d0 \uc5ec\ub7ec \uc1a1\uc7a5 &#8211; \uac01 \uc1a1\uc7a5\uc744 \ubd84\ub9ac\ud574\uc57c \ud560 \ub54c<\/li>\n        <li>\ucc55\ud130\ub85c \ub098\ub204\uace0 \uc2f6\uc740 \uc2a4\uce94\ud55c \ucc45<\/li>\n        <li>\ud2b9\uc815 \ud398\uc774\uc9c0\uc5d0\ub9cc \uc11c\uba85\uc774 \ud544\uc694\ud55c \ubc95\uc801 \ubb38\uc11c<\/li>\n        <li>\uac1c\ubcc4 \uc2ac\ub77c\uc774\ub4dc\ub85c \ubcf4\ub0b4\uace0 \uc2f6\uc740 PDF \ud504\ub808\uc820\ud14c\uc774\uc158<\/li>\n      <\/ul>\n\n      <h2 class=\"wp-block-heading\">\uac1c\uc778\uc815\ubcf4 \ubcf4\ud638 \ubc0f \ubcf4\uc548<\/h2>\n      <p>\ub300\ubd80\ubd84\uc758 \uc628\ub77c\uc778 \ub3c4\uad6c\uc640 \ub2ec\ub9ac, \uc6b0\ub9ac\uc758 \ub3c4\uad6c\ub294 <strong>\ub2f9\uc2e0\uc758 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uc9c1\uc811<\/strong> \ud30c\uc77c\uc744 \ucc98\ub9ac\ud558\uba70 <strong>PDF.js<\/strong> \ubc0f <strong>PDF-lib<\/strong> \uae30\uc220\uc744 \uc0ac\uc6a9\ud569\ub2c8\ub2e4. \ud30c\uc77c\uc740 \ub2f9\uc2e0\uc758 \ucef4\ud4e8\ud130\ub97c \ub5a0\ub098\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uc11c\ubc84\ub3c4 \uc5c6\uace0, \ud074\ub77c\uc6b0\ub4dc\ub3c4 \uc5c6\uc73c\uba70, \uc800\uc7a5\ub3c4 \uc5c6\uc2b5\ub2c8\ub2e4. \uc774\ub294 \uacc4\uc57d\uc11c, \uc758\ub8cc \ubb38\uc11c \ub610\ub294 \uc7ac\ubb34 \ubb38\uc11c\uc640 \uad00\ub828\ud558\uc5ec \ud2b9\ud788 \uc911\uc694\ud569\ub2c8\ub2e4.<\/p>\n\n      <h2 class=\"wp-block-heading\">PDF \uc791\uc5c5\uc744 \uc704\ud55c \ucd94\uac00 \ub3c4\uad6c<\/h2>\n      <p>PDF \ud30c\uc77c\uc744 \uc790\uc8fc \ub2e4\ub8ec\ub2e4\uba74, <a href=\"https:\/\/bsolution.me\/ko\/pdf-merger\/\" id=\"pdf-splitter-link-merger\">PDF \ud30c\uc77c \ubcd1\ud569 \ubc0f \uc555\ucd95\uae30<\/a>\ub3c4 \uc720\uc6a9\ud560 \uac83\uc785\ub2c8\ub2e4 &#8211; \uc5ec\ub7ec PDF \ud30c\uc77c\uc744 \ud558\ub098\ub85c \ubcd1\ud569\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub610\ud55c, \ubb38\uc11c \ub0b4 \uc774\ubbf8\uc9c0\ub97c \ud3b8\uc9d1\ud558\ub824\uba74 <a href=\"https:\/\/bsolution.me\/ko\/compress-image\/\" id=\"pdf-splitter-link-compress\">\uc774\ubbf8\uc9c0 \uc555\ucd95 \ub3c4\uad6c<\/a>\ub97c \uc0ac\uc6a9\ud558\uc5ec PDF\uc5d0 \ub123\uae30 \uc804\uc5d0 \uc774\ubbf8\uc9c0\ub97c \uc555\ucd95\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n      <p>\ud30c\uc77c \uc791\uc5c5\uc744 \uc704\ud574\uc11c\ub294 <a href=\"https:\/\/bsolution.me\/ko\/file-preview\/\" id=\"pdf-splitter-link-preview\">\ud30c\uc77c \ubbf8\ub9ac\ubcf4\uae30 \ub3c4\uad6c<\/a>\ub97c \ud655\uc778\ud558\ub294 \uac83\uc774 \uc88b\uc2b5\ub2c8\ub2e4. \ub2e4\uc591\ud55c \ud615\uc2dd\uc744 \uc9c0\uc6d0\ud569\ub2c8\ub2e4.<\/p>\n\n      <h2 class=\"wp-block-heading\">PDF\uc5d0 \ub300\ud55c \ud765\ubbf8\ub85c\uc6b4 \ud1b5\uacc4<\/h2>\n      <table>\n        <thead>\n          <tr><th>\ub370\uc774\ud130<\/th><th>\ucd9c\ucc98<\/th><\/tr>\n        <\/thead>\n        <tbody>\n          <tr><td>PDF\ub294 \uc804\ubb38 \ubb38\uc11c \uacf5\uc720\ub97c \uc704\ud55c \uac00\uc7a5 \uc77c\ubc18\uc801\uc778 \ud30c\uc77c \ud615\uc2dd\uc785\ub2c8\ub2e4 &#8211; 73% \uc774\uc0c1\uc758 \uae30\uc5c5 \ubb38\uc11c<\/td><td>Adobe, 2023<\/td><\/tr>\n          <tr><td>\ud604\uc7ac \uc778\ud130\ub137\uc5d0 2.5\uc870 \uac1c \uc774\uc0c1\uc758 PDF \ud30c\uc77c\uc774 \uc874\uc7ac\ud569\ub2c8\ub2e4<\/td><td>PDF \ud611\ud68c<\/td><\/tr>\n          <tr><td>\uc774 \ud615\uc2dd\uc740 2008\ub144\uc5d0 \uad6d\uc81c ISO \ud45c\uc900(ISO 32000)\uc73c\ub85c \uc815\uc758\ub418\uc5c8\uc2b5\ub2c8\ub2e4<\/td><td>ISO<\/td><\/tr>\n          <tr><td>PDF\/A\ub294 \uc7a5\uae30 \uc544\uce74\uc774\ube0c \ubc84\uc804\uc785\ub2c8\ub2e4 &#8211; \uc815\ubd80 \ubc0f \ubc95\ub960\uc5d0\uc11c \uc77c\ubc18\uc801\uc73c\ub85c \uc0ac\uc6a9\ub429\ub2c8\ub2e4<\/td><td>AIIM<\/td><\/tr>\n        <\/tbody>\n      <\/table>\n\n      <h2 class=\"wp-block-heading\">\uc790\uc8fc \ubb3b\ub294 \uc9c8\ubb38 (FAQ)<\/h2>\n\n      <div class=\"faq-item\">\n        <div class=\"faq-question\">\ub3c4\uad6c\uac00 \ud398\uc774\uc9c0 \uc218\ub97c \uc81c\ud55c\ud558\ub098\uc694? <i class=\"faq-arrow\">\u25bc<\/i><\/div>\n        <div class=\"faq-answer\">\uad6c\uc131\ub41c \uc81c\ud55c\uc740 \uc5c6\uc2b5\ub2c8\ub2e4. \uc131\ub2a5\uc740 \ucef4\ud4e8\ud130\uc758 \uc131\ub2a5\uacfc \ud30c\uc77c \ud06c\uae30\uc5d0 \ub530\ub77c \ub2e4\ub985\ub2c8\ub2e4. \ub9e4\uc6b0 \ud070 \ud30c\uc77c(\uc218\ubc31 \ud398\uc774\uc9c0)\uc740 \ub85c\ub4dc\ud558\ub294 \ub370 \uba87 \ucd08\uac00 \uac78\ub9b4 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/div>\n      <\/div>\n\n      <div class=\"faq-item\">\n        <div class=\"faq-question\">\ub3c4\uad6c\uac00 \ub514\uc790\uc778\uacfc \uc774\ubbf8\uc9c0\ub97c \uc720\uc9c0\ud558\ub098\uc694? <i class=\"faq-arrow\">\u25bc<\/i><\/div>\n        <div class=\"faq-answer\">\uc608. \ubd84\ud560\uc740 \uc6d0\ubcf8 PDF \uc218\uc900\uc5d0\uc11c \uc218\ud589\ub418\ubbc0\ub85c \ucf58\ud150\uce20, \uae00\uaf34, \uc774\ubbf8\uc9c0 \ubc0f \ub514\uc790\uc778\uc774 \ubcc0\uacbd\ub418\uc9c0 \uc54a\uace0 \uc720\uc9c0\ub429\ub2c8\ub2e4.<\/div>\n      <\/div>\n\n      <div class=\"faq-item\">\n        <div class=\"faq-question\">&#8220;\uac01 \ud398\uc774\uc9c0 \uac1c\ubcc4\uc801\uc73c\ub85c&#8221;\uc640 &#8220;\uadf8\ub8f9&#8221;\uc758 \ucc28\uc774\ub294 \ubb34\uc5c7\uc778\uac00\uc694? <i class=\"faq-arrow\">\u25bc<\/i><\/div>\n        <div class=\"faq-answer\">&#8220;\uac01 \ud398\uc774\uc9c0 \uac1c\ubcc4\uc801\uc73c\ub85c&#8221;\ub294 \uac01 \ud398\uc774\uc9c0\ub97c \uac1c\ubcc4 PDF\ub85c \ud3ec\ud568\ud55c ZIP \ud30c\uc77c\uc744 \ub2e4\uc6b4\ub85c\ub4dc\ud569\ub2c8\ub2e4. &#8220;\uadf8\ub8f9&#8221;\uc740 \uc120\ud0dd\ud55c \ud398\uc774\uc9c0\ub97c \ud558\ub098\uc758 PDF \ud30c\uc77c\ub85c \ubaa8\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/div>\n      <\/div>\n\n      <div class=\"faq-item\">\n        <div class=\"faq-question\">\uc554\ud638\ud654\ub41c PDF\uac00 \uc791\ub3d9\ud558\ub098\uc694? <i class=\"faq-arrow\">\u25bc<\/i><\/div>\n        <div class=\"faq-answer\">\uc554\ud638\ud654\ub41c \ud30c\uc77c\uc740 \uc554\ud638 \uc785\ub825\uc774 \ud544\uc694\ud569\ub2c8\ub2e4. \ud604\uc7ac \ub3c4\uad6c\ub294 \ube44\uc554\ud638\ud654\ub41c \ud30c\uc77c\ub9cc \uc9c0\uc6d0\ud569\ub2c8\ub2e4. \uc554\ud638\ud654\ub41c \ud30c\uc77c\uc740 \uc801\uc808\ud55c \uc18c\ud504\ud2b8\uc6e8\uc5b4\ub97c \uc0ac\uc6a9\ud558\uc5ec \uba3c\uc800 \uc554\ud638\ub97c \uc81c\uac70\ud574\uc57c \ud569\ub2c8\ub2e4.<\/div>\n      <\/div>\n\n      <div class=\"faq-item\">\n        <div class=\"faq-question\">\ub3c4\uad6c\uac00 \ubaa8\ubc14\uc77c\uc5d0\uc11c \uc791\ub3d9\ud558\ub098\uc694? <i class=\"faq-arrow\">\u25bc<\/i><\/div>\n        <div class=\"faq-answer\">\uc608, \ub3c4\uad6c\ub294 \ubaa8\ub4e0 \uc7a5\uce58\uc5d0 \ucd5c\uc801\ud654\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4. \ub9e4\uc6b0 \ud070 PDF \ud30c\uc77c\uc740 \uc2a4\ub9c8\ud2b8\ud3f0\uc5d0\uc11c \ub290\ub824\uc9c8 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/div>\n      <\/div>\n\n      <div class=\"faq-item\">\n        <div class=\"faq-question\">\uc644\ub8cc \ud6c4 ZIP \ud30c\uc77c\uc744 \uc5b4\ub5bb\uac8c \ub2e4\uc6b4\ub85c\ub4dc\ud558\ub098\uc694? <i class=\"faq-arrow\">\u25bc<\/i><\/div>\n        <div class=\"faq-answer\">\ub3c4\uad6c\ub294 JSZip \ub77c\uc774\ube0c\ub7ec\ub9ac\ub97c \uc0ac\uc6a9\ud558\uc5ec \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uc9c1\uc811 ZIP \ud30c\uc77c\uc744 \uc0dd\uc131\ud569\ub2c8\ub2e4. \ub2e4\uc6b4\ub85c\ub4dc \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uba74 ZIP \ud30c\uc77c\uc774 \uc790\ub3d9\uc73c\ub85c \ucef4\ud4e8\ud130\uc5d0 \ub2e4\uc6b4\ub85c\ub4dc\ub429\ub2c8\ub2e4.<\/div>\n      <\/div>\n\n    <\/div>\n  <\/div><!-- \/seo-card -->\n\n<\/div><!-- \/page-wrapper -->\n<\/div><!-- \/bnet-tool-pdf-splitter -->\n\n<!-- PDF.js CDN -->\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/pdf.js\/3.11.174\/pdf.min.js\"><\/script>\n<!-- PDF-lib CDN -->\n<script src=\"https:\/\/unpkg.com\/pdf-lib@1.17.1\/dist\/pdf-lib.min.js\"><\/script>\n<!-- JSZip CDN -->\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/jszip\/3.10.1\/jszip.min.js\"><\/script>\n\n<script>\n(function() {\n  'use strict';\n\n  \/\/ \u2500\u2500\u2500 STATE \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  const ROOT       = document.getElementById('bnet-tool-pdf-splitter');\n  let pdfDoc       = null;   \/\/ pdf.js doc\n  let pdfLibDoc    = null;   \/\/ pdf-lib doc for splitting\n  let pdfBytes     = null;   \/\/ raw ArrayBuffer\n  let totalPages   = 0;\n  let selectedPages = new Set();\n  let groups       = [];     \/\/ [{label, pages:[1-indexed], color}]\n  let popupPage    = 1;\n  const GROUP_COLORS = ['#6366f1','#0ea5e9','#22c55e','#f59e0b','#ef4444','#a21caf','#0891b2','#65a30d'];\n\n  \/\/ \u2500\u2500\u2500 DOM REFS \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  const dropZone          = ROOT.querySelector('#pdf-splitter-drop-zone');\n  const fileInput         = ROOT.querySelector('#pdf-splitter-file-input');\n  const uploadBtn         = ROOT.querySelector('#pdf-splitter-upload-btn');\n  const loadingArea       = ROOT.querySelector('#pdf-splitter-loading');\n  const loadingText       = ROOT.querySelector('#pdf-splitter-loading-text');\n  const toolbar           = ROOT.querySelector('#pdf-splitter-toolbar');\n  const pagesGrid         = ROOT.querySelector('#pdf-splitter-pages-grid');\n  const groupLegend       = ROOT.querySelector('#pdf-splitter-group-legend');\n  const groupPanel        = ROOT.querySelector('#pdf-splitter-group-panel');\n  const progressArea      = ROOT.querySelector('#pdf-splitter-progress-area');\n  const progressLabel     = ROOT.querySelector('#pdf-splitter-progress-label');\n  const progressBar       = ROOT.querySelector('#pdf-splitter-progress-bar');\n  const filenameLabel     = ROOT.querySelector('#pdf-splitter-filename-label');\n  const pageCountLabel    = ROOT.querySelector('#pdf-splitter-page-count');\n  const selectedCountLabel= ROOT.querySelector('#pdf-splitter-selected-count');\n  const selectAllBtn      = ROOT.querySelector('#pdf-splitter-select-all-btn');\n  const clearBtn          = ROOT.querySelector('#pdf-splitter-clear-btn');\n  const addGroupBtn       = ROOT.querySelector('#pdf-splitter-add-group-btn');\n  const downloadAllBtn    = ROOT.querySelector('#pdf-splitter-download-all-btn');\n  const downloadGroupsBtn = ROOT.querySelector('#pdf-splitter-download-groups-btn');\n  const resetBtn          = ROOT.querySelector('#pdf-splitter-reset-btn');\n  const themeBtn          = ROOT.querySelector('#pdf-splitter-theme-btn');\n  const popup             = ROOT.querySelector('#pdf-splitter-popup');\n  const popupTitle        = ROOT.querySelector('#pdf-splitter-popup-title');\n  const popupCanvas       = ROOT.querySelector('#pdf-splitter-popup-canvas');\n  const popupClose        = ROOT.querySelector('#pdf-splitter-popup-close');\n  const popupPrev         = ROOT.querySelector('#pdf-splitter-popup-prev');\n  const popupNext         = ROOT.querySelector('#pdf-splitter-popup-next');\n  const popupCounter      = ROOT.querySelector('#pdf-splitter-popup-counter');\n  const popupPageInfo     = ROOT.querySelector('#pdf-splitter-popup-page-info');\n  const popupSelectBtn    = ROOT.querySelector('#pdf-splitter-popup-select-btn');\n  const popupDownloadBtn  = ROOT.querySelector('#pdf-splitter-popup-download-btn');\n\n  \/\/ \u2500\u2500\u2500 SAFE GA4 TRACKING \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  function sendEvent(eventName, params) {\n    try {\n      if (typeof gtag === 'function') {\n        gtag('event', eventName, params);\n      } else {\n        console.log('Event tracked (GA not loaded):', eventName, params);\n      }\n    } catch(e) {}\n  }\n\n  \/\/ Set pdf.js worker\n  pdfjsLib.GlobalWorkerOptions.workerSrc = 'https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/pdf.js\/3.11.174\/pdf.worker.min.js';\n\n  \/\/ \u2500\u2500\u2500 THEME \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  const savedTheme = localStorage.getItem('bsolution_theme') || 'light';\n  if (savedTheme === 'dark') {\n    document.body.classList.add('dark-theme');\n    themeBtn.textContent = '\u2600\ufe0f \ub0ae \ubaa8\ub4dc';\n  }\n\n  themeBtn.addEventListener('click', () => {\n    document.body.classList.toggle('dark-theme');\n    const isDark = document.body.classList.contains('dark-theme');\n    themeBtn.textContent = isDark ? '\u2600\ufe0f \ub0ae \ubaa8\ub4dc' : '\ud83c\udf19 \uc57c\uac04 \ubaa8\ub4dc';\n    localStorage.setItem('bsolution_theme', isDark ? 'dark' : 'light');\n    sendEvent('tool_interaction', { tool_name: 'pdf-splitter', action: 'toggle_theme', theme: isDark ? 'dark' : 'light' });\n  });\n\n  \/\/ \u2500\u2500\u2500 FILE INPUT \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  uploadBtn.addEventListener('click', (e) => { e.stopPropagation(); fileInput.click(); });\n  dropZone.addEventListener('click', () => fileInput.click());\n  fileInput.addEventListener('change', (e) => { if (e.target.files[0]) handleFile(e.target.files[0]); });\n\n  \/\/ Drag & drop\n  dropZone.addEventListener('dragover', (e) => { e.preventDefault(); dropZone.classList.add('drag-over'); });\n  dropZone.addEventListener('dragleave', () => dropZone.classList.remove('drag-over'));\n  dropZone.addEventListener('drop', (e) => {\n    e.preventDefault();\n    dropZone.classList.remove('drag-over');\n    const f = e.dataTransfer.files[0];\n    if (f && f.type === 'application\/pdf') handleFile(f);\n  });\n\n  \/\/ \u2500\u2500\u2500 HANDLE FILE \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  async function handleFile(file) {\n    const startTime = Date.now();\n    sendEvent( 'tool_interaction', { tool_name: 'pdf-splitter', action: 'file_uploaded', file_size_kb: Math.round(file.size\/1024) });\n\n    dropZone.style.display = 'none';\n    loadingArea.style.display = 'block';\n    loadingText.textContent = '\ud30c\uc77c\uc744 \ub85c\ub4dc\ud558\ub294 \uc911...';\n\n    try {\n      pdfBytes = await file.arrayBuffer();\n\n      \/\/ Load with pdf.js for rendering (create a copy so the worker doesn't detach our buffer)\n      loadingText.textContent = '\ud398\uc774\uc9c0 \ubd84\uc11d \uc911...';\n      const typedArray = new Uint8Array(pdfBytes.slice(0));\n      pdfDoc = await pdfjsLib.getDocument({ data: typedArray }).promise;\n      totalPages = pdfDoc.numPages;\n\n      \/\/ Load with pdf-lib for splitting\n      pdfLibDoc = await PDFLib.PDFDocument.load(pdfBytes);\n\n      \/\/ Reset state\n      selectedPages.clear();\n      groups = [];\n      pagesGrid.innerHTML = '';\n\n      filenameLabel.textContent = file.name.length > 30 ? file.name.substring(0,27)+'...' : file.name;\n      pageCountLabel.textContent = totalPages;\n      updateSelectedCount();\n\n      \/\/ Show UI\n      loadingArea.style.display = 'none';\n      toolbar.style.display = 'flex';\n      pagesGrid.style.display = 'grid';\n      groupLegend.style.display = 'none';\n      groupPanel.style.display = 'none';\n\n      const duration = ((Date.now() - startTime) \/ 1000).toFixed(1);\n      sendEvent( 'tool_duration', { tool_name: 'pdf-splitter', action: 'file_loaded', duration_seconds: parseFloat(duration), pages: totalPages });\n\n      \/\/ Render thumbnails progressively\n      await renderAllThumbnails();\n\n    } catch (err) {\n      loadingArea.style.display = 'none';\n      dropZone.style.display = 'block';\n      alert('\ud30c\uc77c \ub85c\ub4dc \uc624\ub958: ' + err.message);\n      sendEvent( 'tool_error', { tool_name: 'pdf-splitter', error_message: err.message });\n    }\n  }\n\n  \/\/ \u2500\u2500\u2500 RENDER THUMBNAILS \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  async function renderAllThumbnails() {\n    for (let i = 1; i <= totalPages; i++) {\n      const thumb = createThumbElement(i);\n      pagesGrid.appendChild(thumb);\n      await renderPageToCanvas(i, thumb.querySelector('canvas'), 180);\n    }\n  }\n\n  function createThumbElement(pageNum) {\n    const div = document.createElement('div');\n    div.className = 'page-thumb';\n    div.dataset.page = pageNum;\n    div.innerHTML = `\n      <div class=\"page-canvas-wrap\">\n        <canvas><\/canvas>\n        <div class=\"page-thumb-overlay\">\n          <button class=\"thumb-fullscreen-btn\" title=\"\uc804\uccb4 \ud654\uba74\">\ud83d\udd0d<\/button>\n        <\/div>\n        <div class=\"page-check\">\u2713<\/div>\n      <\/div>\n      <div class=\"page-thumb-footer\">\n        <span class=\"page-num\">\ud398\uc774\uc9c0 ${pageNum}<\/span>\n        <span class=\"page-group-badge\" style=\"display:none;\"><\/span>\n      <\/div>\n    `;\n\n    \/\/ Click thumbnail = toggle selection\n    div.addEventListener('click', (e) => {\n      if (e.target.closest('.thumb-fullscreen-btn')) return;\n      togglePageSelection(pageNum, div);\n    });\n\n    \/\/ Fullscreen button\n    div.querySelector('.thumb-fullscreen-btn').addEventListener('click', (e) => {\n      e.stopPropagation();\n      openPopup(pageNum);\n    });\n\n    return div;\n  }\n\n  async function renderPageToCanvas(pageNum, canvas, targetWidth) {\n    const page = await pdfDoc.getPage(pageNum);\n    const viewport = page.getViewport({ scale: 1 });\n    const scale = targetWidth \/ viewport.width;\n    const scaledViewport = page.getViewport({ scale });\n    canvas.width  = scaledViewport.width;\n    canvas.height = scaledViewport.height;\n    await page.render({ canvasContext: canvas.getContext('2d'), viewport: scaledViewport }).promise;\n  }\n\n  \/\/ \u2500\u2500\u2500 SELECTION \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  function togglePageSelection(pageNum, thumbEl) {\n    if (selectedPages.has(pageNum)) {\n      selectedPages.delete(pageNum);\n      thumbEl.classList.remove('selected');\n    } else {\n      selectedPages.add(pageNum);\n      thumbEl.classList.add('selected');\n    }\n    updateSelectedCount();\n  }\n\n  function updateSelectedCount() {\n    selectedCountLabel.textContent = selectedPages.size;\n    addGroupBtn.disabled = selectedPages.size === 0;\n  }\n\n  selectAllBtn.addEventListener('click', () => {\n    sendEvent( 'tool_interaction', { tool_name: 'pdf-splitter', action: 'select_all' });\n    for (let i = 1; i <= totalPages; i++) {\n      selectedPages.add(i);\n      const thumb = pagesGrid.querySelector(`[data-page=\"${i}\"]`);\n      if (thumb) thumb.classList.add('selected');\n    }\n    updateSelectedCount();\n  });\n\n  clearBtn.addEventListener('click', () => {\n    selectedPages.clear();\n    pagesGrid.querySelectorAll('.page-thumb').forEach(t => t.classList.remove('selected'));\n    updateSelectedCount();\n  });\n\n  \/\/ \u2500\u2500\u2500 GROUPS \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  addGroupBtn.addEventListener('click', () => {\n    if (selectedPages.size === 0) return;\n    const groupIdx = groups.length;\n    const color = GROUP_COLORS[groupIdx % GROUP_COLORS.length];\n    const sortedPages = [...selectedPages].sort((a,b) => a-b);\n    const label = `\uadf8\ub8f9 ${groupIdx + 1}`;\n    groups.push({ label, pages: sortedPages, color });\n\n    \/\/ Mark pages\n    sortedPages.forEach(p => {\n      const thumb = pagesGrid.querySelector(`[data-page=\"${p}\"]`);\n      if (thumb) {\n        thumb.classList.add('in-group');\n        thumb.style.borderColor = color;\n        const badge = thumb.querySelector('.page-group-badge');\n        badge.style.display = 'inline-block';\n        badge.style.background = color;\n        badge.textContent = `G${groupIdx + 1}`;\n        thumb.classList.remove('selected');\n      }\n    });\n\n    selectedPages.clear();\n    updateSelectedCount();\n    renderGroupLegend();\n\n    groupLegend.style.display = 'flex';\n    groupPanel.style.display = 'block';\n    sendEvent( 'tool_interaction', { tool_name: 'pdf-splitter', action: 'add_group', group_num: groupIdx+1, pages: sortedPages.length });\n  });\n\n  function renderGroupLegend() {\n    groupLegend.innerHTML = '<span class=\"group-legend-label\">\ub2e4\uc6b4\ub85c\ub4dc \uadf8\ub8f9:<\/span>';\n    groups.forEach((g, i) => {\n      const chip = document.createElement('span');\n      chip.className = 'group-chip';\n      chip.style.background = g.color;\n      chip.innerHTML = `${g.label} (${g.pages.length} \ud398\uc774\uc9c0) <button class=\"chip-remove\" data-idx=\"${i}\" title=\"\uadf8\ub8f9 \uc0ad\uc81c\">\u00d7<\/button>`;\n      groupLegend.appendChild(chip);\n    });\n    \/\/ Remove handlers\n    groupLegend.querySelectorAll('.chip-remove').forEach(btn => {\n      btn.addEventListener('click', (e) => {\n        e.stopPropagation();\n        const idx = parseInt(btn.dataset.idx);\n        removeGroup(idx);\n      });\n    });\n  }\n\n  function removeGroup(idx) {\n    const g = groups[idx];\n    g.pages.forEach(p => {\n      const thumb = pagesGrid.querySelector(`[data-page=\"${p}\"]`);\n      if (thumb) {\n        thumb.classList.remove('in-group');\n        thumb.style.borderColor = '';\n        const badge = thumb.querySelector('.page-group-badge');\n        badge.style.display = 'none';\n      }\n    });\n    groups.splice(idx, 1);\n    if (groups.length === 0) {\n      groupLegend.style.display = 'none';\n      groupPanel.style.display = 'none';\n    } else {\n      renderGroupLegend();\n    }\n  }\n\n  \/\/ \u2500\u2500\u2500 DOWNLOAD ALL (individual pages) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  downloadAllBtn.addEventListener('click', async () => {\n    if (!pdfLibDoc) return;\n    sendEvent( 'tool_interaction', { tool_name: 'pdf-splitter', action: 'download_all_pages', total_pages: totalPages });\n    const startTime = Date.now();\n\n    showProgress('\ud30c\uc77c \uc900\ube44 \uc911...');\n    const zip = new JSZip();\n\n    for (let i = 1; i <= totalPages; i++) {\n      updateProgress(Math.round((i \/ totalPages) * 100), `\ud398\uc774\uc9c0 ${i} \uc900\ube44 \uc911...`);\n      const newDoc = await PDFLib.PDFDocument.create();\n      const [copiedPage] = await newDoc.copyPages(pdfLibDoc, [i - 1]);\n      newDoc.addPage(copiedPage);\n      const pdfOut = await newDoc.save();\n      zip.file(`page-${String(i).padStart(3, '0')}.pdf`, pdfOut);\n    }\n\n    updateProgress(100, 'ZIP \ud30c\uc77c \uc0dd\uc131 \uc911...');\n    const blob = await zip.generateAsync({ type: 'blob' });\n    triggerDownload(blob, 'pdf-pages.zip');\n    hideProgress();\n\n    const duration = ((Date.now() - startTime) \/ 1000).toFixed(1);\n    sendEvent( 'tool_duration', { tool_name: 'pdf-splitter', action: 'download_all', duration_seconds: parseFloat(duration) });\n  });\n\n  \/\/ \u2500\u2500\u2500 DOWNLOAD GROUPS \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  downloadGroupsBtn.addEventListener('click', async () => {\n    if (groups.length === 0) { alert('\uba3c\uc800 \ucd5c\uc18c\ud55c \ud558\ub098\uc758 \uadf8\ub8f9\uc744 \uc124\uc815\ud558\uc138\uc694.'); return; }\n    sendEvent( 'tool_interaction', { tool_name: 'pdf-splitter', action: 'download_groups', num_groups: groups.length });\n    const startTime = Date.now();\n\n    showProgress('\uadf8\ub8f9 \uc900\ube44 \uc911...');\n    const zip = new JSZip();\n\n    for (let gi = 0; gi < groups.length; gi++) {\n      const g = groups[gi];\n      updateProgress(Math.round(((gi + 1) \/ groups.length) * 100), `${g.label} \uc900\ube44 \uc911...`);\n      const newDoc = await PDFLib.PDFDocument.create();\n      for (const p of g.pages) {\n        const [copiedPage] = await newDoc.copyPages(pdfLibDoc, [p - 1]);\n        newDoc.addPage(copiedPage);\n      }\n      const pdfOut = await newDoc.save();\n      zip.file(`group-${gi + 1}-pages-${g.pages[0]}-${g.pages[g.pages.length - 1]}.pdf`, pdfOut);\n    }\n\n    updateProgress(100, 'ZIP \ud30c\uc77c \uc0dd\uc131 \uc911...');\n    const blob = await zip.generateAsync({ type: 'blob' });\n    triggerDownload(blob, 'pdf-groups.zip');\n    hideProgress();\n\n    const duration = ((Date.now() - startTime) \/ 1000).toFixed(1);\n    sendEvent( 'tool_duration', { tool_name: 'pdf-splitter', action: 'download_groups', duration_seconds: parseFloat(duration) });\n  });\n\n  \/\/ \u2500\u2500\u2500 RESET \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  resetBtn.addEventListener('click', () => {\n    pdfDoc = pdfLibDoc = pdfBytes = null;\n    totalPages = 0;\n    selectedPages.clear();\n    groups = [];\n    pagesGrid.innerHTML = '';\n    pagesGrid.style.display = 'none';\n    toolbar.style.display = 'none';\n    groupLegend.style.display = 'none';\n    groupPanel.style.display = 'none';\n    progressArea.style.display = 'none';\n    dropZone.style.display = 'block';\n    fileInput.value = '';\n    sendEvent( 'tool_interaction', { tool_name: 'pdf-splitter', action: 'reset' });\n  });\n\n  \/\/ \u2500\u2500\u2500 POPUP \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  function openPopup(pageNum) {\n    popupPage = pageNum;\n    popup.classList.add('open');\n    document.body.style.overflow = 'hidden';\n    renderPopupPage();\n    sendEvent( 'tool_interaction', { tool_name: 'pdf-splitter', action: 'open_page_preview', page: pageNum });\n  }\n\n  async function renderPopupPage() {\n    popupTitle.textContent = `\ud398\uc774\uc9c0 \ubbf8\ub9ac\ubcf4\uae30 ${popupPage}`;\n    popupPageInfo.textContent = `\ud398\uc774\uc9c0 ${popupPage} \/ ${totalPages}`;\n    popupCounter.textContent = `${popupPage} \/ ${totalPages}`;\n    popupPrev.disabled = (popupPage >= totalPages);\n    popupNext.disabled = (popupPage <= 1);\n\n    const isSelected = selectedPages.has(popupPage);\n    popupSelectBtn.textContent = isSelected ? '\u2713 \uc120\ud0dd \ud574\uc81c' : '\u2611\ufe0f \uc774 \ud398\uc774\uc9c0 \uc120\ud0dd';\n    popupSelectBtn.className = isSelected ? 'btn btn-secondary' : 'btn btn-primary';\n\n    const page = await pdfDoc.getPage(popupPage);\n    const viewport = page.getViewport({ scale: 1 });\n    const maxW = Math.min(760, window.innerWidth - 80);\n    const scale = maxW \/ viewport.width;\n    const scaledViewport = page.getViewport({ scale });\n    popupCanvas.width  = scaledViewport.width;\n    popupCanvas.height = scaledViewport.height;\n    await page.render({ canvasContext: popupCanvas.getContext('2d'), viewport: scaledViewport }).promise;\n  }\n\n  popupClose.addEventListener('click', () => { popup.classList.remove('open'); document.body.style.overflow = ''; });\n  popup.addEventListener('click', (e) => { if (e.target === popup) { popup.classList.remove('open'); document.body.style.overflow = ''; } });\n\n  popupPrev.addEventListener('click', () => { if (popupPage < totalPages) { popupPage++; renderPopupPage(); } });\n  popupNext.addEventListener('click', () => { if (popupPage > 1) { popupPage--; renderPopupPage(); } });\n\n  \/\/ Keyboard nav\n  document.addEventListener('keydown', (e) => {\n    if (!popup.classList.contains('open')) return;\n    if (e.key === 'Escape') { popup.classList.remove('open'); document.body.style.overflow = ''; }\n    if (e.key === 'ArrowLeft') { if (popupPage > 1) { popupPage--; renderPopupPage(); } }\n    if (e.key === 'ArrowRight') { if (popupPage < totalPages) { popupPage++; renderPopupPage(); } }\n  });\n\n  popupSelectBtn.addEventListener('click', () => {\n    const thumb = pagesGrid.querySelector(`[data-page=\"${popupPage}\"]`);\n    if (selectedPages.has(popupPage)) {\n      selectedPages.delete(popupPage);\n      if (thumb) thumb.classList.remove('selected');\n    } else {\n      selectedPages.add(popupPage);\n      if (thumb) thumb.classList.add('selected');\n    }\n    updateSelectedCount();\n    renderPopupPage();\n  });\n\n  popupDownloadBtn.addEventListener('click', async () => {\n    sendEvent( 'tool_interaction', { tool_name: 'pdf-splitter', action: 'download_single_page', page: popupPage });\n    popupDownloadBtn.disabled = true;\n    popupDownloadBtn.textContent = '\u23f3 \ub2e4\uc6b4\ub85c\ub4dc \uc911...';\n    try {\n      const newDoc = await PDFLib.PDFDocument.create();\n      const [copiedPage] = await newDoc.copyPages(pdfLibDoc, [popupPage - 1]);\n      newDoc.addPage(copiedPage);\n      const pdfOut = await newDoc.save();\n      const blob = new Blob([pdfOut], { type: 'application\/pdf' });\n      triggerDownload(blob, `page-${popupPage}.pdf`);\n    } catch(err) {\n      sendEvent( 'tool_error', { tool_name: 'pdf-splitter', error_message: err.message });\n    }\n    popupDownloadBtn.disabled = false;\n    popupDownloadBtn.textContent = '\u2b07\ufe0f \uc774 \ud398\uc774\uc9c0 \ub2e4\uc6b4\ub85c\ub4dc';\n  });\n\n  \/\/ \u2500\u2500\u2500 HELPERS \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  function triggerDownload(blob, filename) {\n    const url = URL.createObjectURL(blob);\n    const a = document.createElement('a');\n    a.href = url; a.download = filename; a.click();\n    setTimeout(() => URL.revokeObjectURL(url), 2000);\n  }\n\n  function showProgress(text) {\n    progressArea.style.display = 'block';\n    progressLabel.textContent = text;\n    progressBar.style.width = '0%';\n  }\n\n  function updateProgress(pct, text) {\n    progressBar.style.width = pct + '%';\n    progressLabel.textContent = text;\n  }\n\n  function hideProgress() {\n    setTimeout(() => { progressArea.style.display = 'none'; }, 1200);\n  }\n\n  \/\/ \u2500\u2500\u2500 INTERNAL LINK GA TRACKING \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  document.querySelectorAll('#pdf-splitter-link-merger, #pdf-splitter-link-compress, #pdf-splitter-link-preview').forEach(link => {\n    link.addEventListener('click', () => {\n      sendEvent( 'internal_link_click', { link_url: link.href, tool_name: 'pdf-splitter' });\n    });\n  });\n\n  \/\/ \u2500\u2500\u2500 FAQ ACCORDION \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  ROOT.querySelectorAll('.faq-question').forEach(q => {\n    q.addEventListener('click', () => {\n      const item = q.closest('.faq-item');\n      item.classList.toggle('open');\n    });\n  });\n\n})();\n<\/script>\n\n<script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@graph\": [\n    {\n      \"@type\": \"SoftwareApplication\",\n      \"name\": \"PDF \ud30c\uc77c \ubd84\ud560\uae30\",\n      \"description\": \"\ub2e8\uc77c PDF \ud30c\uc77c\uc744 \uac1c\ubcc4 \ud398\uc774\uc9c0 \ub610\ub294 \ud398\uc774\uc9c0 \uadf8\ub8f9\uc73c\ub85c \ubd84\ud560\ud558\ub294 \ubb34\ub8cc \uc628\ub77c\uc778 \ub3c4\uad6c, \uc11c\ubc84\uc5d0 \uc5c5\ub85c\ub4dc \uc5c6\uc774 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uc9c1\uc811 \uc791\ub3d9\ud569\ub2c8\ub2e4.\",\n      \"applicationCategory\": \"UtilityApplication\",\n      \"operatingSystem\": \"Web Browser\",\n      \"offers\": {\n        \"@type\": \"Offer\",\n        \"price\": \"0\",\n        \"priceCurrency\": \"ILS\"\n      },\n      \"inLanguage\": \"ko\",\n      \"url\": \"https:\/\/bsolution.me\/ko\/pdf-splitter\/\",\n      \"author\": {\n        \"@type\": \"Organization\",\n        \"name\": \"bSolution\",\n        \"url\": \"https:\/\/bsolution.me\",\n        \"address\": {\n          \"@type\": \"PostalAddress\",\n          \"addressCountry\": \"IL\"\n        }\n      }\n    },\n    {\n      \"@type\": \"FAQPage\",\n      \"mainEntity\": [\n        {\n          \"@type\": \"Question\",\n          \"name\": \"\ub3c4\uad6c\uac00 \ud398\uc774\uc9c0 \uc218\ub97c \uc81c\ud55c\ud558\ub098\uc694?\",\n          \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"\uad6c\uc131\ub41c \uc81c\ud55c\uc740 \uc5c6\uc2b5\ub2c8\ub2e4. \uc131\ub2a5\uc740 \ucef4\ud4e8\ud130\uc758 \uc131\ub2a5\uacfc \ud30c\uc77c \ud06c\uae30\uc5d0 \ub530\ub77c \ub2e4\ub985\ub2c8\ub2e4.\" }\n        },\n        {\n          \"@type\": \"Question\",\n          \"name\": \"\ub3c4\uad6c\uac00 \ub514\uc790\uc778\uacfc \uc774\ubbf8\uc9c0\ub97c \uc720\uc9c0\ud558\ub098\uc694?\",\n          \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"\uc608. \ubd84\ud560\uc740 \uc6d0\ubcf8 PDF \uc218\uc900\uc5d0\uc11c \uc218\ud589\ub418\ubbc0\ub85c \ucf58\ud150\uce20, \uae00\uaf34, \uc774\ubbf8\uc9c0 \ubc0f \ub514\uc790\uc778\uc774 \ubcc0\uacbd\ub418\uc9c0 \uc54a\uace0 \uc720\uc9c0\ub429\ub2c8\ub2e4.\" }\n        },\n        {\n          \"@type\": \"Question\",\n          \"name\": \"\uac01 \ud398\uc774\uc9c0 \uac1c\ubcc4\uc801\uc73c\ub85c\uc640 \uadf8\ub8f9\uc758 \ucc28\uc774\ub294 \ubb34\uc5c7\uc778\uac00\uc694?\",\n          \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"\uac01 \ud398\uc774\uc9c0 \uac1c\ubcc4\uc801\uc73c\ub85c\ub294 \uac01 \ud398\uc774\uc9c0\ub97c \uac1c\ubcc4 PDF\ub85c \ud3ec\ud568\ud55c ZIP \ud30c\uc77c\uc744 \ub2e4\uc6b4\ub85c\ub4dc\ud569\ub2c8\ub2e4. \uadf8\ub8f9\uc740 \uc120\ud0dd\ud55c \ud398\uc774\uc9c0\ub97c \ud558\ub098\uc758 PDF \ud30c\uc77c\ub85c \ubaa8\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\" }\n        },\n        {\n          \"@type\": \"Question\",\n          \"name\": \"\uc554\ud638\ud654\ub41c PDF\uac00 \uc791\ub3d9\ud558\ub098\uc694?\",\n          \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"\uc554\ud638\ud654\ub41c \ud30c\uc77c\uc740 \uc554\ud638 \uc785\ub825\uc774 \ud544\uc694\ud569\ub2c8\ub2e4. \ud604\uc7ac \ub3c4\uad6c\ub294 \ube44\uc554\ud638\ud654\ub41c \ud30c\uc77c\ub9cc \uc9c0\uc6d0\ud569\ub2c8\ub2e4.\" }\n        },\n        {\n          \"@type\": \"Question\",\n          \"name\": \"\ub3c4\uad6c\uac00 \ubaa8\ubc14\uc77c\uc5d0\uc11c \uc791\ub3d9\ud558\ub098\uc694?\",\n          \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"\uc608, \ub3c4\uad6c\ub294 \ubaa8\ub4e0 \uc7a5\uce58\uc5d0 \ucd5c\uc801\ud654\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.\" }\n        }\n      ]\n    },\n    {\n      \"@type\": \"SpeakableSpecification\",\n      \"cssSelector\": [\"h1.main-title\", \".subtitle\", \".wp-block-heading\"]\n    }\n  ]\n}\n<\/script>\n\n<!-- \/wp:post-content -->","protected":false},"excerpt":{"rendered":"<p>\ud83c\udf19 \uc57c\uac04 \ubaa8\ub4dc \u2702\ufe0f PDF \ud30c\uc77c \ubd84\ud560\uae30 PDF \ud30c\uc77c\uc744 \uac1c\ubcc4 \ud398\uc774\uc9c0 \ub610\ub294 \uc0ac\uc6a9\uc790 \uc9c0\uc815 \ud398\uc774\uc9c0 \uadf8\ub8f9\uc73c\ub85c \ubd84\ud560\ud558\uc138\uc694 &#8211; \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uc9c1\uc811, \uc11c\ubc84\uc5d0 \uc5c5\ub85c\ub4dc\ud560 \ud544\uc694 \uc5c6\uc774. \uc774 \ub3c4\uad6c\ub294 \ubb34\ub8cc\uc774\uba70, \ub4f1\ub85d\uc774\ub098 \ub370\uc774\ud130 \uc800\uc7a5 \uc5c6\uc774 \uc0ac\uc6a9 \uac00\ub2a5\ud569\ub2c8\ub2e4. \ud83d\udcc4 \uc5ec\uae30\uc5d0 PDF \ud30c\uc77c\uc744 \ub4dc\ub798\uadf8\ud558\uc138\uc694 \ub610\ub294 \ucef4\ud4e8\ud130\uc5d0\uc11c \ud30c\uc77c \uc120\ud0dd\uc744 \ud074\ub9ad\ud558\uc138\uc694 \ud83d\udcc2 PDF \ud30c\uc77c \uc120\ud0dd \ud30c\uc77c\uc744 \ub85c\ub4dc\ud558\ub294 \uc911&#8230; \ud83d\udcc4 &nbsp;|&nbsp; \ud398\uc774\uc9c0 &nbsp;|&nbsp; 0 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":7,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_yoast_wpseo_title":"PDF \ubd84\ud560\uae30 - PDF \ud398\uc774\uc9c0\ub97c \uc628\ub77c\uc778\uc73c\ub85c \ubd84\ud560 - bSolution","_yoast_wpseo_metadesc":"\ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uc9c1\uc811 PDF \ud30c\uc77c\uc744 \uac1c\ubcc4 \ud398\uc774\uc9c0 \ub610\ub294 \uc0ac\uc6a9\uc790 \uc815\uc758 \ud398\uc774\uc9c0 \uadf8\ub8f9\uc73c\ub85c \ubb34\ub8cc\ub85c \ubd84\ud560\ud558\uc138\uc694.","footnotes":"","tool_category":"\ud30c\uc77c \ud3b8\uc9d1","tool_emoji":"\u2702\ufe0f","tool_featured":"no"},"class_list":["post-4","page","type-page","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>PDF \ubd84\ud560\uae30 - PDF \ud398\uc774\uc9c0\ub97c \uc628\ub77c\uc778\uc73c\ub85c \ubd84\ud560 - bSolution<\/title>\n<meta name=\"description\" content=\"\ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uc9c1\uc811 PDF \ud30c\uc77c\uc744 \uac1c\ubcc4 \ud398\uc774\uc9c0 \ub610\ub294 \uc0ac\uc6a9\uc790 \uc815\uc758 \ud398\uc774\uc9c0 \uadf8\ub8f9\uc73c\ub85c \ubb34\ub8cc\ub85c \ubd84\ud560\ud558\uc138\uc694.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/bsolution.me\/ko\/pdf-splitter\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PDF \ubd84\ud560\uae30 - PDF \ud398\uc774\uc9c0\ub97c \uc628\ub77c\uc778\uc73c\ub85c \ubd84\ud560 - bSolution\" \/>\n<meta property=\"og:description\" content=\"\ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uc9c1\uc811 PDF \ud30c\uc77c\uc744 \uac1c\ubcc4 \ud398\uc774\uc9c0 \ub610\ub294 \uc0ac\uc6a9\uc790 \uc815\uc758 \ud398\uc774\uc9c0 \uadf8\ub8f9\uc73c\ub85c \ubb34\ub8cc\ub85c \ubd84\ud560\ud558\uc138\uc694.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/bsolution.me\/ko\/pdf-splitter\/\" \/>\n<meta property=\"og:site_name\" content=\"\ube44\uc988\ub2c8\uc2a4\ub97c \uc704\ud55c \ubb34\ub8cc \ub3c4\uad6c\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-22T10:38:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/bsolution.me\/ko\/wp-content\/uploads\/sites\/20\/2026\/09\/pdf-splitter-thumbnail.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"800\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/bsolution.me\\\/ko\\\/pdf-splitter\\\/\",\"url\":\"https:\\\/\\\/bsolution.me\\\/ko\\\/pdf-splitter\\\/\",\"name\":\"PDF \ubd84\ud560\uae30 - PDF \ud398\uc774\uc9c0\ub97c \uc628\ub77c\uc778\uc73c\ub85c \ubd84\ud560 - bSolution\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bsolution.me\\\/ko\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/bsolution.me\\\/ko\\\/pdf-splitter\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/bsolution.me\\\/ko\\\/pdf-splitter\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bsolution.me\\\/ko\\\/wp-content\\\/uploads\\\/sites\\\/20\\\/2026\\\/09\\\/pdf-splitter-thumbnail.jpg\",\"datePublished\":\"2026-08-31T17:01:29+00:00\",\"dateModified\":\"2026-09-22T10:38:47+00:00\",\"description\":\"\ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uc9c1\uc811 PDF \ud30c\uc77c\uc744 \uac1c\ubcc4 \ud398\uc774\uc9c0 \ub610\ub294 \uc0ac\uc6a9\uc790 \uc815\uc758 \ud398\uc774\uc9c0 \uadf8\ub8f9\uc73c\ub85c \ubb34\ub8cc\ub85c \ubd84\ud560\ud558\uc138\uc694.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/bsolution.me\\\/ko\\\/pdf-splitter\\\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/bsolution.me\\\/ko\\\/pdf-splitter\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\\\/\\\/bsolution.me\\\/ko\\\/pdf-splitter\\\/#primaryimage\",\"url\":\"https:\\\/\\\/bsolution.me\\\/ko\\\/wp-content\\\/uploads\\\/sites\\\/20\\\/2026\\\/09\\\/pdf-splitter-thumbnail.jpg\",\"contentUrl\":\"https:\\\/\\\/bsolution.me\\\/ko\\\/wp-content\\\/uploads\\\/sites\\\/20\\\/2026\\\/09\\\/pdf-splitter-thumbnail.jpg\",\"width\":800,\"height\":800,\"caption\":\"PDF \ubd84\ud560\uae30 - PDF \ud398\uc774\uc9c0\ub97c \uc628\ub77c\uc778\uc73c\ub85c \ubd84\ud560\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/bsolution.me\\\/ko\\\/pdf-splitter\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/bsolution.me\\\/ko\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"PDF \ud30c\uc77c \ubd84\ud560\uae30 &#8211; PDF\ub97c \ud398\uc774\uc9c0 \ubc0f \uac1c\ubcc4 \ud30c\uc77c\ub85c \ub098\ub204\uae30\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/bsolution.me\\\/ko\\\/#website\",\"url\":\"https:\\\/\\\/bsolution.me\\\/ko\\\/\",\"name\":\"\ube44\uc988\ub2c8\uc2a4\ub97c \uc704\ud55c \ubb34\ub8cc \ub3c4\uad6c\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/bsolution.me\\\/ko\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PDF \ubd84\ud560\uae30 - PDF \ud398\uc774\uc9c0\ub97c \uc628\ub77c\uc778\uc73c\ub85c \ubd84\ud560 - bSolution","description":"\ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uc9c1\uc811 PDF \ud30c\uc77c\uc744 \uac1c\ubcc4 \ud398\uc774\uc9c0 \ub610\ub294 \uc0ac\uc6a9\uc790 \uc815\uc758 \ud398\uc774\uc9c0 \uadf8\ub8f9\uc73c\ub85c \ubb34\ub8cc\ub85c \ubd84\ud560\ud558\uc138\uc694.","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:\/\/bsolution.me\/ko\/pdf-splitter\/","og_locale":"ko_KR","og_type":"article","og_title":"PDF \ubd84\ud560\uae30 - PDF \ud398\uc774\uc9c0\ub97c \uc628\ub77c\uc778\uc73c\ub85c \ubd84\ud560 - bSolution","og_description":"\ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uc9c1\uc811 PDF \ud30c\uc77c\uc744 \uac1c\ubcc4 \ud398\uc774\uc9c0 \ub610\ub294 \uc0ac\uc6a9\uc790 \uc815\uc758 \ud398\uc774\uc9c0 \uadf8\ub8f9\uc73c\ub85c \ubb34\ub8cc\ub85c \ubd84\ud560\ud558\uc138\uc694.","og_url":"https:\/\/bsolution.me\/ko\/pdf-splitter\/","og_site_name":"\ube44\uc988\ub2c8\uc2a4\ub97c \uc704\ud55c \ubb34\ub8cc \ub3c4\uad6c","article_modified_time":"2026-09-22T10:38:47+00:00","og_image":[{"width":800,"height":800,"url":"https:\/\/bsolution.me\/ko\/wp-content\/uploads\/sites\/20\/2026\/09\/pdf-splitter-thumbnail.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/bsolution.me\/ko\/pdf-splitter\/","url":"https:\/\/bsolution.me\/ko\/pdf-splitter\/","name":"PDF \ubd84\ud560\uae30 - PDF \ud398\uc774\uc9c0\ub97c \uc628\ub77c\uc778\uc73c\ub85c \ubd84\ud560 - bSolution","isPartOf":{"@id":"https:\/\/bsolution.me\/ko\/#website"},"primaryImageOfPage":{"@id":"https:\/\/bsolution.me\/ko\/pdf-splitter\/#primaryimage"},"image":{"@id":"https:\/\/bsolution.me\/ko\/pdf-splitter\/#primaryimage"},"thumbnailUrl":"https:\/\/bsolution.me\/ko\/wp-content\/uploads\/sites\/20\/2026\/09\/pdf-splitter-thumbnail.jpg","datePublished":"2026-08-31T17:01:29+00:00","dateModified":"2026-09-22T10:38:47+00:00","description":"\ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uc9c1\uc811 PDF \ud30c\uc77c\uc744 \uac1c\ubcc4 \ud398\uc774\uc9c0 \ub610\ub294 \uc0ac\uc6a9\uc790 \uc815\uc758 \ud398\uc774\uc9c0 \uadf8\ub8f9\uc73c\ub85c \ubb34\ub8cc\ub85c \ubd84\ud560\ud558\uc138\uc694.","breadcrumb":{"@id":"https:\/\/bsolution.me\/ko\/pdf-splitter\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/bsolution.me\/ko\/pdf-splitter\/"]}]},{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/bsolution.me\/ko\/pdf-splitter\/#primaryimage","url":"https:\/\/bsolution.me\/ko\/wp-content\/uploads\/sites\/20\/2026\/09\/pdf-splitter-thumbnail.jpg","contentUrl":"https:\/\/bsolution.me\/ko\/wp-content\/uploads\/sites\/20\/2026\/09\/pdf-splitter-thumbnail.jpg","width":800,"height":800,"caption":"PDF \ubd84\ud560\uae30 - PDF \ud398\uc774\uc9c0\ub97c \uc628\ub77c\uc778\uc73c\ub85c \ubd84\ud560"},{"@type":"BreadcrumbList","@id":"https:\/\/bsolution.me\/ko\/pdf-splitter\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/bsolution.me\/ko\/"},{"@type":"ListItem","position":2,"name":"PDF \ud30c\uc77c \ubd84\ud560\uae30 &#8211; PDF\ub97c \ud398\uc774\uc9c0 \ubc0f \uac1c\ubcc4 \ud30c\uc77c\ub85c \ub098\ub204\uae30"}]},{"@type":"WebSite","@id":"https:\/\/bsolution.me\/ko\/#website","url":"https:\/\/bsolution.me\/ko\/","name":"\ube44\uc988\ub2c8\uc2a4\ub97c \uc704\ud55c \ubb34\ub8cc \ub3c4\uad6c","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/bsolution.me\/ko\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"}]}},"_links":{"self":[{"href":"https:\/\/bsolution.me\/ko\/wp-json\/wp\/v2\/pages\/4","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bsolution.me\/ko\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/bsolution.me\/ko\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/bsolution.me\/ko\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bsolution.me\/ko\/wp-json\/wp\/v2\/comments?post=4"}],"version-history":[{"count":3,"href":"https:\/\/bsolution.me\/ko\/wp-json\/wp\/v2\/pages\/4\/revisions"}],"predecessor-version":[{"id":9,"href":"https:\/\/bsolution.me\/ko\/wp-json\/wp\/v2\/pages\/4\/revisions\/9"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bsolution.me\/ko\/wp-json\/wp\/v2\/media\/7"}],"wp:attachment":[{"href":"https:\/\/bsolution.me\/ko\/wp-json\/wp\/v2\/media?parent=4"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}