Zurück |  | Weiter

## 3.27. Sprachinformation (Language)

### Überblick

PDF-Dokumente können für Sehbehinderte durch Screenreader-Programme vorgelesen werden. Dazu ist es hilfreich, wenn das Dokument Auskunft über seine Sprache geben kann.

Diese Methoden stehen für Tests der Sprache zur Verfügung:

    // Tests for PDF language:

    .hasLanguageInfo(..)
    .hasNoLanguageInfo()

### Beispiele

Das folgende Beispiel testet, ob das Dokument die Kennung für die englische Sprache in Großbritannien enthält:

    @Test
    public void hasLocale_CaseInsensitive() throws Exception {
      String filename = "documentUnderTest.pdf";

      AssertThat.document(filename)
                .hasLanguageInfo("en-gb")
      ;
      AssertThat.document(filename)
                .hasLanguageInfo("en_GB")
      ;
    }

| PDF-typische Schreibweise
| Java-typische Schreibweise

Die Zeichenkette für die Sprachbezeichnung kann in beliebiger Groß-/Kleinschreibung angegeben werden. Unterstrich und Bindestrich werden ebenfalls gleichbehandelt.

Es kann auch `java.util.Locale` direkt verwendet werden:

    @Test
    public void hasLocale_LocaleInstance_GERMANY() throws Exception {
      String filename = "documentUnderTest.pdf";

      AssertThat.document(filename)
                .hasLanguageInfo(Locale.GERMANY)
      ;
    }

    @Test
    public void hasLocale_LocaleInstance_GERMAN() throws Exception {
      String filename = "documentUnderTest.pdf";

      AssertThat.document(filename)
                .hasLanguageInfo(Locale.GERMAN)
      ;
    }

Ein PDF-Dokument mit der internen Länderkennung `"en_GB"` liefert einen grünen Test, wenn es auf `Locale.en` getestet wird. Dagegen gilt ein Test als fehlerhaft, wenn ein Dokument mit der internen Länderkennung `"en"` auf `Locale.UK` getestet wird.

Ein PDF-Dokument, das keine Länderkennung haben soll, kann ebenfalls daraufhin getestet werden:

    @Test
    public void hasNoLanguageInfo() throws Exception {
      String filename = "documentUnderTest.pdf";

      AssertThat.document(filename)
                .hasNoLanguageInfo()
      ;
    }

Zurück | Nach oben | Weiter
3.26. Signaturen - Unterschriebenes PDF | Zum Anfang | 3.28. Texte