close

Informacja dotycząca plików cookies

Informujemy, iż w celu optymalizacji treści dostępnych w naszym serwisie, w celu dostosowania ich do indywidualnych potrzeb każdego użytkownika, jak również dla celów reklamowych i statystycznych korzystamy z informacji zapisanych za pomocą plików cookies na urządzeniach końcowych użytkowników. Pliki cookies użytkownik może kontrolować za pomocą ustawień swojej przeglądarki internetowej. Dalsze korzystanie z naszych serwisów internetowych, bez zmiany ustawień przeglądarki internetowej oznacza, iż użytkownik akceptuje politykę stosowania plików cookies


Nowe artykuły:
Więcej...
Nowe recenzje: RSS
Więcej...
Najnowsze pliki: RSS
Więcej...
Nowe biosy: RSS
Więcej...

 

Spis treści



Napisy w Auto Gordian Knot

IV - Format SSA (4)
    Poznaliśmy już sposób tworzenia i ustawiania parametrów styli, więc zajmijmy się teraz sekcją [Events].  Zawiera ona, analogicznie jak inne formaty (TMP, MicroDVD) , linie tekstu napisów, w specjalny sposób sformatowane. Tworzą ją linie Dialogue:, zawierające formatowanie analogiczne do tego ze styli: tu również mamy do czynienia z ciągiem, oddzielonych przecinkami wartości, a pierwsza linia (Format:) definiuje kolejność i typ parametrów, jakie spotkamy w liniach napisów. Zmieniamy je podobnie jak w stylach, ale mają charakter lokalny – zmiana któregoś z parametrów wpływa tylko na linię, w której się znajduje.
    Oprócz tych wartości, które możemy zmieniać wpływając na wartości 10 pól, możemy też wpisywać znaczniki bezpośrednio do tekstu, czyli w dziesiątym polu. Takim znacznikiem jest na przykład \N widoczne w powyższym przykładzie skryptu, które wymusza łamanie lini (podział linii na wiersze).
    Na początek zajmiemy się wytłumaczeniem znaczenia owych 10 pól; podobnie jak wcześniej, posłużę się dokumentacją SSA.

Pole 1:     Marked
Za pomocą tego parametru możemy zaznaczyć którąś z linii (wartość 1), ale ma to znaczenie tylko dla SSA, AGK ignoruje tę wartość i nie jest istotne, co ustawimy.

Pole 2:    Start
Początkowy czas napisów o formacie 0:00:00.00 czyli Godzina:Minuta:Sekunda.Setne sekundy. Zauważmy, że godziny zajmują jedno miejsce.

Pole 3:    End
Jak wyżej, ale określamy tu końcowy czas wyświetlania napisu.

Pole 4:    Style
Nazwa stylu, który określiliśmy w sekcji [V4 Styles]. Pamiętajmy o wielkości liter. Warto zwrócić uwagę na tzw. problem stylu *Default. Niektóre programy generują skrypt o takiej nazwie (z gwiazdką), ale ponieważ gwiazdka jest pomijana, a styl Default oznacza domyślny styl zaimplementowany w ssa (jeśli się pomylimy i przypiszemy do tekstu styl, który nie istnieje, na przykład zamiast MojStyl napiszemy Mojstyl – wielkość liter! – AGK i każdy inny interpreter ssa użyje stylu domyślnego, który jest jakby wbudowany w ssa: czcionka Arial, białe litery...). Dlatego powinniśmy unikać nazwy Default, z gwiazdką lub bez, jeśli ją gdzieś spotkamy, zmieńmy na inną.

Pole 5:    Name
Nazwa bohatera, który wypowiada dana kwestię. Jedynie do celów informacyjnych, aby łatwiej było czytać i edytować skrypt. Nie ma znaczenia, co tu napiszemy, możemy zamiast tego nic nie wpisywać (zostaną wtedy dwa przecinki obok siebie).

Pole 6:    MarginL
Czterocyfrowa wartość nadpisujaca lewy margines, który określiliśmy w stylu. Wartość w pikselach. Cztery zera oznaczają, że używamy wartości określonej w stylu [czyli nie zachodzi nadpisywanie].

Teoretycznie powinno być tak, że jeśli zamiast czterech zer wpiszemy jedno, to nowy lewy margines powinien wynosić teraz zero – po to wprowadza się te cztery zera. Tak jednak nie jest – dla AGK nie ma znaczenia, ile zer wpiszemy, jeśli użyjemy jednego to również zostanie zastosowany margines ze stylu. Jak więc można wymusić nadpisanie marginesu tak, by wynosił w danej linijce zero? Najlepiej jest po prostu wpisać jeden zamiast zera, ale jeśli komuś zależy na absolutnym zerze, powinien stworzyć nowy styl.

Podobnie nie musimy pisać marginesu w formacie czterocyfrowym, zamiast 0030 możemy napisać 30. Zalecam jednak pozostawienie formatu czterocyfrowego – po prostu wygodniej się to edytuje i od razu widać, która pozycja dotyczy marginesu.

Pole 7:    MarginR
Prawy margines, opis jak wyżej.. Opisane tam uwagi odnoszą się także i do tego marginesu.

Pole 8:    MarginV
Pionowy  margines, opis jak wyżej.. Opisane tam uwagi odnoszą się także i do tego marginesu.

Pole 9:    Effect
Efekt przejścia. Albo puste miejsce [możemy się też spotkać z zapisem !Effect – dodanie wykrzyknika do tekstu sprawia, że AGK traktuje go jako brak tekstu] albo zawierające określenie jednego z trzech możliwych efektów przejść używanych przez ssa.

Nazwa efektu musi być dokładnie wpisana – wielkość liter ma znaczenie.
     
Karaoke  oznacza, że tekst będzie sukcesywnie podświetlany w miarę upływu czasu.
Ponieważ do precyzyjnego określania czasu i typu tego podświetlania używane są znaczniki, szczegółowy opis znajduje się w dalszej części tutorialu.

Scroll up;y1;y2;delay oznacza, że tekst będzie przesuwał się w górę ekranu. Parametry muszą być oddzielone średnikami.

Wartości y1 i y2 definiują w pionie obszar, w którym tekst będzie przewijany. Są to wielkości wyrażone w pikselach i nie ma znaczenia kolejność ich wpisania (y1 może oznaczać zarówno górę jak i dół obszaru pojawienia się tekstu, podobnie y2). Jeśli wartości te wynoszą zero, tekst pojawia się na całym ekranie.
    
Uwaga – jeśli użyjemy zer w AGK, to tekst nie pojawi się na całym ekranie – nie pojawi się w ogóle. Dalszy opis objaśnia wartość delay, ale ponieważ jest on zasadniczo różny od sposobu, w jaki interpretuje go AGK, podaję właściweznaczenie.

W AGK wartość delay można obliczyć ze wzoru (wzór wyprowadziłem empirycznie):
 d=1000* t/H
 gdzie d=delay, t – czas w sekundach, od pojawienia się początku napisu u dołu ekranu do momentu, kiedy dotyka on górnej krawędzi (pierwsza linijka), H to wysokość okna w pikselach.

Przykład: załóżmy, że napis ma się pojawić w oknie o wysokości 125 pikseli (ustawiamy y1=15 i y2=140). Chcemy, aby jedna linijka tekstu pokonała tę odległość w 10 sekund. Jakie ustawić delay?
    d=1000* 10/125=80
    Ustawiamy delay=80, czyli piszemy w naszym wypadku:
    Scroll up;15;140;80
    
Jeśli tekst zawiera 10 linijek, to czas ten określa okres od pojawienia się tekstu (pierwszej linijki) na dole pola do momentu dotknięcia górnej granicy pola przez pierwszą linijkę. Nie zapomnijmy o tym, bo inaczej napis nam zniknie zanim schowa się za górną krawędzią. Musimy też pamiętać, aby zsynchronizować ten czas z czasem wyświetlania się napisu, który w skrypcie jest ważniejszy: jeśli na przykład napis ma się nam wyświetlić przez dwie sekundy, to niezależnie jak wielkie byśmy nie ustawili delay,  to oczywiście nasz przewijany tekst zniknie po 2 sekundach.


Banner;delay oznacza, że tekst będzie przesuwany w pojedynczej linii, niezależnie od długości, od prawej do lewej strony ekranu. Marginesy są pomijane! Tekst wychodzi zza krawędzi ekranu i za krawędź sięchowa.

Wielkość delay oblicza się tu zupełnie inaczej. Bierzemy czas w sekundach, w jakim początek napisu ma pokonać ekran, i dzielimy go przez 0.74 (wielkość przyblizona). To będzie nasza wartość delay.

Przykład: chcemy, aby napis (ściślej – jego początek; ustawmy wartość Start i End

w linii Dialogue: tak, aby cały napis się zmieścił) pokonał ekran w 10 sekund.
            Liczymy: 10/0.74=13,5 Wartość delay wynosi 13 a nasz zapis:
            Banner;13


Pole 10:    Text
Jest to po prostu tekst napisów, który będzie wyświetlany w danym czasie – określonym przez parametry Start i End. Wszystko, co znajduje się po dziewiątym przecinku [a więc w dziesiątym polu Text] tarktowane jest jako tekst napisów, więc może zawierać przecinki [bo skrypt ssa nie może zawierać przecinków].
            
Tekst może zawierać znaczniki podziału lini \n, \N oraz znaczniki nadpisujące styl, zawarte w nawiasach klamrowych {}.

 

Komentarze


Komentarze


Michal_me - 18 Pazdziernik 2007, 13:29:29
Dobry tutorialial.
Czy autor tego artyku?u mg?by si? ze mn? skontaktowa??
Mj adres: michal_me[ma?peczka]tlen[kropeczka]pl

Komentarze sa dostepne tylko dla zarejestrowanych uzytkownikow (jezeli masz konto na forum wystarczy sie zalogowac). Jezeli nie, zarejestruj sie (rejestracja jest darmowa).
Nazwa uzytkownika:
Haslo: