Zaawansowana obsługa tekstu dwukierunkowego

Istnieje wiele właściwości, które można ustawić, aby włączyć obsługę tekstu dwukierunkowego w dokumentach.

Właściwości tekstu dwukierunkowego w szablonach

Niektóre elementy szablonów mają właściwość kierunek. Wartość tej właściwości można ustawić na od lewej do prawej , od prawej do lewej, kontekstowy lub puste (ustawienie domyślne). Jeśli wartość tej właściwości jest pusta, kierunek odpowiedniego elementu jest dziedziczony lub ma wartość domyślną dla bieżącego dokumentu.

Następujące elementy szablonów mają właściwość kierunek:
  • Kontener, Akapit, Komórka tabeli, Pozycja listy: właściwość dotyczy każdego akapitu logicznego w tekście, dla którego kierunek nie jest jawnie zdefiniowany.
  • Tabela: właściwość definiuje sposób wyświetlania kolumn (od lewej do prawej lub w odwrotną stronę) i dotyczy każdej komórki, dla której kierunek nie jest jawnie zdefiniowany.
  • Lista: właściwość dotyczy każdej pozycji listy, dla której kierunek nie jest jawnie zdefiniowany.
  • Tekst: właściwość dotyczy tylko treści bieżącego elementu. Nie może być dziedziczona przez inne elementy.

Właściwość kierunek można ustawić w widoku właściwości produktu Document Studio.

Właściwość kierunku ustawiona w widoku właściwości

Właściwości tekstu dwukierunkowego w specyfikacjach dokumentów

Następujące właściwości dotyczące tekstu dwukierunkowego dla metadanych środowiska wykonawczego służą do sterowania układem generowanego dokumentu i podstawowym kierunkiem treści tekstu.

Typ Wartość Opis
dwukierunkowość true, false (wartość domyślna) Wyzwalacz służący do włączania lub wyłączania funkcji obsługi tekstu dwukierunkowego.
kierunek dokumentu od lewej do prawej, od prawej do lewej Definiuje układ dokumentu. Jeśli zarówno właściwość kierunku dokumentu, jak i właściwość metadanych wyjściowych ustawień narodowych są puste, kierunek dokumentu jest ustawiany na wartość od lewej do prawej. Jeśli kierunek dokumentu jest pusty, jego rzeczywista wartość w środowisku wykonawczym zależy od wartości właściwości wyjściowe ustawienia narodowe. W przypadku dwukierunkowych ustawień narodowych jest to wartość od prawej do lewej. W przypadku innych ustawień narodowych jest to wartość od lewej do prawej.
kierunek tekstu od lewej do prawej, od prawej do lewej, kontekstowy,puste (wartość domyślna) Definiuje podstawowy kierunek tekstu. Wartość puste oznacza, że domyślny kierunek tekstu jest taki sam, jak kierunek dla dokumentu.

W programie Launcher można ustawić właściwości w widoku właściwości lub w oknie konfigurowania właściwości metadanych:

Ustawianie właściwości dwukierunkowych w widoku właściwości dla specyfikacji dokumentów

Właściwości dwukierunkowe mogą być przywoływane z poziomu szablonów produktu Rational Publishing Engine przy użyciu zmiennej wewnętrznej _sessionInfo:

Informacje o sesji w wyrażeniu skryptu

W przypadku produktów, które używają wbudowanego mechanizmu RRDG, właściwości dwukierunkowe mogą być ustawiane programowo. Na przykład w produkcie Rational DOORS Next Generation można zastosować następujące rozwiązanie:
LocalDocumentGenerator docGen = new LocalDocumentGenerator(new RRDGEngineImpl());
    String config = docGen.getConfigurationPath(configFolder.toURI());
    DocumentSpecificationBuilder builder = new DocumentSpecificationBuilder();
    RPEDocumentSpecification docSpec = builder.create(config);
    RPEMetadata metadata = docSpec.getRuntime().getMetadata();
    metadata.addProperty(new Property(RPEConfigConstants.PROPERTY_DOCUMENT_DIRECTION, new Value("","rtl"));
Uwaga: Wcześniejsza wersja produktu Rational Publishing Engine używała do włączania lub wyłączania funkcji specyficznych dla tekstu dwukierunkowego właściwości dwukierunkowe w danych wyjściowych programu Microsoft Word. Ta właściwość nie jest już obsługiwana, choć jest nadal wyświetlana w widoku właściwości danych wyjściowych programu Word.

Określanie elementów i podstawowego kierunku tekstu dla ich treści w środowisku wykonawczym

Kierunek elementu określa wyrównanie, układ i podstawowy kierunek tekstu dla treści tego elementu.

Elementy Kontener, Akapit, Tabela, Komórka tabeli, Lista i Pozycja listy mają własną właściwość kierunek. Jeśli wartość tej właściwości jest pusta, rzeczywisty kierunek odpowiedniego elementu jest dziedziczony z najbliższego elementu nadrzędnego, który ma niepustą właściwość kierunku. Jeśli okaże się, że brak kierunku do odziedziczenia, kierunek elementu jest definiowany przez właściwość dokumentu kierunek dokumentu.

Jeśli elementy Kontener, Akapit, Tabela, Komórka tabeli, Lista lub Pozycja listy mają własną lub dziedziczoną właściwość kierunku o wartości kontekstowy, rzeczywisty kierunek tych elementów jest określony przez ich treść tekstową. Jeśli jednak nie jest to możliwe (tekst nie jest umieszczony bezpośrednio w bieżącym elemencie lub zawiera tylko znaki neutralne), rzeczywisty kierunek jest dziedziczony z najbliższego elementu nadrzędnego, który ma niepustą i niekontekstową właściwość kierunku. Jeśli okaże się, że brak kierunku do odziedziczenia, kierunek elementu jest definiowany przez właściwość dokumentu kierunek tekstu.

Jeśli elementy Kontener, Akapit, Tabela, Komórka tabeli, Lista lub Pozycja listy mają pierwszy bezpośredni element potomny, który jest elementem tekstu z niepustą właściwością kierunku, rzeczywisty kierunek takich elementów jest określany na podstawie rozstrzygniętego kierunku tego elementu tekstu.

Jeśli elementy Tabela lub Lista mają własną lub dziedziczoną właściwość kierunku o wartości kontekstowy, rzeczywisty kierunek tych elementów jest dziedziczony z najbliższego elementu nadrzędnego, który ma niepustą i niekontekstową właściwość kierunku. Jeśli okaże się, że brak kierunku do odziedziczenia, kierunek elementu jest definiowany przez właściwość dokumentu kierunek dokumentu.

Jeśli kierunek elementu tekstu jest niepusty, treść tego elementu (który może być tylko częścią akapitu logicznego) jest wyświetlana w generowanym dokumencie jako odizolowany segment tekstu, sformatowany zgodnie z tą właściwością. Jeśli element tekstu ma własną właściwość kierunku o wartości kontekstowy, podstawowy kierunek odpowiedniego segmentu tekstu jest określany na podstawie jego treści. Jeśli segment tekstu zawiera tylko znaki neutralne, podstawowy kierunek tekstu jest zdefiniowany przez właściwość dokumentu kierunek tekstu.

Kierunek dla elementów Spis treści, Spis tabel i Spis rysunków jest definiowany przez właściwość dokumentu kierunek dokumentu. Określa ona tylko ich układ (na przykład względne pozycje numerów sekcji, nazw i numerów stron). Tekst w nazwach sekcji, w przypadku dowolnego kierunku tych elementów, powinien wyglądać tak samo, jak wyświetlany w treści dokumentu.

Kierunek elementów Tytuł tabeli i Tytuł rysunku jest definiowany przez właściwość dokumentu kierunek dokumentu. Określa ona ich układ (na przykład pozycje względne etykiet i treści). Podstawowy kierunek tekstu poszczególnych części tytułów jest definiowany przez właściwość dokumentu kierunek tekstu.

Kierunek elementu Przypis jest definiowany przez właściwość dokumentu kierunek dokumentu. Określa ona układ treści (na przykład względne pozycje numeru przypisu, jego treści i wyrównania). Podstawowy kierunek tekstu treści przypisu jest definiowany przez właściwość dokumentu kierunek tekstu.

Kierunek elementu Komentarz jest niezdefiniowany. Podstawowy kierunek tekstu treści tego elementu jest definiowany przez właściwość dokumentu kierunek tekstu.

Kierunek elementów Nagłówek i Stopka jest definiowany przez właściwość dokumentu kierunek dokumentu.

Obsługa tekstu formatowanego (XHTML)

Treść elementu Tekst może być prezentowana w postaci fragmentów kodu XHTML. Te fragmenty są analizowane i obsługiwane jako kolekcje elementów szablonów:
  • P, H1-H6 - jako akapity o różnych stylach
  • DIV - jako kontenery
  • TABLE - jako tabele
  • TD - jako komórki tabeli
  • OL,UL - jako listy
  • LI - jako pozycje listy

Wartości stylu direction i atrybutu dir znajdujące się w elementach HTML na poziomie bloku, na przykład P, DIV, H1-H6, LI, TD, a także w elementach TABLE, OL i UL są rozpoznawane i przekształcane we właściwość formatowania kierunek produktu Rational Publishing Engine. Jeśli dla bieżącego elementu HTML zdefiniowany jest zarówno styl, jak i atrybut, używana jest wartość atrybutu dir. Ustawianie treści dla bieżącego elementu

Treść elementów HTML na poziomie bloku jest obsługiwana jako sekwencja elementów tekstu o różnych stylach. Można używać elementów HTML SPAN ze stylem direction. Te elementy SPAN są obsługiwane jako elementy tekstowe z właściwością stylu direction. Te elementy nie powinny jednak zawierać żadnego dodatkowego języka znaczników. Elementy SPAN z dodatkowym językiem znaczników nie są obsługiwane i mogą powodować nieoczekiwane wyniki.


Opinia