Преобразование между docx / doc / rtf и облегченной разметкой

Я ищу инструмент или набор инструментов для преобразования между форматами файлов D и M, где

  • D - это формат, обрабатываемый MSWord, в порядке предпочтения: docx, doc, rtf.
  • M - легковесная разметка, такая как markdown, textile, txt2tags, может быть эзотерической
  • есть способ сгенерировать html из M
  • преобразование двустороннее, выполняется как из D в M, так и из M в D
  • кодировка utf-8 обрабатывается правильно
  • содержание простое, абзацы, какое-то простое форматирование, например, полужирный и курсив, может быть, списки
  • инструменты не зависят от платформы

Что я нашел до сих пор

  • TeX, LaTeX - слишком тяжеловесны
  • docx2txt - слишком легкий, он вообще не поддерживает форматирование
  • html - MSWord создает раздутый html
  • несколько односторонних преобразований, например doc в mediawiki,

ОБНОВИТЬ:

Вариант использования - это документооборот между техническими и нетехническими людьми.

  • Я, технический специалист, редактирую документ в виде обычного текста, помещаю его в систему контроля версий и т. Д.
  • Отправляю своему менеджеру или другим нетехническим специалистам
  • Они добавляют комментарии, вносят в него изменения с помощью своего Word, а затем отправляют его мне.
  • Я хочу просто проверять их изменения, вносить свои изменения, помещать их в систему управления версиями, не используя Word

person Adam Schmideg    schedule 28.09.2010    source источник
comment
Почему? Почему бы просто не использовать облегченную разметку и не создавать из нее PDF-файлы? Зачем вообще продолжать использовать Word?   -  person S.Lott    schedule 28.09.2010
comment
@ S.Lott - Чтобы общаться с остальным миром.   -  person Adam Schmideg    schedule 28.09.2010
comment
Разве простой текст и PDF не более универсальны, чем форматы файлов Microsoft? Кто этот остальной мир?   -  person S.Lott    schedule 29.09.2010
comment
Хорошо, 90% людей редактируют текстовые файлы и конвертируют их в универсальный Adobe Pdf. Старомодные, технически неграмотные 10% используют Word, чтобы делать заметки. Я хочу общаться с этими 10%, включая моего партнера, мою маму, моего начальника.   -  person Adam Schmideg    schedule 29.09.2010
comment
Вы хотите сказать, что остальные 10% не могут научиться пользоваться блокнотом? Я не понимаю этого, и в этом вопросе очень сложные требования к двустороннему преобразованию. Зачем нужны все эти преобразования? Почему бы просто не обменяться текстовыми документами с 10%, которые не могут использовать блокнот?   -  person S.Lott    schedule 29.09.2010
comment
Потому что я принадлежу к тем 90%, которые давно перестали использовать Word, как вы и предложили. Этот разговор помогает вам ответить на мой вопрос или вы просто развлекаетесь?   -  person Adam Schmideg    schedule 29.09.2010
comment
@ Адам Шмидег: Я все еще пытаюсь понять варианты использования. Ясно, что вам не интересно объяснять. Я спрошу в последний раз. Зачем нужны все эти преобразования? Я не понимаю этого, и в этом вопросе очень сложные требования к двустороннему преобразованию. Вы можете и дальше не отвечать. В таком случае я тоже перестану спрашивать.   -  person S.Lott    schedule 29.09.2010
comment
Где в мире вы, ребята, получаете эти 90% / 10%? Вы действительно верите, что приблизились к реальным показателям проникновения и использования Office?   -  person Todd Main    schedule 29.09.2010
comment
@Otaku: вы, ребята (во множественном числе)? Не я. Я не понимаю даже базового варианта использования. Я ежедневно использую облегченную разметку (в частности, RST) и никогда не обмениваюсь с офисными продуктами. Я только что дал PDF. В одну сторону. Все офисные продукты, которые я когда-либо видел, работают с простыми текстовыми файлами, поэтому конвертировать их там нет. Я не могу понять двустороннюю часть этого. Цифра 90%, похоже, не является частью варианта использования. Я думал, что это просто преувеличение, и готов был отказаться от него, чтобы понять сценарий использования.   -  person S.Lott    schedule 29.09.2010
comment
@ S.Lott - извини, чувак, я думал, что вариант использования очевиден, я признаю его каждый другой. Я обновил сообщение, чтобы включить его.   -  person Adam Schmideg    schedule 30.09.2010
comment
@ S.Lott - будь настоящим. Пожалуйста. Цифра 90% - это шутка, поскольку на самом деле все наоборот. Все и их бабушки используют Office. Пуристам это не нравится, но мы говорим о реальном мире.   -  person Daren Thomas    schedule 30.09.2010
comment
@ Адам Шмидег: Вот подсказка. Когда кто-то спрашивает о варианте использования, это не очевидно. Вот еще одна подсказка. Когда кто-то спрашивает о варианте использования, вы должны думать, что он не знаком с вашей повседневной жизнью и нуждается в некоторых деталях. Вот еще одна подсказка. Если вам нужны подробные и полезные ответы, вам нужно задать подробный вопрос. Просто предлагаю улучшить свой вопрос или позвонить людям, которые пытаются вам помочь, идиотами. Выбор остается за вами.   -  person S.Lott    schedule 30.09.2010
comment
@ Дарен Томас: будь настоящим? Я сказал, что полагаю, что цифра в 90% была преувеличением. Что еще я могу сказать?   -  person S.Lott    schedule 30.09.2010
comment
Хорошо, народ, спасибо за подсказки, я обновил свой вопрос, надеюсь, теперь он достаточно ясен. Цифра в 90%, конечно, была шуткой / преувеличением.   -  person Adam Schmideg    schedule 30.09.2010
comment
Word предлагает функцию под названием «Отслеживание изменений». Клиенты, с которыми я имел дело, очень привыкли использовать это в своем рабочем процессе. Отслеживание изменений - вот почему намного сложнее заменить Word чем-то другим   -  person matb33    schedule 16.11.2012


Ответы (4)


Адам, я использовал docx4j для преобразования docx в html, отредактировал html в CKEditor, а затем использовал docx4j для преобразования html обратно в docx. В моем процессе были сделаны некоторые предположения о css (т.е. он был разработан для обработки чистого html docx4j и редактирования в CKEditor).

Вы не говорите, есть ли способ сгенерировать M из HTML?

person JasonPlutext    schedule 28.09.2010

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

Лучший мир, о котором я могу думать, был бы своего рода гибридом Wiki / Word: может быть, вы можете заставить Google Wave сделать это за вас?

Другое решение, которое может сработать, - это CMS, такая как Plone (добавляли ли они когда-нибудь возможность WYSIWIG? Я перестал заботиться после версии 1). Храните там свои документы. Позвольте системе обрабатывать изменения, аннотации и т. Д. Вы можете автоматизировать извлечение источника (должно быть ReStructuredText) и передать его в систему управления версиями, если необходимо.

person Daren Thomas    schedule 30.09.2010

Этот сценарий, который я написал, может помочь вам в вашем рабочем процессе:

https://github.com/matb33/docx2md

Это сценарий PHP командной строки, который работает только с .docx файлами. Он извлечет XML, выполнит некоторые преобразования XSL и предоставит вам результат в формате Markdown.

Я призываю вас присылать мне .docx файла, которые не конвертируются точно. Я бы хотел сделать этот сценарий как можно более надежным и надежным.

person matb33    schedule 16.11.2012

Я считаю, что Pandoc намного более чем соответствует всем требованиям.

http://pandoc.org

person Ondrej Bozek    schedule 26.05.2016