@vamal

Существуют ли генераторы XSLT по исходным данным и их представлениям?

Добрый день!

Исходная задача звучит так: сгенерировать PDF из XML. Беглый поиск навёл меня на XML:FO из которого с помощью уже существующих библиотк можно сгенерировать PDF. XML:FO получается из XML с помощью XSLT. И вот его-то писать руками ужас как не хочется. Кроме того, хочется дать пользователям простейший инструмент для модификации вида итогового документа. На данный момент имеется отформатированный документ DOC/DOCX с полями-заменителями. Его и хотелось бы давать пользователям для модификации.

Собственно сабж. Есть ли что-нибудь готовое, чтобы из XML и DOC/DOCX, содержащий те же данные, что и XML сгенерировать XSLT, который после можно будет применить к аналогичному XML и получить либо DOC/DOCX либо что-нибудь ещё, что после можно будет сконвертировать в PDF?

C# не принципиален, но желателен.

UPD.
В крайнем случае подойдут какие-нибудь визуальные программы-редакторы, которым можно скормить XML и XSLT и сразу видеть результат в процессе редактирования исходных файлов.
  • Вопрос задан
  • 165 просмотров
Пригласить эксперта
Ответы на вопрос 2
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
https://www.altova.com/xmlspy-xml-editor

Генерация кода на Java, C # и C ++
Ответ написан
Комментировать
@vamal Автор вопроса
В общем, генераторов я не нашёл. Софт, в котором можно сразу можно видеть результат работы... эмм. В общем мне подойдёт, но рядовым пользователям его показывать нельзя - в лучшем случае просто испугаются и закроют программу. Собственно, не удивительно, софт не для рядовых пользователей.
В итоге пришлось пилить XSLT руками. Придётся пользователям в случае чего дёргать меня или кого-то другого.

Что же касается итогов, то сделал следующее. Написал XSLT, который переводит исходный XML в XML-FO дотнетовским System.Xml.Xsl.XslCompiledTransform. Далее, с помощью FO.NET из XML-FO генерируется PDF.
Осталось всего чуть-чуть - написать транформеры ещё для 11 шаблонов :-(
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы