CSS-听觉媒体


网络文档可以由语音合成器呈现。CSS2 允许您将特定的声音风格功能附加到特定的文档元素。

文件的听觉呈现主要由视障人士使用。可以通过听觉呈现而不是视觉呈现来访问文档的一些情况如下。

  • 学习阅读
  • 训练
  • 车辆中的网络访问
  • 家庭娱乐
  • 工业文档
  • 医疗文件

当使用听觉属性时,画布由三维物理空间(声音环绕)和时间空间(可以指定其他声音之前、期间和之后的声音)组成。

CSS 属性还允许您改变合成语音的质量(语音类型、频率、音调变化等)。

这是一个例子 -

<html>
   <head>
      <style type = "text/css">
         h1, h2, h3, h4, h5, h6 {
            voice-family: paul;
            stress: 20;
            richness: 90;
            cue-before: url("../audio/pop.au");
         }
         p {
            azimuth:center-right;
         }
      </style>
   </head>

   <body>
   
      <h1>Tutorialspoint.com</h1>
      <h2>Tutorialspoint.com</h2>
      <h3>Tutorialspoint.com</h3>
      <h4>Tutorialspoint.com</h4>
      <h5>Tutorialspoint.com</h5>
      <h6>Tutorialspoint.com</h6>
      <p>Tutorialspoint.com</p>
      
   </body>
</html> 

它将产生以下结果 -

它将指示语音合成器以称为“paul”的声音(一种音频字体)说出标题,声音平淡,但声音非常丰富。在说出标题之前,将从给定的 URL 播放声音样本。

具有“heidi”类的段落将显示为来自左前方(如果音响系统具有空间音频功能),而“peter”类的段落则显示为来自右侧。

现在我们将看到与听觉媒体相关的各种属性。

  • 方位角属性设置声音应从水平方向发出

  • 海拔属性设置声音应从垂直方向发出。

  • ue -after指定在说出元素内容后播放的声音,以将其与其他元素分隔开。

  • ue -before指定在说出某个元素的内容之前要播放的声音,以将其与其他元素分隔开。

  • 提示是设置提示之前提示之后的简写。

  • 暂停指定在说出元素内容后要观察的暂停。

  • 暂停之前指定在说出元素内容之前要观察的暂停。

  • 暂停是设置暂停之前暂停之后的简写。

  • 音调指定说话声音的平均音调(频率)。

  • 音高范围指定平均音高的变化。

  • play -during指定在朗读元素内容时作为背景播放的声音。

  • 丰富指定说话声音的丰富度或亮度。

  • 讲话指定文本是否以听觉方式呈现,如果是,则以何种方式呈现

  • 说出数字控制数字的读出方式。

  • 说话标点符号指定标点符号的发音方式。

  • 语速指定语速。

  • 重音指定了语音语调轮廓中“局部峰值”的高度

  • 语音家族指定语音家族名称的优先级列表。

  • 音量指声音的中间音量。

方位角属性

方位角属性设置声音的水平方向。下面列出了可能的值 -

  • angle - 位置以-360deg360deg范围内的角度来描述。值0deg表示位于声场中心的正前方。90 度位于右侧,180 度位于后面,270 度位于左侧(或者,等效且更方便地为-90 度)。

  • 左侧- 与“270deg”相同。与“后面”、“270度”。

  • 最左- 与“300deg”相同。与“后面”、“240度”。

  • - 与“320deg”相同。与“后面”、“220度”。

  • 中左- 与“340deg”相同。与“后面”、“200度”。

  • 中心- 与“0deg”相同。与“后面”、“180度”。

  • 中右- 与“20deg”相同。与“后面”、“160°”。

  • - 与“40deg”相同。与“后面”、“140度”。

  • 最右- 与“60deg”相同。与“后面”、“120度”。

  • 右侧- 与“90deg”相同。与“后面”、“90度”。

  • leftwards - 将声音向左移动并相对于当前角度。更准确地说,减去 20 度。

  • rightwards - 将声音相对于当前角度向右移动。更准确地说,增加 20 度。

这是一个例子 -

<style type = "text/css">
   <!--
      h1   { azimuth: 30deg }
      td.a { azimuth: far-right }          /*  60deg */
      #12  { azimuth: behind far-right }   /* 120deg */
      p.comment { azimuth: behind }        /* 180deg */
   -->
</style>

高程属性

海拔属性设置声音的垂直来源位置。可能的值如下 -

  • angle - 将仰角指定为-90deg90deg之间的角度。0deg表示在前方地平线上,大致表示与听者处于水平位置。90°表示正上方,-90°表示正下方。

  • 下面- 与“-90deg”相同。

  • level - 与“0deg”相同。

  • 上面- 与“90deg”相同。

  • 更高- 将当前高度增加 10 度。

  • lower - 从当前高度减去 10 度。

这是一个例子 -

<style type = "text/css">
   <!--
      h1   { elevation: above }
      tr.a { elevation: 60deg }
      tr.b { elevation: 30deg }
      tr.c { elevation: level }
   -->
</style>

属性后的提示

ue-after 属性指定在说出元素内容后播放的声音,以将其与其他元素分隔开。可能的值包括 -

  • url - 要播放的声音文件的 URL。

  • none - 无需播放任何内容。

这是一个例子 -

<style type = "text/css">
   <!--
      a {cue-after: url("dong.wav");}
      h1 {cue-after: url("pop.au"); }
   -->
</style>

属性之前的提示

此属性指定在说出元素内容之前要播放的声音,以将其与其他元素分隔开。可能的值为 -

  • url - 要播放的声音文件的 URL。

  • none - 无需播放任何内容。

这是一个例子 -

<style type = "text/css">
   <!--
      a {cue-before: url("bell.aiff");}
      h1 {cue-before: url("pop.au"); }
   -->
</style>

提示属性

cue 属性是设置cue-beforecue-after的简写。如果给出两个值,第一个值是提示之前,第二个值是提示之后。如果仅给出一个值,则它适用于这两个属性。

例如,以下两个规则是等效的 -

<style type = "text/css">
   <!--
      h1 {cue-before: url("pop.au"); cue-after: url("pop.au") }
      h1 {cue: url("pop.au") }
   -->
</style>

属性之后的暂停

此属性指定在说出元素内容后要观察的暂停。可能的值为 -

  • time - 以绝对时间单位(秒和毫秒)表示暂停。

  • 百分比- 指语速属性值的倒数。例如,如果语速为每分钟 120 个单词(即一个单词需要半秒或 500 毫秒),则100% 的暂停后意味着 500 毫秒的暂停, 20% 的暂停后意味着 100 毫秒。

属性之前的暂停

此属性指定在说出元素内容之前要观察的暂停。可能的值为 -

  • time - 以绝对时间单位(秒和毫秒)表示暂停。

  • 百分比- 指语速属性值的倒数。例如,如果语速为每分钟 120 个单词(即一个单词需要半秒或 500 毫秒),则100% 的暂停之前意味着 500 毫秒的暂停, 20% 的暂停之前意味着 100 毫秒。

暂停属性

此属性是设置pause-beforepause-after的简写。如果给出两个值,则第一个值是暂停之前,第二个值是暂停之后。

这是一个例子 -

<style type = "text/css">
   <!--
      /* pause-before: 20ms; pause-after: 20ms */
      h1 { pause : 20ms }  
	
      /* pause-before: 30ms; pause-after: 40ms */
      h2{ pause : 30ms 40ms }  
	
      /* pause-before: ?; pause-after: 10ms */
      h3 { pause-after : 10ms }
   -->
</style>

球场物业

此属性指定说话声音的平均音高(频率)。声音的平均音高取决于声系。例如,标准男声的平均音高约为 120Hz,而女声的平均音高约为 210Hz。可能的值为 -

  • 频率- 指定说话声音的平均音调,以赫兹 (Hz) 为单位。

  • x-low、low、medium、high、x-high - 这些值不会映射到绝对频率,因为这些值取决于语音系列。

音域属性

该属性指定平均音高的变化。可能的值为 -

  • number - '0' 和 '100' 之间的值。音高范围“0”会产生平坦、单调的声音。50 的音调范围会产生正常的音调变化。大于 50 的音高范围会产生动画声音。

财产期间的游戏

此属性指定在朗读元素内容时作为背景播放的声音。可能的值可以是以下任何一个 -

  • URI - 当说出元素的内容时,此 <uri> 指定的声音将作为背景播放。

  • mix - 当存在时,此关键字意味着从父元素的play-during属性继承的声音继续播放,并且由uri指定的声音与其混合。如果未指定mix,则该元素的背景声音将替换父元素的背景声音。

  • Repeat - 当存在时,此关键字意味着如果声音太短而无法填充元素的整个持续时间,则声音将重复。否则,声音会播放一次然后停止。

  • auto - 父元素的声音继续播放。

  • none - 该关键字意味着没有声音。

这是一个例子 -

<style type = "text/css">
   <!--
      blockquote.sad { play-during: url("violins.aiff") }
      blockquote q   { play-during: url("harp.wav") mix }
      span.quiet     { play-during: none }
   -->
</style>

丰富的财产

该属性指定说话声音的丰富度或亮度。可能的值为 -

  • number - '0' 和 '100' 之间的值。值越高,承载的声音越多。较低的值将产生柔和、悦耳的声音。

说话财产

此属性指定是否以听觉方式呈现文本,如果是,则以何种方式呈现。可能的值为 -

  • none - 抑制听觉渲染,以便元素不需要时间渲染。

  • 正常- 使用与语言相关的发音规则来呈现元素及其子元素。

  • pell-out - 一次拼写一个字母的文本。

请注意“volume”属性值为“silent”的元素与“speak”属性值为“none”的元素之间的区别。前者占用的时间与说话时的时间相同,包括该元素之前和之后的任何停顿,但不产生声音。后者不需要时间并且不会被渲染。

说话数字属性

该属性控制数字的发音方式。可能的值为 -

  • digits - 将数字作为单独的数字说出。因此,“237”读作“二三七”。

  • Continuous - 将数字说成完整的数字。因此,“237”读作“237”。单词表示依赖于语言。

说话标点符号属性

该属性指定标点符号的发音方式。可能的值为 -

  • code - 分号、大括号等标点符号应按字面意思读出。

  • none - 标点符号不能说出来,而是自然地呈现为各种停顿。

语速属性

该属性指定语速。请注意,绝对和相对关键字值都是允许的。可能的值为 -

  • number - 指定每分钟的语速。

  • x-slow - 与每分钟 80 个单词相同。

  • - 相当于每分钟 120 个单词。

  • 中等- 相当于每分钟 180 - 200 个单词。

  • - 相当于每分钟 300 个单词。

  • x-fast - 相当于每分钟 500 个单词。

  • 更快- 在当前语速的基础上每分钟添加 40 个单词。

  • 较慢- 从当前语速中每分钟减去 40 个单词。

应力性质

该属性指定语音语调轮廓中“局部峰值”的高度。英语是重音语言,句子的不同部分被指定为第一、第二或第三重音。可能的值为 -

  • number - '0' 和 '100' 之间的值。价值观的含义取决于所使用的语言。例如,标准英语男性语音(平均音调 = 122Hz)的级别“50”,以正常语调和重音说话,与意大利语语音的“50”具有不同的含义。

声音家族财产

该值是一个以逗号分隔的、按优先顺序排列的语音姓氏列表。它可以有以下值 -

  • generic-voice - 值是语音系列。可能的值为“男性”、“女性”和“儿童”。

  • Specific-voice - 值是特定实例(例如喜剧演员、trinoids、卡洛斯、拉尼)。

这是一个例子 -

<style type = "text/css">
   <!--
      h1 { voice-family: announcer, male }
      p.part.romeo  { voice-family: romeo, male }
      p.part.juliet { voice-family: juliet, female }
   -->
</style>

体积属性

音量是指声音的中间音量。它可以有以下值 -

  • 数字- '0' 到 '100' 之间的任何数字。“0”代表最小可听音量级别,100 对应最大舒适级别。

  • 百分比- 这些值是相对于继承值计算的,然后被剪切到范围“0”到“100”。

  • 无声- 完全没有声音。值“0”与“沉默”的含义不同。

  • x-soft - 与“0”相同。

  • - 与“25”相同。

  • - 与“50”相同。

  • 响亮- 与“75”相同。

  • x-loud - 与“100”相同。

这是一个例子 -

<style type = "text/css">
   <!--
      P.goat  { volume: x-soft }
   -->
</style>

带有山羊类的段落会很柔软。