Перейти к основному содержимому
claw
am
tools
Инструменты
Документы
Daoark
EN
Главная
Главная
/
Текстовые инструменты
›
Главная
manifest.json
= 0x2800 && code <= 0x28FF) { var dots = code - 0x2800; if (dots === 0x20) { isCapital = true; continue; } // CAPITAL if (dots === 0x21) { isNumberMode = true; continue; } // NUMBER // 找 0x01-0x1A (a-j) if (dots >= 1 && dots <= 0x1A) { var idx = dots - 1; if (isNumberMode) { if (idx === 9) out += '0'; else out += (idx + 1).toString(); isNumberMode = false; } else { var ch = String.fromCharCode(97 + idx); out += isCapital ? ch.toUpperCase() : ch; isCapital = false; } } } else if (c === ' ') { isNumberMode = false; isCapital = false; out += ' '; } else { isNumberMode = false; isCapital = false; out += c; } } return out; } // 中文 → 盲文(简化:逐字 pinyin 转换 + 盲文表) // 简化:对 GB2312 常用字,声母 + 韵母组合 → 盲文 // 真实汉语盲文需要完整拼音表,这里只做 60+ 常用字示例 var PINYIN_BR = { '中': '⠌⠧', '国': '⠅⠕', '人': '⠗⠢', '我': '⠺⠕', '你': '⠝⠊', '好': '⠓⠡', '是': '⠩', '的': '⠙⠑', '不': '⠃⠥', '在': '⠵⠁⠊', '有': '⠽⠕', '和': '⠓⠑', '这': '⠵⠑', '那': '⠝⠁', '大': '⠙⠁', '小': '⠭⠊⠕', '多': '⠙⠕', '少': '⠩⠕', '上': '⠩⠁⠝', '下': '⠭⠜', '今': '⠚⠊⠝', '天': '⠞⠊⠁⠝', '年': '⠝⠊⠁⠝', '月': '⠽⠑', '日': '⠗⠊', '时': '⠩⠊', '分': '⠋⠢', '秒': '⠍⠊⠕', '爱': '⠁⠊', '恨': '⠓⠢', '学': '⠭⠅', '习': '⠭⠊', '工': '⠛⠕⠝', '作': '⠵⠕', '生': '⠩⠢', '活': '⠓⠕', '世': '⠩⠊', '界': '⠚⠊', '家': '⠚⠜', '学': '⠭⠅', '校': '⠭⠊⠕', '书': '⠎⠥', '汉': '⠓⠁⠝', '语': '⠽⠊', '字': '⠵', '中': '⠌⠧', '华': '⠓⠺⠁', '美': '⠍⠑', '好': '⠓⠡', }; function zhToBraille(text) { var out = ''; for (var i = 0; i < text.length; i++) { var c = text[i]; if (/[a-zA-Z0-9]/.test(c)) { out += enToBraille(c); } else if (/[\u4e00-\u9fa5]/.test(c)) { if (PINYIN_BR[c]) out += PINYIN_BR[c]; else out += '⠿'; // 未知字符占位 } else { out += c; } } return out; } var lastResult = ''; function doProcess() { try { var text = getVal('text-a'); if (!text) { showError('请输入'); return; } var op = $('op').value; var out = ''; if (op === 'en2br') out = enToBraille(text); else if (op === 'br2en') out = brailleToEn(text); else if (op === 'zh2br') out = zhToBraille(text); lastResult = out; showResult(out, op + ' · ' + text.length + ' 字符 → ' + out.length + ' 字符'); } catch (e) { showError('处理失败: ' + (e.message || e)); } } $('btn-main').addEventListener('click', function(e) { e.preventDefault(); doProcess(); }); $('btn-copy').addEventListener('click', function() { if (lastResult && navigator.clipboard) navigator.clipboard.writeText(lastResult); }); $('btn-clear').addEventListener('click', function() { var inputs = document.querySelectorAll('input,textarea,select'); for (var i = 0; i < inputs.length; i++) { if (inputs[i].tagName === 'SELECT') inputs[i].selectedIndex = 0; else inputs[i].value = inputs[i].defaultValue; } lastResult = ''; var ra = $('result-area'); ra.hidden = true; ra.style.display = 'none'; var em = $('error-msg'); em.hidden = true; em.style.display = 'none'; $('btn-copy').style.display = 'none'; }); })();