AppFramework는 TTS(텍스트 음성 변환) 기능을 위한 Speech QML 플러그인을 제공합니다. 이 기능을 사용하면 AppStudio로 생성된 응용프로그램이 음성 변조가 포함된 TTS(텍스트 음성 변환) 등의 접근성 기능을 지원할 수 있습니다. 이 TextToSpeech 컴포넌트를 사용하면 최종 사용자에게 오디오 피드백을 제공하여 시각 장애인을 지원하고 기기에서 보이지 않는 정보를 사용자에게 제공할 수 있습니다. 이 기능을 사용하려면 먼저 다음과 같은 가져오기 문을 포함해야 합니다.
import ArcGIS.AppFramework.Speech 1.0
TTS(텍스트 음성 변환)
TextToSpeech 컴포넌트의 핵심은 제출된 텍스트를 음성 문으로 변환하는 say 메소드입니다. 다음 코드 샘플은 버튼을 클릭했을 때 텍스트 영역의 내용을 읽는 방법을 보여 줍니다.
ColumnLayout {
anchors {
fill: parent
margins: 4 * AppFramework.displayScaleFactor
}
TextToSpeech {
id: textToSpeech
}
Rectangle {
Layout.fillWidth: true
Layout.preferredHeight: 200 * scaleFactor
color: transparent
border.color: black
border.width: 1 * scaleFactor
TextArea {
id: sayText
width: parent.width
Material.accent: "#8f499c"
padding: 5 * scaleFactor
selectByMouse: true
wrapMode: TextEdit.WrapAnywhere
text: "This text will be read."
}
}
Button {
Layout.fillWidth: true
text: "Say it"
onClicked: {
textToSpeech.say(sayText.text);
}
}
}
음성 변경
TextToSpeech 컴포넌트로 생성된 음성은 컴포넌트의 volume, pitch, rate 속성을 수정하여 조절할 수 있습니다. 이러한 각각의 속성은 2배 정밀도 정수(소수점 한자리)로 저장되며 기본 값은 50입니다. 다음 코드 샘플은 volume 속성의 슬라이더를 제공합니다.
Slider {
id: volumeSlider
Layout.fillWidth: true
Layout.leftMargin: 10 * AppFramework.displayScaleFactor
Layout.rightMargin: Layout.leftMargin
from: 0
to: 100
stepSize: 1
onValueChanged: {
textToSpeech.volume = value/100;
}
}