|
oXygen XML Editorобзор программы |
|
Онлайн: РИСОВАЛКИ | ИГРЫ | РЕЛАКС программы |
Анатолий Опарин / август, 2018 ВведениеoXygen XML Editor является одним из лучших XML-редакторов, предоставляющий полный набор средств разработки XML для публикации выходных документов в форматы PDF, HTML, EPUB. Редактор подхватывает пространства имен, прописанные в метаданных документа, и, согласно им, максимально облегчает пользователю работу с текстом (в том числе в визуальном режиме) – автоматически формирует список доступных элементов и список атрибутов к ним для быстрой вставки, реализует автодополнение кода, проверяет корректность кода, строит иерархическое дерево документа, позволяет схлопывать и раскрывать участки кода. Редактор имеет встроенные сценарии преобразований XSL→FO→PDF и XSL→HTML, включая XSLT, которые предназначены для обработки содержимого файлов, созданных по технологии DocBook или DITA, с предоставлением возможности кастомизировать стили, применяемые к тэгам форматирования и структурирования.
Моя версия редактора 15.2, в то время, когда самой последней версией на момент написание этого текста является 20.0. Зато моя версия портабельная и бесплатная. В конце статьи есть ссылка на скачивание. По умолчанию в программу не встроены русские словари для проверки орфографии. Словари
можно скачать по этой ссылке. С этой страницы скачиваем, например, С данной сборкой я поработал пару дней и именно в ней написал, а также опубликовал в PDF и в этот HTML статью, которую вы собираетесь прочесть. Нажать стандартную кнопку создания нового документа. Выбрать, например, "DocBook 4 >
Article" (хотя в этом окне выбора фреймворка вы увидите завидное их разнообразие). В текстовом режиме можно определить, что второй строкой прописан путь к файлу
docbookx.dtd – этот путь можно изменить на
Разницу между первым путем к docbookx.dtd и вторым путем не обнаружил невооруженным
взглядом. Но сразу столкнулся с тем, что подписи к картинкам начинаются со слова
"Figure" и содержание называется "Table of Contents". Локализация этого решается так -
тэгу <article> прописать атрибут lang="ru" так В редакторе три режима работы:
При навигации по тексту смотри на "хлебные крошки": Корректность вставки какого-либо тэга зависит от того, где ты находишься. Визуальное представление места нахождения может быть обманчивым. Если с верхней панелью всё более-менее ясно, особенно с панелью редактирования в режиме Author, то по нескольким боковым панелям пройдусь. Слева ниже находится панель Outline – это древовидная структура документа на основе вложенности тэгов. Удобно смотреть, где ты находишься, скрывать/раскрывать блоки, перетаскивать блоки с места на место. По кнопке можно видоизменять это дерево. Справа выше важные панели Elements и Attributes. Это тэги и их атрибуты. Например, если надо выделить текст моноширинным шрифтом, то выделите его, в панели Elements найдите тэг Есть атрибуты с предустановленным списком возможных значений. Находясь внутри тэга можно познакомиться с моделью этого элемента (какие тэги могут находится внутри и какие атрибуты с какими значениями возможны) на панели Model. Также на этой панели есть справка по тэгу. Справа ниже панель, ради которой весь этот сыр-бор с DocBook и затевался – это панель Transformation Scenarious для настройки и публикации конечного документа.
В терминологии Oxygen это называется трансформация, потому что разметка тэгами xml-трансформируется в PDF, HTML, EPUB – конечный формат документов. Если при создании документа выбрана нотация DocBook 4, то в окне этой панели будет список возможных форматов вывода DocBook 4. Если отметить флажок напротив нужных трансформаций и нажать кнопку , то в папку out (по умолчанию, но путь к выходному файлу можно изменить) будет сохранен открытый документ в выбранных форматах. Представленные программой сценарии трансформации править нельзя, но можно сделать копию трансформации кнопкой и её уже настроить под себя. Очень понравился результат трансформации в формат DocBook WebHelp – получаются стильные и удобные документы для просмотра в Интернете, созданные по примеру CHM-файлов (Windows Help) – с древовидным навигационным сайдбаром слева. Также обратите внимание на сценарий трансформации DocBook WebHelp – Mobile. Результат адаптирован для мобильных устройств с небольшим экраном. Формат DocBook HTML прост и кому-то понравится такой простотой. Это такая длинная html "простыня". Весь документ помещается на одну веб-страницу. Формат DocBook HTML – Chunk отличается от предыдущего тем, что документ делится на отдельные страницы согласно разделам. Именно из этого формата не составит большого труда сделать CHM файл сторонними программами типа Microsoft HTML Help Workshop. Если вы выведите документ в PDF согласно предустановленному сценарию "DocBook PDF", вероятно, будете несколько разочарованы, потому что вам не всё форматирование понравится. Программа предоставляет инструмент настройки выходных форматов по кнопке , которая активируется при выделении сценария в разделе копий Project. Открывается окно: Здесь всё можно оставить как есть и воспользоваться только кнопкой [Parameters]. При нажатии на эту кнопку откроется список XSL параметров, которые можно изменить: Здесь надо выделить нужный параметр и нажать кнопку [Edit] для его изменения. Я, например, под себя произвел такие изменения:
Еще была проблема с наклонным шрифтом – он не отображался, т.к. ему был назначен какой-то непонятный шрифт. В параметрах я сделал Calibri первым шрифтом в нескольких местах, и, какое место сработало, затрудняюсь сказать. В настройках программы не все параметры доступны. Их больше в файле
Форматирование блока Примечаний <xsl:attribute-set name="graphical.admonition.properties"> <xsl:attribute name="font-size">10pt</xsl:attribute> <!-- Размер шрифта --> <xsl:attribute name="color">#900</xsl:attribute> <!-- Цвет всего текста содержимого --> <xsl:attribute name="background-color">#EEE</xsl:attribute> <!-- Цвет заливки --> <xsl:attribute name="margin-left">3em</xsl:attribute> <!-- Сдвиг слева --> <xsl:attribute name="padding">0.4em</xsl:attribute> <!-- Отступы внутри блока --> </xsl:attribute-set> Надеюсь, понятно, что текст в <!-- ... --> это просто комментарий к коду и воспроизводить его в файле не обязательно. Формат шрифта верхнего колонтитула <xsl:attribute-set name="header.content.properties"> <xsl:attribute name="font-size">10pt</xsl:attribute> <xsl:attribute name="color">#555</xsl:attribute> </xsl:attribute-set> Форматирование ячеек таблицы
<xsl:attribute-set name="table.properties"> <xsl:attribute name="font-size">10pt</xsl:attribute> <xsl:attribute name="text-align">left</xsl:attribute> </xsl:attribute-set>
Списки <xsl:attribute-set name="list.block.properties"> <xsl:attribute name="margin-left">3em</xsl:attribute> <!-- Сдвиг списка от левого края --> </xsl:attribute-set> Заголовки документа <xsl:attribute-set name="section.title.level2.properties"> <xsl:attribute name="margin-left">25pt</xsl:attribute> </xsl:attribute-set> Здесь я сдвинул заголовок 2-го уровня на 25 пунктов от левого края. Аналогично на другие позиции сдвинул заголовки более низких уровней. Листинги <xsl:attribute-set name="monospace.verbatim.properties"> <xsl:attribute name="font-size">8pt</xsl:attribute> <xsl:attribute name="padding">5pt</xsl:attribute> </xsl:attribute-set> Влияет на содержимое <programlisting>. Удалось уменьшить размер шрифта и сделать отступы от краев блока, но не удалось пока переносить длинные строки. Ссылки <xsl:attribute-set name="xref.properties"> <xsl:attribute name="color">#0000FF</xsl:attribute> <!-- Пусть цвет ссылок будет синим --> </xsl:attribute-set> Картинки <xsl:attribute-set name="figure.properties"> <xsl:attribute name="text-align">center</xsl:attribute> </xsl:attribute-set> Сделал выравнивание всех картинок по умолчанию по центру. В самом редакторе для отдельных картинок можно это изменить с помощью атрибута align. Названия картинок, таблиц... <xsl:attribute-set name="formal.title.properties"> <xsl:attribute name="color">#555</xsl:attribute> <xsl:attribute name="text-align">center</xsl:attribute> </xsl:attribute-set> Если уж картинки сделал по центру, то и подписи к ним тоже. Если вы еще не начали править param.xsl, руководствуясь армейской мудростью "Не
спеши выполнять приказ, его могут отменить", то правильно сделали. Вот способ
кастомизации стилей более удобный и безопасный: создаете файл, например,
param_oparin.xsl и в него пишете дерективы, недостающие в файле param.xsl, потом в
файле param.xsl вверху сразу после тэга <xsl:stylesheet> вставляете строку
4.3. Формат WebHelpПредставление документации в Интернете – насущная потребность многих компаний и разработчиков софта. И не только софта. WebHelp – очень выигрышный формат. Древовидное интерактивное содержание документа слева. В основной области страницы открывается содержание активного раздела. Есть навигация в виде кнопок [Next], [Previous], [Up], [Home]. Есть поиск по всему документу и подсветка найденного контекста на странице открывшегося раздела. Для этого формата генерятся два индексных файла index.html (красивый дизайн) и index_frames.html (простой дизайн). При просмотре на локальном компьютере в современных браузерах есть особенность: в index.html не отрабатываются гиперссылки в силу политики безопасности, в то время как на сервере всё OK. Еще советы по настройке сценария WebHelp: 1. Отображение картинок может быть неправильным – большие становятся маленькими, а маленькие большими, потому что, по какому-то странному алгоритму тэгам img проставляется атрибут width не всегда правильно. Как лечить:1.1 выставить в параметрах сценария: ignore.image.scaling = 1 1.2 поместить в файл resources\css\webhelp_topic.css запись: img {max-width: 90%;} 1.3 вместо п.1.2 можно вставить в параметрах сценария: custom.css.source = my_style.xml перед этим создав файл с таким именем в папке проекта с таким содержимым: <?xml version="1.0"?><style>img {max-width: 90%;}</style> 2. В подвале страниц разделов может генериться лого программы – это убирается в параметрах сценария: webhelp.footer.include = no 3. Увеличить глубину дерева в сайдбаре с 2 (по умолчанию) до 3: toc.section.depth = 3 По умолчанию в Oxygen нет трансформации в формат MS Word. Поэтому, рекомендую из готового PDF конвертировать в Word сторонними программами. Известные мне на практике приложения, умеющие PDF конвертировать в Word с удобоваримым результатом:
Список ранжирован по мере потери качества конвертирования. Но это не значит, что Soda самый худший. Есть и другие программы, которые в список не вошли из-за неприемлемого качества. Возможно мне что-то еще неизвестно, поэтому список не претендует на абсолютную объективность. Подразумевается, что текст в pdf – это не картинка. В противном случае рекомендуется только Abbyy FineReader, потому что лучше всех в мире умеет распознавать текст на изображениях. Есть еще консольная утилита XMLmind XSL-FO Converter. Она очень грамотно переводит FO-формат в DOCX, RTF или ODT. FO – это промежуточный формат между XML и PDF. Oxygen не сохраняет его на диске во время трансформации. Он его формирует, из него делает PDF, а потом удаляет. Ковбойским методом можно этот момент подловить и сохранить для себя fo-формат вашего документа – он появляется на диске на несколько секунд после начала трансформации и его можно в это мгновение скопировать в другое место. Где эти места: Здесь протестирую элементы, которые не встретились выше, но которые пригодятся в работе техническому писателю (таблицы и некоторые типы ссылок), а также потренируемся с картинками. Ссылки работают так:
Есть разные варианты отображения ссылок (например, номер страницы указывать...) - их можно варьировать с помощью атрибута При работе с таблицей сразу захотелось сделать заливку
ячеек первой строки. Не нашел инструмента в Oxygen (в самом-то редакторе заливка
есть, а при выводе в PDF – нет). Но нашел такой рецепт: в любое место внутри тэга
<row> прописать fo-команду Крайне полезная функция таких технологий как DocBook – это принцип единого источника. Один блок текста, например, может присутствовать в разных документах, но не в виде его неотъемлемой составной части, а в виде вставки. Таким образом, редактирование этого текста в одном месте повлечет изменения во всех документах сразу, что удобно и более безопасно. Чтобы осуществить такую вставку надо сначала подготовить документ-донор как обычный xml файл,
и задать Далее в документе-реципиенте поставить курсор в то место, куда будет вставляться секция, и нажать на кнопку . В открывшемся окне найти нужный файл, выделить нужную секцию и нажать [OK]. Секция будет вставлена на место курсора. Если теперь переключиться в текстовой режим, то увидим запись типа такой: <xi:include href="section_for_include.xml" xpointer="someblock" xmlns:xi="http://www.w3.org/2001/XInclude"/>
Чтобы отредактировать текст вставки надо ПКМ вызвать контекстное меню и выбрать Edit Reference. Файл откроется в новой закладке редактора. После его редактирования и сохранения изменения в документе-реципиенте отразятся автоматически. Картинки в текст можно вставлять посредством тэгов:
Чем такой докбуковский метод вставки картинок выгодно отличается от вордовского - тем, что картинки хранятся в отдельной папке с быстрым доступ к ним для просмотра или замены. При необходимости замены не надо этим заниматься в редакторе, достаточно перезаписать файл на диске. В этом архиве (пароль для разархивации: newart.ru) сам редактор, xml-верстка статьи, pdf-результат статьи, мой файл дополнительных стилей. Разархивируйте zip и скопируйте папку редактора в любое место. В файле section_for_include.xml – кусок текста, который в статью вставлен инклюдом для тренировки about_my_Oxygen.pdf – результирующий PDF param_oparin.xsl – мной созданный файл дополнительного форматирования для импорта в родной файл <ПАПКА_ПРОГРАММЫ>\frameworks\docbook\xsl\fo\param.xsl с помощью директивы <xsl:import href="param_oparin.xsl"/> .
Анатолий Опарин (при перепечатке указывать авторство) Ещё статьи для офисных работников, расширяющие их навыки: • ChatGPT – интеллектуальный чатбот – что знает, что умеет, как подключиться • ChatGPT vs ChatSonic – сравнение двух чатботов • 100 нейросетей – категоризированный список со ссылками • Памятка по информационной безопасности • Колонтитулы и подложки в MS Word • Как организовать локальное хранилище писем в MS Outlook • Как настроить правила для входящих писем в MS Outlook • Обзоры и видео по 41 теме MS Excel • Использование фильтров в MS Excel • Работа с датой и временем в MS Excel • Что можно сделать с дублями строк в MS Excel • Функция ВПР в MS Excel • Функция СУММЕСЛИ в MS Excel • Функции ПОИСКПОЗ и ИНДЕКС в MS Excel • Как синхронизировать Google Таблицу с Google Календарем • Как вывести экран Windows-ноутбука на телевизор • Как сделать запись видео экрана Windows 10 без сторонних программ • Document Express Editor – редактор DJVU документов • PDFgear – многофункциональный комбайн для работы с PDF • PowerPoint в HTML5 – обзор софта конвертации • Easy Data Transform – легкое преобразование структурированных данных • EssentialPIM – персональный информационный менеджер • LogViewPlus – анализ, мониторинг и визуализация лог-файлов • MindManager – для создания интеллект-карт • Help+Manual – для создания справок и руководств пользователя • HelpNDoc – для создания документации • Scrivener – программный менеджер писательского труда • SiYuan – современная программа-органайзер по подобию Notion • The Journal – редактор-ежедневник с возможностью экспорта в HTML • Xournal++ – программа для рукописных и рисованных записей • QGIS – геоинформационная система – быстрый старт • Camunda Modeler – приложение для моделирования бизнес-процессов • HyperSnap – лучший в мире скриншотер • StepShot – приложение для скриншотов и их оформления в документацию • TrueConf – отечественный сервис для видеоконференций и чатов • FontLab – профессиональное приложение для создания шрифтов • FictionBook Editor – редактор FB2 книг • Yonote – заменитель Notion в деле организации базы знаний |
Новости короткие
|
|
|