• Artykuły
  • Forum
  • Ciekawostki
  • Encyklopedia
  • DVI - plik TeX

    Przeczytaj także...
    Kod uzupełnień do dwóch (w skrócie U2 lub ZU2) – system reprezentacji liczb całkowitych w dwójkowym systemie pozycyjnym. Jest obecnie najpopularniejszym sposobem zapisu liczb całkowitych w systemach cyfrowych. Jego popularność wynika z faktu, że operacje dodawania i odejmowania są w nim wykonywane tak samo jak dla liczb binarnych bez znaku. Z tego też powodu oszczędza się na kodach rozkazów procesora.Font (ang., z łac. fons – źródło) – zestaw czcionek o określonych cechach zapisany w postaci elektronicznej, w jednym pliku.
    Stos (ang. Stack) – liniowa struktura danych, w której dane dokładane są na wierzch stosu i z wierzchołka stosu są pobierane (bufor typu LIFO, Last In, First Out; ostatni na wejściu, pierwszy na wyjściu). Ideę stosu danych można zilustrować jako stos położonych jedna na drugiej książek – nowy egzemplarz kładzie się na wierzch stosu i z wierzchu stosu zdejmuje się kolejne egzemplarze. Elementy stosu poniżej wierzchołka można wyłącznie obejrzeć, aby je ściągnąć, trzeba najpierw po kolei ściągnąć to, co jest nad nimi.

    DVI (ang. device independent) – format pliku wynikowego w programie wydawniczym TeX. W przeciwieństwie do plików ze znacznikami TeX, pliki DVI nie są przeznaczone do czytania przez użytkownika; zawierają dane binarne opisujące wizualny układ dokumentu w sposób niezależny od specyficznego formatu graficznego, monitora czy drukarki.

    Struktura danych (ang. data structure) - sposób uporządkowania informacji w komputerze. Na strukturach danych operują algorytmy.Hipertekst – organizacja danych w postaci niezależnych leksji połączonych hiperłączami. Hipertekst cechuje nielinearność i niestrukturalność układu leksji. Oznacza to, że nie ma z góry zdefiniowanej kolejności czytania leksji, a nawigacja między nimi zależy wyłącznie od użytkownika.

    Pliki DVI są przetwarzane przez sterownik DVI (DVI driver) na format graficzny akceptowany przez urządzenia wyjściowe. Dla przykładu, większość pakietów TeX zawiera program do podglądu plików DVI na monitorze komputera – program taki jest sterownikiem (ang. driver). Sterowniki są też używane do przetworzenia DVI na popularne formaty dokumentów (np. PostScript, PDF, HTML) i do drukowania. Wikipedie używają sterownika PNG do generowania plików graficznych z matematycznych formuł używanych w artykułach.

    PNG (ang. Portable Network Graphics) – rastrowy format plików graficznych oraz system bezstratnej kompresji danych graficznych.HTML (ang. HyperText Markup Language) – hipertekstowy język znaczników, obecnie szeroko wykorzystywany do tworzenia stron internetowych.

    Pliki DVI opisują dwa rodzaje monochromatycznych obiektów graficznych: znaki oraz wypełnione prostokąty. Jednakże istnieje możliwość osadzania w DVI dowolnych danych binarnych, za interpretację których odpowiada sterownik; w ten sposób na przykład dodawane są kolory do tekstu, informacje o odnośnikach (wykorzystywane przy tworzeniu dokumentów PDF i HTML), fragmenty kodu Postscriptu i inne. W systemie TeX istnieje specjalna instrukcja pozwalająca autorowi umieszczać tego typu dane – nie są potrzebne żadne dodatkowe programy.

    PDF (ang. Portable Document Format, przenośny format dokumentu) – format plików służący do prezentacji, przenoszenia i drukowania treści tekstowo-graficznych, stworzony i promowany przez firmę Adobe Systems. Język opisu pliku PDF jest okrojoną wersją języka programowania PostScript wzbogaconą o elementy hipertekstowe.Wikipedia – wielojęzyczny projekt internetowej encyklopedii działającej w oparciu o zasadę otwartej treści. Funkcjonuje wykorzystując oprogramowanie MediaWiki (jęz. hawajski: wiki wiki = „szybko”), wywodzące się z koncepcji WikiWikiWeb, umożliwiające edycję każdemu użytkownikowi odwiedzającemu stronę i aktualizację jej treści w czasie realnym. Słowo Wikipedia jest neologizmem powstałym w wyniku połączenia wyrazów wiki i encyklopedia. Slogan reklamowy Wikipedii brzmi: „Wolna encyklopedia, którą każdy może redagować”.

    DVI nie jest szyfrowany i znaczniki TeX mogą być przynajmniej częściowo odtworzone z plików DVI za pomocą inżynierii wstecznej, jednak proces ten nie daje gwarancji idealnie wiernego odtworzenia pierwotnych znaczników, zwłaszcza gdy użyte zostały rozszerzenia TeX wysokiego poziomu, jak LaTeX. Wydawcy, którzy opierają się na systemach TeX, oprócz DVI wymagają zwykle także dostarczania plików źródłowych ze znacznikami.

    PostScript – uniwersalny język opisu strony opracowany przez firmę Adobe Systems, będący obecnie standardem w zastosowaniach poligraficznych.

    Struktura DVI[]

    Format został zaprojektowany tak, aby zarówno tworzenie plików jak i odczyt były łatwe do zaprogramowania, samo zaś tworzenie obrazu polega na interpretacji poleceń bardzo prostej maszyny wirtualnej wykonującej działania na liczbach całkowitych. Rozmiar pliku DVI zawsze jest wielokrotnością 4 bajtów.

    Zdefiniowane jest 25 instrukcji, z czego większość występuje w kilku formach, w zależności od rozmiaru argumentu liczbowego. Instrukcje są zakodowane w jednym bajcie, natomiast liczby mogą być 1-, 2-, 3- i 4-bajtowe (zawsze zapisywane w porządku big endian, jeśli ujemne – zapisane w kodzie uzupełnień do 2).

    Najprostszy sterownik DVI wymaga niewielkiej liczby struktur danych:

  • lista zdefiniowanych fontów – font jest identyfikowany liczbą,
  • stos parametrów.
  • Aktualne parametry maszyny to 6 liczb:

  • bieżący punkt (H, V) – odległość od lewego górnego rogu strony (H – ang. horizontal, V – ang. vertical)
  • X – przyrost w osi X
  • W – przyrost w osi X
  • Y – przyrost w osi Y
  • Z – przyrost w osi Y
  • Lista instrukcji[]

  • rysowanie:
  • fnt_def lista argumentów – definicja fontu – sterownik ładuje wskazany font i przypisuje mu identyfikator liczbowy
  • fnt_num identyfikator – ustawia bieżący font (podawany jest identyfikator uprzednio zdefiniowanego fontu)
  • put_char numer znaku – stawia na pozycji (H,V) znak z bieżącego fontu; ponieważ numer może być 32-bitową liczbą naturalną, więc liczba różnych znaków w jednym foncie jest ograniczona do 4 miliardów
  • set_char numer znaku – jw., dodatkowo przesuwa w prawo bieżący punkt o szerokość postawionego znaku
  • put_rule wysokość, szerokość – wypełnia prostokąt o wskazanych wymiarach na pozycji (H,V)
  • set_rule wysokość, szerokość – jw., dodatkowo przesuwa w prawo bieżący punkt o szerokość prostokąta
  • xxx liczba bajtów, dane binarne – dodatkowe dane, których interpretacja zależy od sterownika DVI (ostatecznie mogą zostać całkowicie zignorowane)
  • przesuwanie bieżącego punktu w osi X:
  • right liczba – dodaje do H liczbę
  • w0 – dodaje do H parametr W
  • x0 – dodaje do H parametr X
  • w liczba – ustawia nową wartość W, dodaje ją również do H
  • x liczba – ustawia nową wartość X, dodaje ją również do H
  • przesuwanie bieżącego punktu w osi Y:
  • down liczba – dodaje do V liczbę
  • y0 – dodaje do V parametr Y
  • z0 – dodaje do V parametr Z
  • y liczba – ustawia nową wartość Y, dodaje ją również do V
  • z liczba – ustawia nową wartość Z, dodaje ją również do V
  • pozostałe:
  • push – zapamiętuje parametry na stosie
  • pop – odtwarza parametry ze stosu
  • bop – znacznik początku strony (stos jest pusty, wszystkie parametry są zerowane, nie ma ustawionego fontu)
  • eop – znacznik końca strony
  • nop – nic nie robi
  • dokument:
  • pre – preambuła dokumentu, w której podawane są: jednostka strony, współczynnik powiększenia oraz komentarz
  • post – epilog dokumentu; za tym znacznikiem znajduje się lista wszystkich fontów zdefiniowanych w całym dokumencie – dzięki temu interpreter może od razu załadować je wszystkie i ewentualnie poinformować użytkownika o brakujących fontach, bez konieczności przetwarzania całego dokumentu
  • post_post – znacznik końca listy fontów za znacznikiem post
  • Linki zewnętrzne[]

  • Opis formatu DVI
  • (window.RLQ=window.RLQ||).push(function(){mw.log.warn("Gadget \"edit-summary-warning\" styles loaded twice. Migrate to type=general. See \u003Chttps://phabricator.wikimedia.org/T42284\u003E.");mw.log.warn("Gadget \"wikibugs\" styles loaded twice. Migrate to type=general. See \u003Chttps://phabricator.wikimedia.org/T42284\u003E.");mw.log.warn("Gadget \"ReferenceTooltips\" styles loaded twice. Migrate to type=general. See \u003Chttps://phabricator.wikimedia.org/T42284\u003E.");mw.log.warn("Gadget \"main-page\" styles loaded twice. Migrate to type=general. See \u003Chttps://phabricator.wikimedia.org/T42284\u003E.");});



    w oparciu o Wikipedię (licencja GFDL, CC-BY-SA 3.0, autorzy, historia, edycja)

    Reklama

    Czas generowania strony: 0.03 sek.