Files
spanish-diary/knowledge/comparacion-fonetica.html

359 lines
15 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>语音对照:汉语拼音 / 英语 / 西班牙语 — 西班牙语知识库</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<nav class="top-nav">
<a class="back" href="../knowledge.html">← 知识库</a>
<span class="home">🔤 三语语音对照</span>
</nav>
<h1>汉语拼音 · 英语字母 · 西班牙语发音对照</h1>
<p class="page-subtitle">比较三套语音系统的异同,点击 🔊 听发音,重点区分最容易混淆的音。</p>
<div class="article" id="resumen">
<h2>0. 三套语音系统概览</h2>
<div class="article-title-en">Sistemas de pronunciación</div>
<table>
<tr><th>项目</th><th>汉语拼音</th><th>英语</th><th>西班牙语</th></tr>
<tr><td>文字系统</td><td>汉字 + 拼音字母</td><td>26 个拉丁字母</td><td>27 个拉丁字母</td></tr>
<tr><td>发音单位</td><td>声母 + 韵母 + 声调</td><td>字母名 + 音素(元音/辅音)</td><td>字母名 + 固定拼读规则</td></tr>
<tr><td>元音数量</td><td>6 个单韵母(含 ü)</td><td>约 20 个元音音素</td><td>5 个固定元音</td></tr>
<tr><td>声调/重音</td><td>4 个声调,决定词义</td><td>重音影响词义,拼写不标记</td><td>重音规则固定,可写重音符号</td></tr>
<tr><td>字母音对应</td><td>拼读较规则</td><td>拼写与读音不一致多</td><td>拼读非常规则</td></tr>
<tr><td>最易混淆</td><td>zh/ch/sh/j/q/x/c</td><td>th / v / r / 长短元音</td><td>b/v、r/rr、ll、ñ、j</td></tr>
</table>
</div>
<div class="article" id="pinyin">
<h2>1. 汉语拼音</h2>
<div class="article-title-en">Pinyin chino</div>
<h3>声母</h3>
<div id="pinyin-initials"></div>
<h3>韵母</h3>
<div id="pinyin-finals"></div>
<h3>四个声调</h3>
<div id="pinyin-tones"></div>
<div class="tip"><strong>易错提醒:</strong>汉语声调决定词义,如 mā(妈)、má(麻)、mǎ(马)、mà(骂);西班牙语没有声调,只有固定重音。</div>
</div>
<div class="article" id="english">
<h2>2. 英语字母与常见音素</h2>
<div class="article-title-en">English letters and sounds</div>
<h3>26 个字母名称</h3>
<div id="english-alphabet"></div>
<h3>常见元音音素</h3>
<div id="english-vowels"></div>
<h3>常见辅音音素</h3>
<div id="english-consonants"></div>
<div class="tip"><strong>易错提醒:</strong>英语同一个字母有多种读音,如 a 在 apple /æ/、cake /eɪ/、about /ə/ 中不同;字母名与单词中的实际发音也不同。</div>
</div>
<div class="article" id="spanish">
<h2>3. 西班牙语字母与拼读</h2>
<div class="article-title-en">Alfabeto y sonidos españoles</div>
<h3>元音</h3>
<div id="spanish-vowels"></div>
<h3>易混辅音</h3>
<div id="spanish-consonants"></div>
<div class="tip"><strong>易错提醒:</strong>西班牙语拼读基本固定:h 不发音,ll 常发“衣”或“日”,ñ 是 ni 的鼻音,r 和 rr 会区分词义(pero 但是 / perro 狗)。</div>
</div>
<div class="article" id="comparacion">
<h2>4. 三语易混淆音对照</h2>
<div class="article-title-en">Puntos de confusión</div>
<div id="confusion-table"></div>
</div>
<script src="../speech.js"></script>
<script>
function escHtml(s) {
var div = document.createElement('div');
div.textContent = s;
return div.innerHTML;
}
function speakExample(text, lang) {
speakText(text, lang);
}
function renderRows(rows, columns) {
return rows.map(function(row) {
return '<tr>' + columns.map(function(col, i) {
var val = row[i];
if (col.sound) {
return '<td><button class="speak-btn" data-text="' + escHtml(row[col.textIndex]) + '" data-lang="' + col.lang + '">🔊</button> ' + escHtml(val) + '</td>';
}
return '<td>' + escHtml(val) + '</td>';
}).join('') + '</tr>';
}).join('');
}
function buildTable(containerId, head, rows, columns) {
document.getElementById(containerId).innerHTML =
'<table><thead><tr>' + head.map(function(h) { return '<th>' + escHtml(h) + '</th>'; }).join('') + '</tr></thead><tbody>' +
renderRows(rows, columns) + '</tbody></table>';
}
// 声母
buildTable('pinyin-initials',
['声母', '拼音', '近似说明', '发音'],
[
['b', 'ba', '不送气“玻”', '爸'],
['p', 'pa', '送气“坡”', '怕'],
['m', 'ma', '双唇鼻音“妈”', '妈'],
['f', 'fa', '唇齿摩擦“发”', '发'],
['d', 'da', '不送气“得”', '大'],
['t', 'ta', '送气“特”', '他'],
['n', 'na', '舌尖鼻音“那”', '那'],
['l', 'la', '舌尖边音“拉”', '拉'],
['g', 'ga', '不送气“哥”', '哥'],
['k', 'ka', '送气“科”', '卡'],
['h', 'ha', '喉部摩擦“哈”', '哈'],
['j', 'ji', '舌面不送气“基”', '鸡'],
['q', 'qi', '舌面送气“七”', '七'],
['x', 'xi', '舌面摩擦“西”', '西'],
['zh', 'zha', '翘舌不送气“知”', '知'],
['ch', 'cha', '翘舌送气“吃”', '吃'],
['sh', 'sha', '翘舌摩擦“诗”', '诗'],
['r', 'ri', '翘舌浊音“日”', '日'],
['z', 'za', '平舌不送气“资”', '资'],
['c', 'ca', '平舌送气“疵”', '词'],
['s', 'sa', '平舌摩擦“思”', '思'],
['y', 'ya', '半元音“呀”', '呀'],
['w', 'wa', '半元音“哇”', '哇']
],
[
{ textIndex: 0 }, { textIndex: 1 }, { textIndex: 2 },
{ sound: true, textIndex: 3, lang: 'zh' }
]
);
// 韵母
buildTable('pinyin-finals',
['韵母', '例字', '说明', '发音'],
[
['a', 'ā', '开口音“啊”', '啊'],
['o', 'ō', '圆唇“喔”', '喔'],
['e', 'ē', '舌面后“鹅”', '鹅'],
['i', 'ī', '前高“衣”', '衣'],
['u', 'ū', '后高“乌”', '乌'],
['ü', 'ǖ', '圆唇前高“迂”', '迂'],
['ai', 'āi', '“哀”', '爱'],
['ei', 'ēi', '“诶”', '诶'],
['ao', 'āo', '“熬”', '熬'],
['ou', 'ōu', '“欧”', '欧'],
['an', 'ān', '“安”', '安'],
['en', 'ēn', '“恩”', '恩'],
['ang', 'āng', '“昂”', '昂'],
['eng', 'ēng', '后鼻音“亨”', '鞥'],
['ong', 'ōng', '“轰”', '轰'],
['ie', 'iē', '“耶”', '耶'],
['üe', 'üē', '“约”', '约'],
['ian', 'iān', '“烟”', '烟'],
['in', 'īn', '“因”', '因'],
['iang', 'iāng', '“央”', '央'],
['ing', 'īng', '“英”', '英'],
['ua', 'uā', '“蛙”', '蛙'],
['uo', 'uō', '“窝”', '窝'],
['uai', 'uāi', '“歪”', '歪'],
['ui', 'uī', '“威”', '威'],
['uan', 'uān', '“弯”', '弯'],
['un', 'ūn', '“温”', '温'],
['uang', 'uāng', '“汪”', '汪'],
['üan', 'üān', '“冤”', '冤'],
['ün', 'ǖn', '“晕”', '晕']
],
[
{ textIndex: 0 }, { textIndex: 1 }, { textIndex: 2 },
{ sound: true, textIndex: 3, lang: 'zh' }
]
);
// 声调
buildTable('pinyin-tones',
['声调', '示例', '含义', '发音'],
[
['第一声 ā', 'mā', '妈', 'mā'],
['第二声 á', 'má', '麻', 'má'],
['第三声 ǎ', 'mǎ', '马', 'mǎ'],
['第四声 à', 'mà', '骂', 'mà'],
['轻声', 'ma', '吗(语气词)', 'ma']
],
[
{ textIndex: 0 }, { textIndex: 1 }, { textIndex: 2 },
{ sound: true, textIndex: 3, lang: 'zh' }
]
);
// 英语字母
var alphabet = [];
var letterNames = {
A:'eɪ', B:'biː', C:'siː', D:'diː', E:'iː', F:'ef', G:'dʒiː',
H:'eɪtʃ', I:'aɪ', J:'dʒeɪ', K:'keɪ', L:'el', M:'em', N:'en',
O:'oʊ', P:'piː', Q:'kjuː', R:'ɑːr', S:'es', T:'tiː', U:'juː',
V:'viː', W:'ˈdʌbəljuː', X:'eks', Y:'waɪ', Z:'ziː'
};
var letterExamples = {
A:'apple', B:'book', C:'cat', D:'dog', E:'egg', F:'fish', G:'go',
H:'hat', I:'ice', J:'jump', K:'kite', L:'lion', M:'moon', N:'night',
O:'orange', P:'pen', Q:'queen', R:'run', S:'sun', T:'time', U:'umbrella',
V:'very', W:'water', X:'box', Y:'yes', Z:'zoo'
};
Object.keys(letterNames).forEach(function(letter) {
alphabet.push([letter, letterNames[letter], letterExamples[letter], letter + ', ' + letterExamples[letter]]);
});
buildTable('english-alphabet',
['字母', '字母音标', '例词', '发音'],
alphabet,
[
{ textIndex: 0 }, { textIndex: 1 }, { textIndex: 2 },
{ sound: true, textIndex: 3, lang: 'en' }
]
);
// 英语元音
buildTable('english-vowels',
['音标', '例词', '说明', '发音'],
[
['/æ/', 'cat', '短音“哎”', 'cat'],
['/e/', 'bed', '短音“诶”', 'bed'],
['/ɪ/', 'sit', '短音“衣”更短', 'sit'],
['/iː/', 'see', '长音“衣”', 'see'],
['/ɒ/', 'hot', '短音“奥”', 'hot'],
['/ɔː/', 'law', '长音“奥”', 'law'],
['/ʌ/', 'cup', '短音“阿”', 'cup'],
['/ɑː/', 'car', '长音“啊”', 'car'],
['/ʊ/', 'book', '短音“乌”', 'book'],
['/uː/', 'food', '长音“乌”', 'food'],
['/ə/', 'about', '弱音“额”', 'about'],
['/eɪ/', 'cake', '双元音“诶衣”', 'cake'],
['/aɪ/', 'time', '双元音“啊衣”', 'time'],
['/oʊ/', 'go', '双元音“欧”', 'go'],
['/aʊ/', 'house', '双元音“啊乌”', 'house']
],
[
{ textIndex: 0 }, { textIndex: 1 }, { textIndex: 2 },
{ sound: true, textIndex: 3, lang: 'en' }
]
);
// 英语辅音
buildTable('english-consonants',
['音标', '例词', '说明', '发音'],
[
['/p/', 'pen', '送气“泼”', 'pen'],
['/b/', 'book', '不送气“玻”', 'book'],
['/t/', 'time', '送气“特”', 'time'],
['/d/', 'dog', '不送气“得”', 'dog'],
['/k/', 'cat', '送气“科”', 'cat'],
['/g/', 'go', '不送气“哥”', 'go'],
['/f/', 'fish', '“夫”', 'fish'],
['/v/', 'very', '上齿咬下唇“夫”浊音', 'very'],
['/s/', 'sun', '“思”', 'sun'],
['/z/', 'zoo', '“思”浊音', 'zoo'],
['/θ/', 'think', '舌尖吐气“丝”', 'think'],
['/ð/', 'this', '舌尖吐气浊音', 'this'],
['/ʃ/', 'she', '“诗”', 'she'],
['/ʒ/', 'pleasure', '“诗”浊音', 'pleasure'],
['/tʃ/', 'chair', '“吃”', 'chair'],
['/dʒ/', 'jump', '“知”浊音', 'jump'],
['/m/', 'moon', '双唇鼻音', 'moon'],
['/n/', 'night', '舌尖鼻音', 'night'],
['/ŋ/', 'sing', '后鼻音', 'sing'],
['/l/', 'lion', '边音“勒”', 'lion'],
['/r/', 'run', '卷舌浊音', 'run'],
['/h/', 'hat', '喉部“哈”', 'hat'],
['/w/', 'water', '半元音“哇”', 'water'],
['/j/', 'yes', '半元音“衣”', 'yes']
],
[
{ textIndex: 0 }, { textIndex: 1 }, { textIndex: 2 },
{ sound: true, textIndex: 3, lang: 'en' }
]
);
// 西班牙语元音
buildTable('spanish-vowels',
['字母', '近似发音', '例词', '发音'],
[
['a', '像“啊”', 'casa', 'casa'],
['e', '像“诶”', 'mesa', 'mesa'],
['i', '像“衣”', 'sí', 'sí'],
['o', '像“哦”', 'todo', 'todo'],
['u', '像“乌”', 'luna', 'luna']
],
[
{ textIndex: 0 }, { textIndex: 1 }, { textIndex: 2 },
{ sound: true, textIndex: 3, lang: 'es' }
]
);
// 西班牙语易混辅音
buildTable('spanish-consonants',
['字母', '例词', '说明', '发音'],
[
['b / v', 'bien / vivir', '发音相同,双唇音', 'bien vivir'],
['c (e/i)', 'cero', '西语“斯/嘶”', 'cero'],
['c (a/o/u)', 'casa', '像“嘎”不送气', 'casa'],
['ch', 'chico', '像“吃”', 'chico'],
['d', 'día / nada', '词首“德”,元音间轻摩擦', 'día nada'],
['g (e/i)', 'gente', '像“哈”', 'gente'],
['g (a/o/u)', 'gato', '像“嘎”', 'gato'],
['h', 'hola', '不发音', 'hola'],
['j', 'joven', '喉部“哈”', 'joven'],
['ll', 'llamar', '像“衣”或“日”', 'llamar'],
['ñ', 'niño', 'ni 的鼻音', 'niño'],
['q', 'queso', 'u 不发音,像“克”', 'queso'],
['r', 'pero', '单颤音', 'pero'],
['rr / r-', 'perro / río', '多颤音', 'perro río'],
['z', 'zapato', '西班牙“嘶”,拉美“斯”', 'zapato']
],
[
{ textIndex: 0 }, { textIndex: 1 }, { textIndex: 2 },
{ sound: true, textIndex: 3, lang: 'es' }
]
);
// 易混淆对比
buildTable('confusion-table',
['拼音', '英语', '西班牙语', '区别提醒'],
[
['b / p', '/b/ /p/', 'b / v', '汉语 b 不送气,英语 p 送气;西语 b/v 同音'],
['d / t', '/d/ /t/', 'd / t', '汉语 d 不送气;英语 t 送气;西语 d 元音间变轻'],
['g / k', '/g/ /k/', 'g / c(q)', '西语 c(a/o/u)/qu 发“克”;g(e/i) 发“哈”'],
['zh / ch / sh', '/dʒ/ /tʃ/ /ʃ/', 'ch / ll', '拼音 zh/ch/sh 翘舌;西语 ch 接近“吃”,ll 接近“衣/日”'],
['j / q / x', '/dʒ/ /tʃ/ /ʃ/', 'j / ch', '拼音 x 接近英语 sh,但更平;西语 j 是喉部“哈”'],
['z / c / s', '/z/ /s/ /θ/', 'z / c(e,i) / s', '西语 z 和 c(e/i) 常发“嘶”;英语 z 是浊音'],
['r', '/r/', 'r / rr', '拼音 r 是翘舌浊音;西语 rr 是多颤音,r 是单颤音'],
['ü', '/juː/', 'u', '拼音 ü 圆唇前高;英语字母 u 常读“优”;西语 u 固定读“乌”'],
['e', '/e/ /iː/', 'e', '拼音 e 近似“鹅”;英语字母 E 读“衣”;西语 e 固定“诶”'],
['ai', '/aɪ/', 'ai', '拼音 ai 是“哀”;英语 /aɪ/ 是“爱”;西语 ai 也是“哀”']
],
[
{ textIndex: 0 }, { textIndex: 1 }, { textIndex: 2 }, { textIndex: 3 }
]
);
document.addEventListener('click', function(e) {
var btn = e.target.closest('.speak-btn');
if (btn) {
speakText(btn.dataset.text, btn.dataset.lang || 'es');
}
});
</script>
</body>
</html>