Перевод документов из LaTeX в Word / OpenOffice

Сказка: как было бы прекрасно, если бы все в научном мире применяли бы LaTeX так же широко, как сейчас применяется ворд - это избавило бы людей от множества проблем и высвободило кучу времени.
Быль: из-за полного отсутствия компьютерной грамотности, подавляющее большинство научных работников (даже технарей) вообще не подозревают о существовании LaTeX, и уродуются с вордом - так что если вы встали на прогрессивный путь, извольте конвертировать файлы LaTeX в Word / OpenOffice.

Введение
В силу принципиально худшего метода набора визуальных текстовых процессоров, точной и полной конвертации быть не может по определению: всё равно придётся немного "обработать напильником". В зависимости от метода конвертации, может потребоваться ещё и кувалда (написание скриптов для исправления в документе). Ниже я приведу способы конвертации, над которыми корпел сам. Если кто знает другие и лучшие методы - убедительная просьба не скупиться на комментарии. В заголовках будет содержаться цепочка конвертации до опенофиса, так как дальше всё очевидно.

На рисунке показан документ таким, как он выглядит в LaTeX, после перевода в формат DVI. Всё красиво и замечательно - посмотрим, во что превратится это великолепие при переводе в ЗлоВорд.

latex2html - HTML - OpenOffice
Есть утилита latex2html, которая позволяет со множеством опций переводить созданный в LaTeX документ в гипертекст. Есть несколько неприятных моментов: в HTML нет понятия "разделения на страницы", трудно переводить формулы (только графикой) и математические символы.
У latex2html очень впечатляющий man, в котором можно выцедить много интересного. Например, чтобы утилита переводила текст в одну страницу.

Реализация
Генерируем любой оболочной dvi-файл, чтобы в каталоге ещё остался файл .aux, после чего даём команду в консоли в каталоге, где лежит документ:
latex2html -split 0 -external_file 2006fullReport.aux 2006fullReport.tex
Здесь был использован внешний файл aux (содержит информацию о перекрёстных ссылках) и текст выводился в файл html без разделений на подстраницы. После этого появляется каталог 2006fullReport, в котором лежит много файлов, в том числе нужный нам 2006fullReport.html - его открываем OpenOffice. Копируем текст с рисунками в буфер обмена, вставляем в новый документ OpenOffice, и достаём крупный напильник.

Результат
Неплохо, но полученный документ требует серьёзной доводки. Рисунки вставлены в натуральную величину, все тонкие подгонки ушли на север, ссылок на рисунки нет (только гиперссылки). Формулы - рисунками, зато поставлена правильная нумерация формул. Есть ещё очень крупный минус: рисунки в текст внедрить не удаётся, это просто ссылки.

В общем, этот способ подходит скорее для веб-публикаций документов, не содержащих сложного оформления или формул.

Плюсы
+ есть оглавление;
+ хорошо передаётся оформление документа;

Минусы

- формулы в виде графики, ссылок на рисунки нет,
- рисунки в натуральную величину, группы рисунков не передаются.
- большинство рисунков не внедряются в документ и не могут быть сохранены как RTF (например, графики в PS).


latex2rtf - RTF - OpenOffice
Утилита latex2rtf не входит в дистрибутив Дебиан, но может быть поставлена из внешних репозиториев. Позволяет перевести LaTeX-документ в RTF, после чего легко открывается ОпенОфисом. Параметров у утилиты не так много, перевод сравнительно неплох, но напильник далеко откладывать не стоит.

Реализация
Генерируем любой оболочкой dvi-файл со всеми сопутствующими файлами, после чего даём команду в консоли в каталоге, где лежит документ:
latex2rtf -F -M12 -a 2006fullReport.aux -b 2006fullReport.bbl 2006fullReport.tex
Параметр -F заставляет делать изображения из всех вставленных рисунков, опции -a и -b используют файлы aux и bbl соответственно. Параметр -M12 конвертирует все математические символы в рисунки - медленно, но зато потом не возникает трудностей с формулами.
Результатом этого будет единственный файл rtf. Генерироваться это будет достаточно долго, так что наберитесь терпения. В нём все формулы и математические символы будут в виде рисунков. Полученный файл rtf открываем OpenOffice, и немного проходимся напильником по размеру изображений и сразу меняем поля страницы.

Результат
Достаточно хорошо, есть нумерация рисунков, сами рисунки несколько больше, но в в нормальном качестве и пропорционально тому, что было указано в латеховском документе. Библиографические ссылки есть, и, что особенно радует, сделаны в виде переменных. Но зато вместо слов "Глава" и "Литература" красуются "Chapter" и "Bibliography" соответственно. В целом, если исправить размеры рисунков, то выглядит совсем не дурно.

Единственный финт, который не пройдёт, это два рисунка в minipage с подписями к каждому. Это приведёт к тому, что вся вторая подпись станет рисунком, вместе с номером. Так что перед конвертацией возможно придётся сделать копию документа и поправить подписи. Кроме того, отсутствует оглавление, которое, впрочем, можно выдрать другими конверторами.

Плюсы
+ удовлетворительная вставка рисунков;
+ хорошо передаётся оформление документа;
+ есть нумерация рисунков, библиографии и таблиц.

Минусы
- есть неправильная трансляция в сложных группах изображений с подписями;
- нет оглавления в конечном тексте.


tex4ht (via htlatex) - HTML - OpenOffice
Конвертер tex4ht - вещь очень мощная, но настолько отвратительно документированная в man-страницах, что хоть в гугл беги. Собственно, именно из гугления были найдены необходимые (и весьма не очевидные) параметры для конвертации в HTML.

Реализация
Для этого нужно установить пакеты:
apt-get install tex4ht dvipng
после чего можно использовать многочисленные утилиты. Теперь для конвертации указываем в каталоге с латеховским файлом:
htlatex 2006fullReport.tex "html,word"
Как вариант, можно указать параметры для перевода с поддержкой MathML:
htlatex 2006fullReport.tex "xhtml,mathml-"
Результат визуально очень похожий.

Результат
Результирующий файл будет с тем же именем, но расширением html. Результат хорош, есть рисунки и ссылки на формулы, есть оглавление и список литературы.

Но рисунки, вставленные в ряд, появятся в вертикальном расположении, формулы будут в виде изображений.

Плюсы
+ удовлетворительная вставка рисунков;
+ хорошо передаётся структура и оформление документа;
+ есть нумерация рисунков, библиографии и таблиц;

Минусы

- трудности со статической вставкой рисунков.

tth -> HTML -> OpenOffice

На самом деле tth - это конвертор в HTML, заточенный под перевод научных документов. Переводит оглавление в ``кликабельном'' виде - но русские буквы в оглавлении не видны. Есть возможность переводить библиографические ссылки, сноски и отсылки на формулы - всё это так же будет работать. Очень удобно, когда что-то пишется в LATEXа потом кновертируется в HTML для опубликования на веб-страницах.

Реализация
Для этого нужно установить пакеты:

apt-get install tth

после чего можно использовать утилиты, о которых говорится в man tth - очень, кстати, неплохом. Например, чтобы сконвертировать описанный выше документ, следует набрать команду:

tth -u -c -f9 -i -n2 2006fullReport.tex > 2006fullReport.html

Результат хорош для веб-публикации: есть ссылки по главам, на формулы и рисунки, библиография переводится, картинки вставляются.

Результат:
Результирующий файл будет с тем же именем, но расширением html. Результат хорош, ссылки по главам, на формулы, рисунки, библиографию.

Плюсы:
+ ссылки вставлены прекрасно: на рисунки, формулы, разделы и библиографию;
+ хорошо вставляются математические символы и греческие буквы.

Минусы:
- не все математические символы могут быть переданы;
- оформление в ряде случаев не передаётся.



Что в итоге
В общем, конвертация свободными программами возможна, хотя и не полная. Есть ещё проприетарное поделие tex2word, но оно стоит 100$ плюс требует MathType, который тоже платный. Плюс платный мелкоВорд... При полностью бесплатном и свободном ЛаТеХе это даже жлобством мало назвать.
Так что применяя свободные утилиты и некоторые усилия напильником, можно подогнать ЛаТеХовский документ к вордовому состоянию - только лучше на него не смотреть, результат (по сравнению с прекрасным экземпляром в ЛаТеХ) смотрится как карикатура.

51 комментариев: |высказаться!| RSS-лента дискуссии.|
serhiy комментирует...

С данной проблемой как-то не сталкивался. Но если что, то буду знать где искать.

Анонимный комментирует...

А я бы посоветовал об этих заморочках СРАЗУ забыть и воспользоваться программой TeX2Word (http://www.chikrii.com/). Она того стоит. Вы получите все формулы в нормальном вордовском виде, которые потом можно будет править. И вообще все будет в очень приличном виде, главное чтобы тест был в cp1251.

virens комментирует...

2 Anonymous
А я бы посоветовал об этих заморочках СРАЗУ забыть
... и внимательно почитать название блога - он о свободном программном обеспечении. И об этой приблуде, дорогой ананимус, я уж точно слышал и даже пробовал. И знаете что? я не в восторге от качества перевода этой программой - не говоря уже о том, что для этого мне надо эмулятор запаливать и качать кучу софта.

Америку открывать не надо, ладно?

Анонимный комментирует...

А да, Ты же дибианщик. Просто это свойственно людям, особенно дебианщикам и разработчикам пользоваться не тем, чем нужно и говорить что лучше криво, да свободно.

Я тоже пробовал все твои софтины и тоже могу сказать, что их качество не лучше а хуже.

virens комментирует...

2 Anonymous said...
А да, Ты же дибианщик. Просто это свойственно людям, особенно дебианщикам и разработчикам пользоваться не тем, чем нужно и говорить что лучше криво, да свободно.
Ах да, ты же ананимус. Просто это это свойственно людям, особенно не умеющим делать ничего, кроме как писать на ЛОРе, воровать и обливать грязью всё, что только можно.

Напишешь свою софтину - только тогда будешь тыкать на чужое пальцем. А у меня нет денег покупать кривые плагины под платный недоОфис, работающий под проприетарной ОС и требующей MathType - не дешёвой и не лучшей поделкой людей, далёких от науки.

Tigro комментирует...

Ой, ну и развели вы тут, как на LOR прям... Кстати, как сейчас с научными журналами. В чем они любят принимать статьи, в TeX или DOC?

Анонимный комментирует...

В моей области (математика) ни один журнал не принимает статьи ни в чем, кроме latex.

Igor комментирует...

а у нас в институте механик расстраивался, что Tex почти перестали брать. И если раньше можно было сказать, что человек пойдёт и сдаст статью другому издательству, то сейчас почти не проходит.

Tigro комментирует...

Про Институт механики я знаю. Отговорка заключается в различных версиях TeX. И в принципе это так и есть. Точно также когда к нам на кафедру где есть только Linux, приходили с просьбой распечатать в ворде, лучше было сразу их отправить, так как результат в 70% случаев был известен заранее.

Tex2Word в принципе как раз очень приличная штука для "открытия" tex-файлов в ворде. Главное она делает формулы формулами, а не картинками. А статью с картинками вместо формул журналы я думаю быстро забракуют, особенно серьёзные, без всяких объяснений причин, как обычно и бывает.

А лет через 5 глядишь AbiWord научится делать конвертацию.

virens комментирует...

2 Tigro
Кстати, как сейчас с научными журналами. В чем они любят принимать статьи, в TeX или DOC?
Фигово дело обстоит. В ЛаТеХ принимают только прогрессивные забугорные физические журналы. Наши дятлы кроме "вындовс и вёрд" ничерта не знают. Меня тут довели одни деятели, которые прислали требования к докладу: поля с точностью до микрона, документ "в формате Microsoft Word, с формулами Microsoft Equation Editor"... Стуканул на них "куда следует", после чего конференцию перенесли и появились строчки "..., а так же в формате OpenOffice или TeX".

Отрадно, что постепенно наши физические журналы начинают прозревать и понимать, что заниматься ментальным сексом с вордом не обязательно - есть ЛаТеХ (ну надо же! двадцать лет спустя так дошло!).

Анонимный комментирует...

Какая-то надуманная проблема. Не разу сталкивался, чтобы журналы LaTeX не брали. Напротив, AIP и APS (PhysRev и Ко) требуют деньги если статья не в LaTeX. Из наших, ЖЭТФ точно берет.

С конференциями хуже. Но там сейчас часто web-формы появляться стали.

virens комментирует...

2 Аноним-1
Какая-то надуманная проблема.
Дятлы в моей лаборатории и большинство птиц кафедры ничего кроме "вёрда в виндоувс" не знают и не хотят знать.

Не разу сталкивался, чтобы журналы LaTeX не брали.
Я не математик, к сожалению, и например в "Оптике и спектроскопии" меня с техом послали далеко.

Из наших, ЖЭТФ точно берет.
Не ЖЭТФом единым :-)

2 Anonymous
Дурацкий вопрос, но вертится на языке. Миш ты не МИФИст часом ?
Да, и об этом в комментариях уже писалось :-) Кафедра 25, ФТТ, если что.

Анонимный комментирует...

Вот уж встретились, так встретились :)
Шарик круглый и как у нас говорится, МИФИстов мало, но они везде. Не считая одной альма матер (ТФ, 7 каф), мы еще и тезки и более того оба любители Debian. А под зановес, мы еще и соседи. Долго жил, да сейчас продолжаю наведываться в наше Орехово-Кокосово (10й мкр-н).

virens комментирует...

2 Anonymous
Вот уж встретились, так встретились :)
Так за чем дело встало? В профиле есть почта, mydebianblog /собака/ gmail точка com - пиши. Обсуждать это в комментах - не комильфо, так как не всем интересно :-)

Всем комменаторам большое спасибо за ценные сведения и интересные мысли.

Анонимный комментирует...

Народ! Помогите разобраться с проблемкой с tex2word! При конвертации тех'овского файла на русском языке получаются кракозябры. В исходном файле есть {cp1251}.

Анонимный комментирует...

Нужно набрать \ и %. Выглядит так - \%, и Вы получите знак "%". Удачи!!!

Михаил Саушкин комментирует...

Мне пришлось 3 года доказывать шефу, что LaTeX лучше и удобнее глюкоВорда. Приходилось в глюкВорде верстать математический журнал ужас. Потом издал свою монографию в LaTeX'e шеф удивился удобству. И разрешил набирать труды конференции в LaTeX'е. Теперь разрешил и Вестник в LaTeXe'e выпускать. Правда беда - приходится перенабирать статьи. Зато получается красиво. Самое страшное, когда приносят LaTeX'овские файлы сгенерированные программой word2tex или GrindEQ. Мало того, что они в формулы вместо "икс" русскую "ха" пишут, так они еще и шаблоны при наборе формул (в Equation'e и MathType) не правильно используют. В общем такие файлы ни разу не удавалось сразу и без ошибок скомпилировать.

Вообщем, сами знаете ....

virens комментирует...

2 mike комментирует...
Мы вот за перевод из ворда в тех деньги берем http://mmikz.com.ru/Подработать возьмёте? :-) Я не последний парень на этой деревне :-))

2 mike комментирует...
Мне пришлось 3 года доказывать шефу, что LaTeX лучше и удобнее глюкоВорда.
О, да, знакомая песня. Народ потом просто учиться этому не хочет...
Рад, что у вас достало терпения и мужества!

Михаил Саушкин комментирует...

2 virens
Подработать возьмёте? :-)

А почему бы нет? Правда я сейчас уже уже своих ребятишек научил. Очень много уходит времени на рисунки, особенно когда они в растре. Интересно кто чем рисует векторные рисунки для теха? Я предпочитаю metapost. Дёшево, но сердито. Правда сейчас хочу на Asymptote попробывать.

Вот бы шефа уломать перевести все машины на Linux! :)

Анонимный комментирует...

Я пользуюсь latex2rtf. Утилита, имхо, лучше остальных, так как если что-то конвертится не так, то можно залесть в исходный код и быстро подправить.

Например, в rtf не отображалось \textcolor{Red}{some text}. В исходниках находим:
strcmp("red", ...) и т. д. Сорцы простые.

В общем рекомендую связку latex2rtf + c.

cramur комментирует...

Не ну ваще! Писал-писал диплом в латехе, научрук сказала - никаких пдф мне, шли ворд! Вот с##а!

Если б не твоя статья, точно повесился. Спасибо!

alexandroid комментирует...

А если "на том конце" люди хотят Ворд только чтобы читать (а PDF не используют, потому что читалку ставить не хотят)... Нет ли таких конверторов, которые каждую страницу вставят картинкой в Word?

Yuriy Petrovskiy комментирует...

Несколько раз пробовал разные варианты конвертации из LaTeX в Word. Для себя остановился на следующем:
- в LaTeX делаю PDF
- импортирую его в FineReader
- распознаю и передаю в Word

Преимущества:
- перевод всех графических элементов без потери качества
- нет проблем с настройкой
Недостатки
- Принудительная разбивка на страницы и номера страниц (решается путём замены регулярного выражения \^m[0-9]? на ничто)
- отсутствует структура текста (приходится расставлять стили заголовк 1..n вручную
- ссылки на литературу неактивные

Я понимаю, что это совсем не Open source но результат немного лучше (по крайней мере для в моём случае)

Анонимный комментирует...

На прошедших выходных писал отчёт, и проблема конвертации из латеха в ворд стала для меня как никогда актуальной. Мне позарез нужно было перевести формулы из латеха именно в формулы офиса, а не в картинки. Путём гугления нашёл следующее: http://ubuntuforums.org/showthread.php?t=453721
Суть проста: даём команду
/usr/share/tex4ht/oolatex файл.tex
и на выходе получаем довольно приличного качества документ odt. Разумеется, в системе должен быть установлен tex4ht. У меня даже с формулами всё получилось практически идеально, насколько это вообще может быть при подобного рода конвертации.
Надеюсь, информация полезная.

virens комментирует...

2 Анонимный комментирует...
Я пользуюсь latex2rtf.
Собственно, и я тоже. Там ниже в комментариях намекают на tex4ht, но я его пока не освоил.

latex2rtf развивается, но как-то криво: то одно поломают, то другое...

2 cramur комментирует...
Не ну ваще! Писал-писал диплом в латехе, научрук сказала - никаких пдф мне, шли ворд!
Это ещё что. Меня вот тут намедни заставили формулы набирать в ворде... Вот это была песня народов.

Чем бы людям не заниматься в России - только б не работать...

Если б не твоя статья, точно повесился. Спасибо!
(с чувством) На здоровье! :-)


2 alexandroid комментирует...
Нет ли таких конверторов, которые каждую страницу вставят картинкой в Word?
Так это не проблема: latex2png и полный газ. Только на том конце провода чаще сидят редкостные дятлы, которым не только текст форматированный, но и формулы в Экуиешн Едиторе.


2 Petrovskiy комментирует...
- в LaTeX делаю PDF
- импортирую его в FineReader
- распознаю и передаю в Word

Эээ... да вы, батенька, любите погорячей? ;-)

Я понимаю, что это совсем не Open source но результат немного лучше
Как бы совсем не. Я бы даже сказал, "нам такой хоккей не нужен" :-)

На самом деле, в latex2rtf весьма достойный результат. Попробуйте.

2 genichgurn комментирует...
Мне позарез нужно было перевести формулы из латеха именно в формулы офиса, а не в картинки. Путём гугления нашёл следующее
О! Спасибо, надо будет глянуть!
Ценная ссылка, однако.

и на выходе получаем довольно приличного качества документ odt. Разумеется, в системе должен быть установлен tex4ht.
Да tex4ht у меня есть, только вот документация к нему такая, что мне стало страшно :-)

Но за ссылку спасибо.

Yuriy Petrovskiy комментирует...

2 virens:
Я не извращенец -
у меня немного другая специфика текста :) - формул практически нет, но я использую много макросов типа \new command и \renewcommand а это ни один из приведеных выше методов не переваривает, не говоря о том что нестандартные пакеты(включая комманды, которые они предоставляют) и стили оформления они не понимают Нашел выход, решил поделится.

>На самом деле, в latex2rtf весьма достойный результат. Попробуйте.
прововал. выглядит страшно.

попробую ещё oolatex.
genichgurn-у спасибо за наводку

> "нам такой хоккей не нужен" :-)
"трус не играет в хокей" :)

Анонимный комментирует...

Спасибо за статью!

Вопрос - и latex2html и tex4ht делают формулы в виде картинок с довольно низким разрешением. Можно ли как нить эти картинки сделать побольше? (всякие \Large в исходнике на это увы не влияют;-()

Анонимный комментирует...

Я столкнулся с проблемой конвертирования из latex в word совсем недавно. До сих пор писал свое резюме в латекс и компилировал в pdf. И как-то не с руки сейчас писать вордовский документ, поскольку одна контора принимает резюме только в ворде.

AntonDerevyanko комментирует...

Товарищи, пока что лучше чем GrindEQ™ Math Utilities ничего не нашёл. Конвертирование практически идеальное - особенно порадовали формулы! Из минусов: требуется наличие клятого вёрда, и проприетарное нутро самой утилиты. Там что-то около 10 бесплатных конвертаций... осталось 8 :(

virens комментирует...

@ Анонимный, 29.11.2009 10:33:00
Вопрос - и latex2html и tex4ht делают формулы в виде картинок с довольно низким разрешением. Можно ли как нить эти картинки сделать побольше?

Насколько я знаю - нет.

@Анонимный, 07.01.2010 18:00:00
Я столкнулся с проблемой конвертирования из latex в word совсем недавно. До сих пор писал свое резюме в латекс и компилировал в pdf.
То, что latex2rtf вытворяет с классом cv, приличными словами можно описать только как "леденящий душу абзац" :-)


@Антон, 02.02.2010 17:36:00
Товарищи, пока что лучше чем GrindEQ™ Math Utilities ничего не нашёл.
Антон, а давайте я напишу пост о том, что вы каждому (!) обратившемуся к вам подарите лицензию на Microsoft Word, Microsoft Windows (tm) Ultimate и вот на этот вот GrindEQ. Вы почтовый адресок оставьте, да. Я вас, Антон, уверяю, что деньги у вас кончатся очень-очень быстро...

Серьёзно: обсуждаются в посте только открытые и свободные методы конвертации, а не какие-то кривые поделки с требованием в зависимостях винды ультимейт и ворда энтЫрпрайз.

Unknown комментирует...

Поделюсь скриптом для конвертации отдельных формул или кусков латеховского кода в картинку:

#!/bin/sh
prefix="tmp_$$"
output=$(date +%y.%m.%d_%H:%M:%S.png)
tex="$prefix.tex"
cat > $tex << EOF
\documentclass[12pt]{minimal}
\usepackage[koi8-r]{inputenc} % Классическая кодировка
\usepackage[english,russian]{babel} % Правила переноса слов
\usepackage[intlimits]{amsmath} % Мат. команды
\usepackage{amsfonts} % Шрифты
\usepackage{amssymb} % Спец. символы
\usepackage{wasysym} % Для астрономических символов типа знаков зодиака
\parindent=0pt
\begin{document}
\setbox0=\hbox{
EOF
echo $* >> $tex
cat >> $tex << EOF
}
\textheight=\ht0
\textwidth=\wd0
\advance\textheight by \dp0
\advance\textwidth by 2em
\copy0
\end{document}
EOF
latex $tex
dvipng -D 600 $prefix.dvi -o $output
rm -f $prefix*

Кстати, когда от меня требуют предоставления помимо бумажного отчета еще и вордовский файл, я делаю набор картинок из dvi или pdf, вставляю их в ОО и сохраняю в формате .doc

По крайней мере, полностью сохраняется форматирование оригинала ;)

Softwayer комментирует...

tex4ht
>>формулы будут в виде изображений.
Что, даже с использованием MathML?!

virens комментирует...

@ Эдуард, 02.03.2010 15:07:00
Поделюсь скриптом для конвертации отдельных формул или кусков латеховского кода в картинку
Эдуард, оно конечно, спасибо, но меня лично за такое пытались придушить на месте :-)

Народу нужны редактируемые формулы. Причём это нужно чиновью - я вообще не понимаю, зачем. У нас тут в австралийских степях всё в PDF и никто не возникает.

@ Softwayer, 24.03.2010 18:20:00
tex4ht
>>формулы будут в виде изображений.
Что, даже с использованием MathML?!

Softwayer, поделитесь работающим скриптом или конфигом для tex4ht. Читая тот бред, который в tex4ht называется документацией (чем эту кашу сгенерировали? и для кого?), я так и не смог получить от этого чудища сколько-нибудь приемлемого результата.

Softwayer комментирует...

К сожалению, сам LaTeX буквально пару дней назад изучать начал, поэтому ничем помочь не могу, просто поинтересовался.

Softwayer комментирует...

У меня oolatex (который из tex4ht) выдал из файлика с двумя страничками (с этого блога, про написание диплома) файлище с тучей пустых страниц :(

virens комментирует...

@Softwayer, 29.03.2010 10:33:00
У меня oolatex (который из tex4ht) выдал из файлика с двумя страничками (с этого блога, про написание диплома) файлище с тучей пустых страниц :(
Вот и я про тоже самое. Задумка с tex4ht неплоха, но дурная на всю голову документация tex4ht убивает всю затею напрочь.

Пока я ничего лучше latex2rtf не обнаружил. Если кто-то что-то раскопает - отгружайте сюда или мне на почту.

Unknown комментирует...

Добрый день!
Передо мной тоже встала необходимость сконвертировать кавайный TeX-сурс в ужасный ворд.
Задача решилась с помощью LyX и(неявно) tex4ht. Метод следующий:
1. Создаём документ LyX.
2. Импортируем по одной главы-файлы нашего документа из TeX в LyX(там есть конвертер)
3. Вставляем импортированные главы в основной документ, постоянно проверяя его компилируемость в dvi
4. Экспортируем LyX-документ в odt.

Результат - формулы отображаются формулами, не картинками. Форматирование текста в целом сохраняется. Нумерация формул, ссылки на формулы, рисунки и библиографию сохраняются и отображаются верно(при условии импорта bbl-файла в LyX-страничку, разумеется).
Минусы - вылетает часть иллюстраций - пока не определил, от чего это зависит. Разваливается сложное форматирование рисунков.
В общем, допиливать приходится как на этапе импорта в LyX, так и на этапе odt-документа. С другой стороны - формулы и ссылки корректны.
К сожалению, на поток поставить этот метод невозможно.

Анонимный комментирует...

[i]Вопрос - и latex2html и tex4ht делают формулы в виде картинок с довольно низким разрешением. Можно ли как нить эти картинки сделать побольше?[/i]
По крайней мере в latex2html --- можно.
у него есть файл настроек:
/usr/lib/latex2html/l2hconf.pm
там надо выставить, например:
$EXTRA_IMAGE_SCALE = 4;

aZtec комментирует...

Понимаю, что могу вызвать гнев и недовольство людей, неприемлющих любое использование проприетарного ПО, но …

Лучший вариант для максимально полного сохранения исходного форматирования, который я нашёл для себя – цепочка TEX > PDF > DOC/RTF. К тому же последний этап – конвертация PDF в Word само по себе часто бывает крайне важной задачей.

Так вот, лучше всего позволяет сохранить форматирование при конвертации PDF в RTF программка под названием NitroPDF, кстати у них существует и бесплатный онлайн-конвертер (www.pdftoword.com). Если она справилась плохо – можно глянуть ещё на Infix PDF Editor (удобный редактор для небольших изменений в PDF файлах), либо на другой онлайн-конвертер www.pdfonline.com. Все эти конвертеры, разумеется, преобразовывают формулы в различным образом форматированный текст.

А вот для тех, кто мучается перенабирая формулы из EquationEditor в TeX, и наоборот, советую глянуть на последние версии MathType’а – они умеют конвертировать в ТеХ и обратно. ИМХО очень удобно. К тому же там, по-моему, есть бесплатная лайт версия.

Melleus комментирует...

Debian Squeeze/Wheezy. Ни одна из программ не смогла сделать конверт простого (без формул даже) .tex файла в HTML. Полагаю, проблема была в юникодной кодировке файла и его Украинском языке. На выводе получал либо пустоту, либо кракозяблики, либо файл со странной кодировкой, открывавшийся в Epiphany, но не открывавшийся в ОО и айсдаве. Т.е. адекватный конвертер еще таки, надеюсь, будет написан. Пока же проблема неанглоязычности юзера остается, увы, объективной реальностью. И, вместе с этим, меня выручил не упомянутый здесь HeVeA, который со второго раза, без плясок и ударов в бубен, смог сделать открываемый везде конверт. Пришлось только указать нужный документкласс в опциях, что в документации было написано в самом начале и очень понятно. Рекомендую на вооружение всем.

Melleus комментирует...

В продолжение темы (может у кого тоже возникнет ситуация)...
Проблема оказалась в пакете pscyr. После того, как закомментировал (выключил) его в преамбуле, остальные пакеты (напомню, что HeVeA справилась и без этого) тоже перестали показывать всякую бнопню и заработали нормально.
ЗЫ Говорят, что такое характерно только для сочетания юникод+pscyr, так что все-таки юникод это не для новичков кодировка.

sergas1959 комментирует...

У меня проблема. Я в Украине, скоро должен защищать докторскую диссертацию по математике (почти сплошные формулы). Мы всегда во все времена диссертации и статьи набирали в ТеХе, и у меня диссертация тоже в ТеХе. А теперь наше министерство требует ещё и файл doc - это для того, чтобы работала их программа на выявление плагиата, она только с doc работает. В общем надо как-то конвертировать или заново 300 страниц набирать. Что посоветуете?

virens комментирует...

@Melleus комментирует...
Debian Squeeze/Wheezy. Ни одна из программ не смогла сделать конверт простого (без формул даже) .tex файла в HTML. Полагаю, проблема была в юникодной кодировке файла и его Украинском языке.

Юникод многие из описанных поделок не поддерживают, о чём честно (некоторые из них) сознаются в манах. Про украинский не знаю.

меня выручил не упомянутый здесь HeVeA
Ну так посту-то 5 лет уже.

Насчёт HeVeA - увидев, что оно от INRIA, я сразу загрустил. Для меня всё, что налабано этими пафосными французскими бракоделами - полурабочее недокументированное говно, простите мой французский.
Загуглив, подозрения усилились: куцый readme, Окамль в зависимостях... мда... впрочем, от создателей Scilab другого ждать бессмысленно.

Если тов. Melleus не убежал слишком далеко, автор реквестирует описание того, как всё получилось. Сукцесс стори в студию, так сказать :-)


@sergas1959 комментирует...
А теперь наше министерство требует ещё и файл doc - это для того, чтобы работала их программа на выявление плагиата

Даже не знаю, что на это ответить. Мой любимый latex2rtf на таком количестве формул загнётся. Там выше HeVeA предлагали, но оно на окамле и от инрии. Вообще, вспоминая одного моего приятеля-математика, он говорил, что признаёт для этого только latex2word - это дикая проприетарщина и оффтопик, но тем не менее.

Что посоветуете?
Где-нибудь под покровом ночи позаимствовать latex2word. Это, видимо, единственное рабочее решение.


P.S. Вот что меня всегда поражало в советских людях, так это склонность заниматься (и что самое страшное - заставлять других) всякой хреновиной вместо работы. Заставь дураков гостам молиться - они себе и лоб расшибут. Если у человека есть не только диссертация, но и статьи к ней - они-то наверное не скопированы. А в диссертации может быть только одно - расширенные версии оных статей. Но нет, проформа важнее результата...

sergas1959 комментирует...

Да уж. И не только статьи. Результаты многократно докладывались на большом количестве конференций, семинаров. Работа проходила тщательную экспертизу, и не одну. В неё вникали специалисты по этой теме, которые, уж конечно, знают, что плагиат, а что нет. И тем не менее...
Ладно, спасибо за совет. Попробую.

sergas1959 комментирует...

Достал я программу GrindEQ Latex to Word, спасибо друзьям. Сработала она, сконвертировал я свою диссертацию. Ну, в общем так. В журнал, конечно, такой вордовский файл не пошлёшь, надо много исправлять. Во-первых, весь объём диссертации сразу она не берёт, надо конвертировать по частям. Во-вторых, кое-что из формул неправильно воспринимает, например, дробь a/b после конвертирования отображается как ab. Ну и ещё кое-какие проблемы, скажем, с автоматическими ссылками на источники литературы, но это можно было предвидеть. А в целом результат такой, что жить можно. Тем более, что, как мне объяснили, в Министерстве никто этот файл серьёзно смотреть не будет, достаточно, чтобы формально он был. А проблемы плагиата математиков, как правило, не касаются.

Анонимный комментирует...

Недавно тоже возник вопрос конвертации latex в word(чтоб ему пусто было) и вот что обнаружилось - есть довольно любопытный проект http://www.lyx.org/ (в arch-е прям в основных репах) и вот эта штука умеет экспортировать в odf! да еще и формулы нормально перекидывает.
LibreOffice после этого сей odf совершенно спокойно открывает, и хоть в doc хоть в docx сохраняет, большие обьемы пока не перегонял и картинок у меня тоже там нет, но формулы меня пока устраивают!

Гарри комментирует...

Кто бы поделился хорошим GrindEQ... :)
Я попробовал Lyx - увы - после импорта plain-LaTeX - крокозяблы вместо русских букв. После набора просто по русски - ошибка при попытке экспорта в ODF. Где-то зарыты грабли.

Unknown комментирует...

В помощь тем, кому надо переводить документы из LaTeX в Word на Гитхабе есть моя доработка latex2rtf. Проект затевался с целью добавить обработку рисунков в TikZ. Ещё добавлена обработка captionof и некоторые мелкие доработки.

Забирать можно отсюда:
https://github.com/ra3xdh/latex2rtf-ex

Может быть кому-то будет полезно.

Анонимный комментирует...

Написать конвертер в docx на самом деле задача тривиальная, однако времени нет...

Alex комментирует...

Испробовал разные варианты, в итоге лучше всего результат получится через онлайн конвертер http://go4convert.com/ToDoc_Ru.

У меня MacTex, который из коробки делает pdf, а его я уже в онлайн конвертер. При том, что иллюстрации у меня в формате pdf были (что бы при масштабирования текст не пикселизовывался)

FancyWriter комментирует...

Приветствую.
Столкнулся с проблемами при попытке использования latex2rtf:

hmm-report.tex:6 Package/option 'indentfirst' unknown.
hmm-report.tex:7 Incomplete support for package/option 'amsmath'
hmm-report.tex:10 Package/option 'listings' unknown.
hmm-report.tex:11 Unknown command '\lstloadlanguages'{R}
hmm-report.tex:12 Unknown command '\lstset'{language=R}
hmm-report.tex:27 (hmm-report.aux)
hmm-report.tex:94 Unknown environment \begin{lstlisting} ... \end{lstlisting}
hmm-report.tex:96 Unknown environment \begin{lstlisting} ... \end{lstlisting}
hmm-report.tex:98 Unknown environment \begin{lstlisting} ... \end{lstlisting}
hmm-report.tex:101 Unknown environment \begin{lstlisting} ... \end{lstlisting}
hmm-report.tex:111 Unknown environment \begin{lstlisting} ... \end{lstlisting}
hmm-report.tex:115 Unknown environment \begin{lstlisting} ... \end{lstlisting}
hmm-report.tex:119 Unknown environment \begin{lstlisting} ... \end{lstlisting}

Итак, вижу, он не умеет работать с пакетами indentfirst, listings, и написано, что amsmath поддерживает не полностью.

indentfirst большой роли не играет, а вот listings у меня используется для листингов кода - без них никуда.

Отправить комментарий

Подписаться на RSS-ленту комментариев к этому посту.