.Tex dönüştürmek nasıl .odt?


43

Bir .tex dosyasını bir .odt dosyasına dönüştürmek istiyorum.
Adım adım iyi bir çözüm önerebilir misiniz?


3
@Naruto: Bunun bir LaTeX belgesi olduğunu varsayıyorum.
Nathan Osman

4
Aşağıdaki tüm cevaplar için: başarı oranınız kullanılan lateks paketlerine bağlı olacaktır ve matematik asla lateks gibi iyi ayarlanmış olmayacaktır.
David LeBauer

Yanıtlar:


20

İster inanın ister inanmayın, karmaşık belgeler ve çok sayıda paket dahil olmak üzere, LaTeX2HTML ile LaTeX2RTF, Pandoc veya TeX4ht'den çok daha iyi sonuçlar aldım.

latex2html texfile.tex -split 0 -no_navigation -info "" -address "" -html_version 4.0,unicode

Bu, aynı texfileada sahip bir klasör oluşturur , böylece oluşturulan HTML'yi ODT'ye dönüştürebilirsiniz:

libreoffice --headless --convert-to odt:"OpenDocument Text Flat XML" texfile/index.html

Bu bir index.odtdosya üretecek . LibreOffice'in dönüştürme filtrelerinin nasıl kullanılacağını kontrol etmek için bu cevaba bir göz atın .

Yorum tartışmasından düzenle:

Yukarıdaki yöntemin işe yaramasına rağmen, tamamen güvenilir bir belge oluştururken bulduğum tek yolun Adobe Acrobat Pro'daki LaTeX'ten gelen PDF çıktısını kullanması çok hayal kırıklığı yaratıyor.


1
Çok fazla ek paketi olan karmaşık belgeler için, LaTeX2HTML dosyaları ve komutları başarısız olur. LaTeX'e aşina olmayan yorum ve düzeltmeler için birisine verebilmek için tezimi HTML'ye ve ODT'ye dönüştürmeye çalışıyorum. Özel komutlar olmadan bile, bu araç başarısız olur. Bir nedenden ötürü Tikz paketi ana suçlulardan biri.
rbaleksandar

@Rbaleksandar @ kullandığınız paketlere bağlı olarak ideal bir çözüm yoktur. Pandoc'u senin için öneririm. Tüm formatları korumaz, ancak bazı yapıları görmezden gelebilir ve en azından son bir belgeyi oluşturabilir.
vmassuchetto

Sayfa baskılarıyla çalışmaz.
Hi-Angel,

Belgeler bu soruda sunulan çözümlerle asla mükemmel değildir. Mükemmel bir belge oluşturmak için bulduğum tek yolun LaTeX'ten PDF çıktısını Adobe Acrobat Pro ile kullanmak çok hayal kırıklığı yaratıyor.
vmassuchetto

Bu komut bana saçma HTML ve saçma ODT verdi. Pandoc çok daha iyiydi.
jdpipe,

25

Depolarda LaTeX'i openoffice.org'un XML formatına dönüştüren bir araç var: tex4ht Tex4ht yükleyin

TeX4ht, köprü metni üretmek için yapılandırılabilir bir TeX tabanlı yazma sistemidir. Kaynak dosyaların işlenmesini yerel TeX derleyicisine bırakarak, stil dosyaları ve son işlemciler aracılığıyla TeX tabanlı uygulamalarla etkileşime girer. Sonuç olarak, TeX4ht, genel olarak TeX tabanlı sistemlerin ve özellikle de LaTeX'in özelliklerini yönetebilir.

TeX4ht, hem TeX / LaTeX giriş dosyalarını kullanarak HTML yazmak için ya da (genellikle) sadece küçük değişikliklerle mevcut TeX giriş dosyalarını (herhangi bir formatta) HTML'ye dönüştürmek için kullanılabilir. XML, XHTML, MathML ve Openoffice.org XML formatı dahil olmak üzere diğer hipermetin çeşitleri de üretilebilir.

Komut satırı...

  1. latex filename.tex
  2. bibtex filename.aux
  3. mk4ht oolatex filename.tex

Bir openoffice.org/libreoffice uyumlu bir dosya ile bitmelidir.


2
Teşekkür ederim. BTW, paketin ana bekçisi ne yazık ki iki yıl önce öldü.
Tal Galili

2
çok yazık ki :(
Rinzwind 25:11

Katılıyorum - Daha aktif bir topluluğun bu çalışmaya devam etmesi için kendisinin üstlenmesini diliyorum ...
Tal Galili

Komut satırı örneği için +1. Belgeleri okumak için zamanım olmadı, ancak yukarıdaki örneği takip etmek oldukça kolaydır.
antmw1361

Sayfa baskılarıyla çalışmaz.
Hi-Angel,

18

Pandoc paketinden başka bir çözüm sağlandı Pandoc yükleyin

Örnek olarak şunları yapabilirsiniz:

pandoc -f latex -t odt -o output.odt input.tex

Giriş dosyası latin1kodlanmışsa, tex dosyalarım gibi, çözüm şudur:

iconv -f ISO-8859-1 input.tex | pandoc -f latex -t odt -o output.odt

Paketin açıklamasının bir kısmını bildiririm:

Pandoc, bir biçimlendirme biçiminden diğerine dönüştürme için kullanılan bir Haskell kitaplığı ve bu kitaplığı kullanan bir komut satırı aracıdır. Okuyabilir

  • etiketleme ve
  • altkümeleri
    • reStructuredText,
    • HTML ve
    • Lateks

ve yazabilir

  • düz metin,
  • markdown,
  • reStructuredText,
  • HTML, -LaTeX, -ConTeXt,
  • RTF,
  • DocBook XML,
  • OpenDocument XML,
  • ODT ,
  • GNU Texinfo,
  • MediaWiki işaretlemesi,
  • EPUB,
  • Tekstil,
  • groff man sayfaları
  • Emacs Org modu ve
  • Kaygan veya
  • S5 HTML slayt gösterileri.

En azından sürüm 1.14.0.4 sayfa sonları ile çalışmaz.
Hi-Angel,

Bu benim için oldukça iyi çalıştı ... Rakamlar, başlıklar var ama kaynakça yok ve çeşitli karışık denklemler / semboller var. Ama en azından el ile temizlemeye başlayabileceğim bir metin buldum.
jdpipe

8

2 adımda yapılabilir. Http://latex2rtf.sourceforge.net/ adresine gidin ve önce Latex'ten RTF'ye, ardından RTF'den ODT'ye dönüştürmek için sağlanan araçları kullanın.

Umarım yardımcı olur.


Hiç işe yaramaz 😂 Asgari örnekle ,% 100 CPU kullanımı ile bir dakika bekletildi . İşe son vereceğini sanmıyorum, o yüzden yarıda kesdim.
Hi-Angel,

Tamam, çalışmasını başardım - belki de makrolarla iyi çalışmadığını - ve aynı zamanda örneğin bir içindekiler tablosu ile çalışmadığını da buldum. Yani hayır, seçenek değil.
Hi-Angel,

6

Eğer ettiyseniz tex4ht Tex4ht yükleyin yüklü paketi, komut oolatex filename.ODT içine .tex çevirir (tex4ht üzerine daha fazla bilgi için, bkz burada ).

Diğer bir yol , orta format olarak RTF kullanan latex2rtf Latex2rtf'i yükleyin paketi olacaktır .


oh - üzgünüm, diğer cevapları görmedim ...
tohuwawohu

Latex2rtf'e bir link eklediğiniz ve diğer 2 cevabın hiçbirinde olmadığı için sorun değil;)
Rinzwind
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.