Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Zestaw SDK Czytnik immersyjny zawiera bibliotekę języka JavaScript, która umożliwia integrację Czytnik immersyjny z aplikacją.
Możesz użyć npmelementu , yarnlub HTML <script> , aby uwzględnić bibliotekę najnowszej stabilnej kompilacji w aplikacji internetowej:
<script type='text/javascript' src='https://ircdname.azureedge.net/immersivereadersdk/immersive-reader-sdk.1.4.0.js'></script>
npm install @microsoft/immersive-reader-sdk
yarn add @microsoft/immersive-reader-sdk
Funkcje
Zestaw SDK uwidacznia następujące funkcje:
- ImmersiveReader.launchAsync(token, poddomena, zawartość, opcje)
- ImmersiveReader.close()
- ImmersiveReader.renderButtons(opcje)
Funkcja: launchAsync
ImmersiveReader.launchAsync(token, subdomain, content, options)uruchamia Czytnik immersyjny w elemecie HTML iframe w aplikacji internetowej. Rozmiar zawartości jest ograniczony do maksymalnie 50 MB.
launchAsync(token: string, subdomain: string, content: Content, options?: Options): Promise<LaunchResponse>;
| Parametr | Typ | Opis |
|---|---|---|
| żeton | sznurek | Token uwierzytelniania entra firmy Microsoft. Aby dowiedzieć się więcej, zobacz Jak utworzyć zasób Czytnik immersyjny. |
| poddomena | sznurek | Niestandardowa poddomena zasobu Czytnik immersyjny na platformie Azure. |
| zawartość | Zawartość | Obiekt zawierający zawartość do wyświetlenia w Czytnik immersyjny. |
| Opcje | Opcje | Opcje konfigurowania niektórych zachowań Czytnik immersyjny. Opcjonalny. |
Zwraca
Zwraca wartość Promise<LaunchResponse>, która jest rozpoznawana podczas ładowania Czytnik immersyjny. Rozpoznawany Promise jest obiekt LaunchResponse .
Wyjątki
Jeśli nie można załadować Czytnik immersyjny, zwrócony Promise obiekt zostanie odrzucony z obiektem Error.
Funkcja: close
ImmersiveReader.close()zamyka Czytnik immersyjny.
Przykładowy przypadek użycia tej funkcji to, czy przycisk wyjścia jest ukryty, ustawiając w hideExitButton: trueopcjach. Następnie inny przycisk (na przykład strzałka wstecz nagłówka mobilnego) może wywołać tę close funkcję po kliknięciu.
close(): void;
Funkcja: renderButtons
Funkcja ImmersiveReader.renderButtons(options) nie jest konieczna, jeśli używasz wskazówek dotyczących dostosowywania Czytnik immersyjny przycisków.
Ta funkcja style i aktualizuje elementy przycisku Czytnik immersyjny dokumentu. Jeśli options.elements zostanie podana wartość , przyciski są renderowane w ramach każdego elementu podanego w pliku options.elements. Użycie parametru options.elements jest przydatne, gdy w dokumencie znajduje się wiele sekcji, na których ma zostać uruchomiony Czytnik immersyjny, i chcesz uprościć renderowanie wielu przycisków z tym samym stylem lub chcesz renderować przyciski z prostym i spójnym wzorcem projektowania. Aby użyć tej funkcji z parametrem opcji renderButtons, wywołaj metodę ImmersiveReader.renderButtons(options: RenderButtonsOptions); ładowania strony, jak pokazano w poniższym fragmencie kodu. W przeciwnym razie przyciski są renderowane w elementach dokumentu, które mają klasęimmersive-reader-button, jak pokazano w temacie Jak dostosować przycisk Czytnik immersyjny.
// This snippet assumes there are two empty div elements in
// the page HTML, button1 and button2.
const btn1: HTMLDivElement = document.getElementById('button1');
const btn2: HTMLDivElement = document.getElementById('button2');
const btns: HTMLDivElement[] = [btn1, btn2];
ImmersiveReader.renderButtons({elements: btns});
Zobacz opcjonalne atrybuty przycisku uruchamiania, aby uzyskać więcej opcji renderowania. Aby użyć tych opcji, dodaj dowolne atrybuty opcji do każdego HTMLDivElement z nich w kodzie HTML strony.
renderButtons(options?: RenderButtonsOptions): void;
| Parametr | Typ | Opis |
|---|---|---|
| Opcje | opcje renderButtons | Opcje konfigurowania niektórych zachowań funkcji renderButtons. Opcjonalny. |
opcje renderButtons
Opcje renderowania przycisków Czytnik immersyjny.
{
elements: HTMLDivElement[];
}
| Parametr | Typ | Opis |
|---|---|---|
| elementy | HTMLDivElement[] | Elementy do renderowania przycisków Czytnik immersyjny. |
Type: HTMLDivElement[]
Required: false
Przycisk Uruchom
Zestaw SDK zapewnia domyślny styl dla przycisku uruchamiania Czytnik immersyjny. Użyj atrybutu immersive-reader-button klasy, aby włączyć ten styl. Aby uzyskać więcej informacji, zobacz Jak dostosować przycisk Czytnik immersyjny.
<div class='immersive-reader-button'></div>
Użyj następujących opcjonalnych atrybutów, aby skonfigurować wygląd i działanie przycisku.
| Atrybut | Opis |
|---|---|
| styl przycisku danych | Ustawia styl przycisku. Może to być icon, textlub iconAndText. Wartość domyślna to icon. |
| ustawienia regionalne danych | Ustawia ustawienia regionalne. Na przykład: en-US lub fr-FR. Domyślnie jest to angielski en. |
| data-icon-px-size | Ustawia rozmiar ikony w pikselach. Wartość domyślna to 20 pikseli. |
LaunchResponse
Zawiera odpowiedź z wywołania na ImmersiveReader.launchAsync. Odwołanie do elementu HTML iframe zawierającego Czytnik immersyjny można uzyskać dostęp za pośrednictwem metody container.firstChild.
{
container: HTMLDivElement;
sessionId: string;
charactersProcessed: number;
}
| Parametr | Typ | Opis |
|---|---|---|
| kontener | HTMLDivElement | Element HTML zawierający element Czytnik immersyjnyiframe. |
| identyfikator sesji | Sznurek | Globalnie unikatowy identyfikator dla tej sesji używany do debugowania. |
| znakiProcessed | Liczba | Łączna liczba przetworzonych znaków |
Błąd
Zawiera informacje o błędzie.
{
code: string;
message: string;
}
| Parametr | Typ | Opis |
|---|---|---|
| kod | Sznurek | Jeden z zestawów kodów błędów. |
| wiadomość | Sznurek | Czytelna dla człowieka reprezentacja błędu. |
| Kod błędu | Opis |
|---|---|
| BadArgument | Podany argument jest nieprawidłowy. Zobacz message parametr błędu. |
| Przerwa czasowa | Nie można załadować Czytnik immersyjny w określonym przedziale czasu. |
| Token wygasł | Podany token wygasł. |
| Ograniczono | Przekroczono limit liczby wywołań. |
Typy
Zawartość
Zawiera zawartość, która ma być wyświetlana w Czytnik immersyjny.
{
title?: string;
chunks: Chunk[];
}
| Parametr | Typ | Opis |
|---|---|---|
| tytuł | Sznurek | Tekst tytułu wyświetlany w górnej części Czytnik immersyjny (opcjonalnie) |
| Kawałki | Fragment[] | Tablica fragmentów |
title
Type: String
Required: false
Default value: "Immersive Reader"
chunks
Type: Chunk[]
Required: true
Default value: null
Fragment
Pojedynczy fragment danych, który jest przekazywany do zawartości Czytnik immersyjny.
{
content: string;
lang?: string;
mimeType?: string;
}
| Parametr | Typ | Opis |
|---|---|---|
| zawartość | Sznurek | Ciąg zawierający zawartość wysłaną do Czytnik immersyjny. |
| Lang | Sznurek | Język tekstu, wartość jest w formacie tagu IETF BCP 47-language , na przykład en, es-ES. Język jest wykrywany automatycznie, jeśli nie zostanie określony. Aby uzyskać więcej informacji, zobacz listę Obsługiwane języki. |
| mimeType | sznurek | Obsługiwane są formaty Zwykłego tekstu, MathML, HTML i Microsoft Word DOCX. Aby uzyskać więcej informacji, zobacz Obsługiwane typy MIME. |
content
Type: String
Required: true
Default value: null
lang
Type: String
Required: false
Default value: Automatically detected
mimeType
Type: String
Required: false
Default value: "text/plain"
Obsługiwane typy MIME
| Typ MIME | Opis |
|---|---|
| tekst/zwykły | Zwykły tekst. |
| tekst/html | Zawartość HTML. |
| application/mathml+xml | Matematyczny język znaczników (MathML). |
| application/vnd.openxmlformats-officedocument.wordprocessingml.document | Dokument w formacie .docx programu Microsoft Word. |
Opcje
Zawiera właściwości, które konfigurują pewne zachowania Czytnik immersyjny.
{
uiLang?: string;
timeout?: number;
uiZIndex?: number;
useWebview?: boolean;
onExit?: () => any;
customDomain?: string;
allowFullscreen?: boolean;
parent?: Node;
hideExitButton?: boolean;
cookiePolicy?: CookiePolicy;
disableFirstRun?: boolean;
readAloudOptions?: ReadAloudOptions;
translationOptions?: TranslationOptions;
displayOptions?: DisplayOptions;
preferences?: string;
onPreferencesChanged?: (value: string) => any;
disableGrammar?: boolean;
disableTranslation?: boolean;
disableLanguageDetection?: boolean;
}
| Parametr | Typ | Opis |
|---|---|---|
| uiLang | Sznurek | Język interfejsu użytkownika, wartość jest w formacie tagu IETF BCP 47-language , na przykład en, es-ES. Wartość domyślna dla języka przeglądarki, jeśli nie zostanie określona. |
| przerwa czasowa | Liczba | Czas trwania (w milisekundach) przed niepowodzeniem funkcji launchAsync z powodu błędu przekroczenia limitu czasu (wartość domyślna to 15 000 ms). Ten limit czasu dotyczy tylko początkowego uruchomienia strony Czytelnik, po pomyślnym otwarciu strony Czytelnik i uruchomieniu pokrętła. Dostosowanie limitu czasu nie powinno być konieczne. |
| uiZIndex | Liczba | Indeks Z utworzonego elementu HTML iframe (wartość domyślna to 1000). |
| useWebview | Wartość logiczna | Użyj tagu webview zamiast elementu HTML iframe , aby uzyskać zgodność z aplikacjami dla programu Chrome (wartość domyślna to false). |
| onExit | Funkcja | Wykonuje po zakończeniu Czytnik immersyjny. |
| customDomain | Sznurek | Zarezerwowane do użytku wewnętrznego. Domena niestandardowa, w której jest hostowana aplikacja internetowa Czytnik immersyjny (wartość domyślna to null). |
| allowFullscreen | Wartość logiczna | Możliwość przełączania pełnoekranowego (wartość domyślna to true). |
| rodzic | Węzeł | Węzeł, w którym znajduje się element HTML iframe lub Webview kontener. Jeśli element nie istnieje, element iframe zostanie umieszczony w elemecie body. |
| hideExitButton | Wartość logiczna | Ukrywa strzałkę przycisku zakończenia Czytnik immersyjny (wartość domyślna to false). Ta wartość powinna być prawdziwa tylko wtedy, gdy istnieje alternatywny mechanizm umożliwiający wyjście z Czytnik immersyjny (na przykład strzałka wstecz paska narzędzi mobilnych). |
| cookiePolicy | CookiePolicy | Ustawienie użycia plików cookie Czytnik immersyjny (wartość domyślna to CookiePolicy.Disable). Jest to odpowiedzialność aplikacji hosta za uzyskanie wszelkich niezbędnych zgody użytkownika zgodnie z zasadami zgodności plików cookie UE. Aby uzyskać więcej informacji, zobacz Opcje zasad plików cookie. |
| disableFirstRun | Wartość logiczna | Wyłącz pierwsze środowisko uruchamiania. |
| readAloudOptions | ReadAloudOptions | Opcje konfigurowania odczytu na głos. |
| translationOptions | TranslationOptions | Opcje konfigurowania tłumaczenia. |
| displayOptions | DisplayOptions | Opcje konfigurowania rozmiaru tekstu, czcionki, motywu itd. |
| preferencje | Sznurek | Ciąg zwrócony z elementu onPreferencesChanged reprezentujący preferencje użytkownika w Czytnik immersyjny. Aby uzyskać więcej informacji, zobacz Jak przechowywać preferencje użytkownika. |
| onPreferencesChanged | Funkcja | Wykonuje, gdy preferencje użytkownika uległy zmianie. Aby uzyskać więcej informacji, zobacz Jak przechowywać preferencje użytkownika. |
| disableTranslation | Wartość logiczna | Wyłącz środowisko tłumaczenia wyrazów i dokumentów. |
| disableGrammar | Wartość logiczna | Wyłącz środowisko gramatyki. Ta opcja powoduje również wyłączenie syllables, części mowy i słownika obrazów, które zależą od części mowy. |
| disableLanguageDetection | Wartość logiczna | Wyłącz wykrywanie języka, aby upewnić się, że Czytnik immersyjny używa tylko języka, który jest jawnie określony w fragmentu zawartości/[]. Ta opcja powinna być używana oszczędnie, przede wszystkim w sytuacjach, w których wykrywanie języka nie działa. Na przykład ten problem jest bardziej prawdopodobny w przypadku krótkich fragmentów o mniej niż 100 znaków. Należy mieć pewność, że język, który wysyłasz, ponieważ zamiana tekstu na mowę nie będzie miała poprawnego głosu. Syllables, Part of Speech i Picture Dictionary nie działają poprawnie, jeśli język nie jest poprawny. |
uiLang
Type: String
Required: false
Default value: User's browser language
timeout
Type: Number
Required: false
Default value: 15000
uiZIndex
Type: Number
Required: false
Default value: 1000
onExit
Type: Function
Required: false
Default value: null
preferences
Type: String
Required: false
Default value: null
Uwaga
Nie próbuj programowo zmieniać wartości ciągu wysyłanego -preferences do i z aplikacji Czytnik immersyjny, ponieważ może to spowodować nieoczekiwane zachowanie, co spowoduje obniżenie wydajności środowiska użytkownika. Aplikacje hosta nigdy nie powinny przypisywać wartości niestandardowej do ciągu ani manipulować nim -preferences . W przypadku korzystania z opcji ciągu użyj tylko dokładnej -preferences wartości zwróconej z opcji wywołania zwrotnego -onPreferencesChanged .
onPreferencesChanged
Type: Function
Required: false
Default value: null
customDomain
Type: String
Required: false
Default value: null
ReadAloudOptions
type ReadAloudOptions = {
voice?: string;
speed?: number;
autoplay?: boolean;
};
| Parametr | Typ | Opis |
|---|---|---|
| głos | Sznurek | Głos, kobieta lub mężczyzna. Nie wszystkie języki obsługują obie płcie. |
| szybkość | Liczba | Szybkość odtwarzania. Musi należeć do przedziału od 0,5 do 2,5 włącznie. |
| autoodtwarzanie | Wartość logiczna | Automatycznie uruchom odczyt na głos po załadowaniu Czytnik immersyjny. |
Uwaga
Ze względu na ograniczenia przeglądarki autoodtwarzanie nie jest obsługiwane w przeglądarce Safari.
voice
Type: String
Required: false
Default value: "Female" or "Male" (determined by language)
Values available: "Female", "Male"
speed
Type: Number
Required: false
Default value: 1
Values available: 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 2.25, 2.5
TranslationOptions
type TranslationOptions = {
language: string;
autoEnableDocumentTranslation?: boolean;
autoEnableWordTranslation?: boolean;
};
| Parametr | Typ | Opis |
|---|---|---|
| język | Sznurek | Ustawia język tłumaczenia, wartość jest w formacie tagu IETF BCP 47-language , na przykład fr-FR, es-MX, zh-Hans-CN. Wymagane do automatycznego włączania tłumaczenia wyrazów lub dokumentów. |
| autoEnableDocumentTranslation | Wartość logiczna | Automatycznie przetłumacz cały dokument. |
| autoEnableWordTranslation | Wartość logiczna | Automatycznie włącz tłumaczenie wyrazów. |
language
Type: String
Required: true
Default value: null
Values available: For more information, see the Supported languages section
TematOpcje
enum ThemeOption { Light, Dark }
DisplayOptions
type DisplayOptions = {
textSize?: number;
increaseSpacing?: boolean;
fontFamily?: string;
themeOption?: ThemeOption
};
| Parametr | Typ | Opis |
|---|---|---|
| textSize | Liczba | Ustawia wybrany rozmiar tekstu. |
| increaseSpacing | Wartość logiczna | Określa, czy odstęp między tekstami jest włączony, czy wyłączony. |
| fontFamily | Sznurek | Ustawia wybraną czcionkę (Calibri, ComicSans lub Sitka). |
| themeOption | TematOpcje | Ustawia wybrany motyw czytnika (jasny, ciemny). |
textSize
Type: Number
Required: false
Default value: 20, 36 or 42 (Determined by screen size)
Values available: 14, 20, 28, 36, 42, 48, 56, 64, 72, 84, 96
fontFamily
Type: String
Required: false
Default value: "Calibri"
Values available: "Calibri", "Sitka", "ComicSans"
Opcje cookiePolicy
enum CookiePolicy { Disable, Enable }
Następujące ustawienia są przeznaczone tylko do celów informacyjnych. Czytnik immersyjny przechowuje ustawienia lub preferencje użytkownika w plikach cookie. Ta opcja cookiePolicy domyślnie wyłącza korzystanie z plików cookie zgodnie z przepisami ue dotyczącymi zgodności plików cookie. Jeśli chcesz ponownie włączyć pliki cookie i przywrócić domyślne funkcje Czytnik immersyjny preferencji użytkownika, witryna internetowa lub aplikacja wymaga odpowiedniej zgody od użytkownika w celu włączenia plików cookie. Następnie, aby ponownie włączyć pliki cookie w Czytnik immersyjny, należy jawnie ustawić opcję cookiePolicy na CookiePolicy.Enable podczas uruchamiania Czytnik immersyjny.
W poniższej tabeli opisano ustawienia, które Czytnik immersyjny przechowuje w pliku cookie po włączeniu opcji cookiePolicy.
| Ustawienie | Typ | Opis |
|---|---|---|
| textSize | Liczba | Ustawia wybrany rozmiar tekstu. |
| fontFamily | Sznurek | Ustawia wybraną czcionkę (Calibri, ComicSans lub Sitka). |
| textSpacing | Liczba | Określa, czy odstęp między tekstami jest włączony, czy wyłączony. |
| formatowanieEnabled | Wartość logiczna | Określa, czy formatowanie HTML jest włączone, czy wyłączone. |
| motyw | Sznurek | Ustawia wybrany motyw (jasny, ciemny). |
| syllabificationEnabled | Wartość logiczna | Określa, czy sylabizacja jest włączona, czy wyłączona. |
| NounHighlightingEnabled | Wartość logiczna | Określa, czy wyróżnianie owników jest włączone, czy wyłączone. |
| nounHighlightingColor | Sznurek | Ustawia wybrany kolor wyróżniania ciołów. |
| verbHighlightingEnabled | Wartość logiczna | Określa, czy wyróżnianie czasowników jest włączone, czy wyłączone. |
| verbHighlightingColor | Sznurek | Ustawia wybrany kolor wyróżniania czasowników. |
| przymiotnik wyróżnianieEnabled | Wartość logiczna | Określa, czy wyróżnianie przymiotnikowe jest włączone, czy wyłączone. |
| Przymiotnik WyróżnianieColor | Sznurek | Ustawia wybrany kolor wyróżniania przymiotnikowego. |
| adverbHighlightingEnabled | Wartość logiczna | Określa, czy wyróżnianie przeciwników jest włączone, czy wyłączone. |
| adverbHighlightingColor | Sznurek | Ustawia wybrany kolor wyróżniania przeciwnika. |
| pictureDictionaryEnabled | Wartość logiczna | Określa, czy słownik obrazów jest włączony, czy wyłączony. |
| posLabelsEnabled | Wartość logiczna | Określa, czy etykieta tekstowa indeksu górnego każdego wyróżnionego składnika Mowa jest włączona lub wyłączona. |
Obsługiwane języki
Funkcja tłumaczenia Czytnik immersyjny obsługuje wiele języków. Aby uzyskać więcej informacji, zobacz Obsługa języka.
Obsługa kodu HTML
Po włączeniu formatowania następująca zawartość jest renderowana jako HTML w Czytnik immersyjny.
| HTML | Treści wspierane |
|---|---|
| Style czcionek | Pogrubienie, kursywa, podkreślenie, kod, przekreślenie, indeks górny, indeks dolny |
| Listy nieuporządkowane | Tarcza, okrąg, kwadrat |
| Listy uporządkowane | Liczba dziesiętna, górna alfa, dolna-alfa, rzymsko-górna, dolna-rzymska |
Nieobsługiwane tagi są renderowane w sposób porównywalny. Obrazy i tabele nie są obecnie obsługiwane.
Obsługa przeglądarek
Użyj najnowszych wersji poniższych przeglądarek, aby uzyskać najlepsze środowisko pracy z Czytnik immersyjny.
- Microsoft Edge
- Google Chrome
- Mozilla Firefox
- Apple Safari