TeXML
| TeXML | |
|---|---|
| | |
| |
| Тип | Компьютерная вёрстка |
| Разработчик | Oleg A. Paraschenko |
| Написана на | Python |
| Операционная система | Кроссплатформенное |
| Последняя версия | Декабрь 2010 |
| Состояние | Поддерживается |
| Лицензия | MIT |
| Сайт | getfo.org |
TeXML [tɛχːml] — как процесс — является созданной на базе TeX альтернативой XSL-FO.
TeXML был разработан как проект OpenSource с целью представления XML-данных в автоматическом режиме и в виде высококачественного макета в формате PDF.
Посредством дополнительного определения структуры TeXML объединяет существующие различия синтаксиса между TeX и XML.
Технически это происходит в виде отображения элементов разметки TeX в синтаксисе XML.
Разработка
TeXML является модификацией первоначально созданной IBM спецификации; однако, здесь следует различать понятия Структура и Преобразование.
- Структура
- Определение XML для TeXML-структуры с 1999 г. считается законченным (TeXML.dtd).
- Она представляет собой разметку, которая выполняет роль связующего звена между TeX и XML.
- Преобразование
Процессы преобразования функционируют стабильно с конца 2010 г., благодаря чему возможно эффективное применение технологии.
- Первоначальная попытка разработки приложения Java была отклонена IBM и в дальнейшем не проводилась.
Область применения
TeXML используется для генерирования Технической документации из XML-данных.
После преобразования TeXML --> TeX доступна определённая посредством LaTeX библиотека TeX-макросов.
С помощью TeX-макросов для публикации XML-данных возможно определение произвольно конфигурируемого макета.
Особенности
- TeXML обеспечивает автоматическую публикацию XML-данных с помощью программы текстового набора, разработанной для ручного набора символов.
- В отличие от публикации по технологии XSL-FO на макет публикуемых XML-данных можно тонко воздействовать с помощью правил исключения в промежуточном коде.
- Правила исключения могут запоминаться в ходе процесса публикации — таким образом макет оптимизируется с каждым (новым) циклом генерирования.
- Высокая скорость процесса публикации, особенно в случае объёмных документов, где скорость в 100 раз выше, чем у процессов на базе XSL-FO.
Структура TeXML
DTD TeXML-структуры состоит из XML-элементов:
- Root element: TeXML
- Encoding commands: cmd
- Encoding environments: env
- Encoding groups: group
- Encoding math groups: math и dmath
- Encoding control symbols: ctrl
- Encoding special symbols: spec
- PDF literals: pdf
Структура документа TeXML
Пример XML-документа, который уже был преобразован в структуру TeXML:
<TeXML>
<TeXML escape="0">
\documentclass[12pt]{scrartcl}
\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english,russian]{babel}
</TeXML>
<env name="document">
Неверную интерпретацию служебных символов в качестве управляющих называют "Escaping", т. е.: $, ^, >
</env>
</TeXML>
Процесс TeXML
Процесс TeXML преобразует представленные в промежуточном формате TeXML XML-данные в формат TeX:
\documentclass[12pt]{scrartcl}
\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english,russian]{babel}
\begin{document}
Неверную интерпретацию служебных символов в качестве управляющих называют "Escaping", т. е.: \textdollar{}, \^{}, \textgreater{}
\end{document}
Поддержка процессов
Рабочие процедуры на уровне обработки (XML) и уровне публикации (TeX) поддерживаются различными инструментами, например:
- Уровень обработки: Редакторы XML
- — Eclipse (IDE), открытые исходники
- — другие редакторы XML
- Уровень публикации: Синхронизация между кодом и генерируемым PDF с помощью pdfSync:
- — Windows PC: редактор MiKTeX
- — Mac OS X: редактор TeXShop
Литература
- Frank Mittelbach The LaTeX Companion — Tools and techniques for computer typesetting
- Michel Goossens The XeTeX Companion — TeX meets OpenType and Unicode
Ссылки
- SGML/XML and (La)TeX — Решения по представлению XML-данных в формате TeX
- TeXML: an XML syntax for TeX — Проект TeXML (загрузка)
- How to embed pdfsync into pdftex — Синхронизация между кодом и PDF
- TeXML: Typesetting XML with TEX — Первоначальная концепция проекта TeXML
- TeXML: A three-part solution that provides a path from XML into the TeX formatting language — Краткое описание проекта IBM Research (архив)
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.
