Pokazywanie postów oznaczonych etykietą latex2rtf. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą latex2rtf. Pokaż wszystkie posty

piątek, 24 sierpnia 2007

Zamiana plików TeX na MS Word

Jakiś czas temu Elka uaktualniła fragment swojej książki nt. akordeonów. Ma on być wydany w postaci artykułu w wydawnictwie prestiżowej Akademii Muzycznej. Oczywiście podesłanie tego w formacie .tex nie wchodziło w grę. Dokument nie jest specjalnie skomplikowany, ale zwiera kilkadziesiąt przypisów, kilkanaście rysunków i setki poleceń służących do tworzenia skorowidzów. W oryginale był to dokument plain TeXa, tyle, że łatwo (na szczęście) go było zamienić na dokument LaTeXowy:


%& --translate-file=il2-pl
\documentclass{article}
\usepackage{polski}
\usepackage{graphicx}
\newcommand\PICDIR{} %
\renewcommand\index[1]{} %% eat
\newcommand\xindex[1]{} %
\newcommand\AWindex[2][NIL]{} %
\newcommand\Piece[2][NIL]{\emph{#2}} % eat
\renewcommand{\includegraphics}[2][NIL]{%
\begin{center}\texttt{#2.eps}\end{center}}
\renewcommand\dywiz{-}
\setcounter{secnumdepth}{-1}

\title{Polska literatura akordeonowa...

Polecenia indeksujące \index, \xindex, \AWindex oraz \Piece zostały przedefiniowane: zjadają swoje argumenty i nie wstawiają nic do składu. Przedefiniowałem też \includegraphics, bo plik .rtf ze wstawionymi rysunkami miał ponad 40 Mb. Skoro ostateczny skład ma być w InDesign, to rysunki można wysłać osobno i w lepszym formacie.

BTW: konstrukcja \newcommand\polecenie[2][NIL] przedefiniowuje polecenie, które ma dwa argumenty, w tym jeden (pierwszy) jest opcjonalny, tzn. użycie takiego polecenia ma postać: \qq[pierwszy]{drugi} albo \qq{drugi}. Napis NIL, to domyślna wartość, tego (opcjonalnego) argumentu.

Kiedy mam potrzebę zamiany pliku LaTeXa na MS Word używam latex2rtf. Nie jest to program idealny, ale lepszego nie znam:


latex2rtf -i polish -C latin2 akordeony.ltx

Przełącznik -i polish powinien wstawiać generowane napisy w języku polskim (tj, Rysunek zamiast Figure itp.). Kłopot, bo tego nie robi (wersja 1.9.16a, beta). Próbowałem na różne sposoby a rzecz wydaje się banalna, jednak uparcie wstawiane są teksty angielskie (można to ew. poprawić edytując plik RTF, np. Perlem). Za to przełącznik -C, ustawiający stronę kodową, działa.

Po uruchomieniu latex2rtf, pojawiło się kilka ostrzeżeń:


akordeony.ltx:3 Unknown style option polski ignored
akordeony.ltx:4 Unknown style option graphicx ignored
akordeony.ltx:9 No existing definition for \index
akordeony.ltx:13 No existing definition for \includegraphics
akordeony.ltx:14 No existing definition for \dywiz

Ale konwersja została dokonana (prawie) prawidłowo. W szczególności latex2rtf prawidłowo zinterpretował moje redefinicje i pominął zwartość poleceń indeksujących a zamiast plików graficznych wstawił ich nazwy. Jedyny błąd jaki zauważyłem, to wstawianie zbędnego odstępu pomiędzy \footnote a następującym po numerze przypisu znakiem przestankowym, tj. numer-odstęp-kropka, zamiast numer-kropka.

Przy okazji konwersji z LaTeXa do MSW: dia potrafi wyeksportować dobrej jakości diagramy w formacie EMF.