Ассоциация ЭБНИТ    ИРБИС-корпорация    Вики-Ирбис    Online/CHM справка Ирбис   
Общие вопросы Ирбис64 :  ИРБИС Irbis
 
Помогите разобраться с RTF-форматом вывода карточки на отдельную статью сборника
Пользователь: S-presso (IP-адрес скрыт)
Дата: 17, April, 2013 20:26

Я использовал в качестве отправной точки формат, выложенный в этом сообщении: [irbis.gpntb.ru]. Попытался подредактировать его для собственных нужд, хотя мои познания в языке форматирования всё ещё оставляют желать лучшего. То, что у меня получилось, я приложил к этому сообщению. Чтобы не менять каждый раз номер статьи в поле 932, я применяю собственную разработку для печати карточек ("АльтерПечать КК"). И хотя я и вставляю, как мне представляется, в нужных местах тэги RTF, вывод получается не совсем таким, как мне хочется. Вот что мне хотелось бы получить на выходе (отредактировал с помощью встроенных средств текстового редактора моей программы):

А вот что выводит программа:

P.S. Мне пока трудно разбирать все эти unifor'ы. Так и не нашёл нигде, что означают, например, конструкции &uf('+S1' , &uf('Ag330^(#'v932) и &unifor('Kjzk.mnu|'&unifor('Av101#1')), а также интересно, за что отвечают файлы, указанные в &uf('6ovixd') и &uf('6ofizxar').

Вложения: !kk330_pth.pft (5.1KB)  
Re: Помогите разобраться с RTF-форматом вывода карточки на отдельную статью сборника
Пользователь: Gena (IP-адрес скрыт)
Дата: 17, April, 2013 21:21

Может я что-то недопонимаю, но... Вы говорите о формате RTF. а приложенный ПФТ создает выходной файл с HTML-тегами. Так и должно быть?

вот ссылка на самый полный документированный список юнифоров. Там есть не все, но большая часть из известного.
[wiki.elnit.org]

&uf('+S1' - не знаю

&uf('Ag330^(#'v932)) - вывести подполе ( из поля 330 повторения, указанного в поле 932

&unifor('Kjzk.mnu|'&unifor('Av101#1')) - раскодировать код языка через справочник jzk.mnu. Код берется из поля первого повторения поля 101

Re: Помогите разобраться с RTF-форматом вывода карточки на отдельную статью сборника
Пользователь: S-presso (IP-адрес скрыт)
Дата: 17, April, 2013 22:05

Ой, извиняюсь, ошибся. Я привёл как раз формат, взятый за основу (из того сообщения). Он действительно был в HTML-формате, который моя программа не принимает, поэтому я и начал переделывать его в RTF (кстати, не понимаю, зачем вообще печатать карточки в HTML - через браузер, что ли?). Чуть позже Светлана Михайловна приложила к своему сообщению и RTF-формат, который я заново попытался переделать (правда, с тем же результатом). Перенести номер страницы для статьи в конец мне ещё удалось, но вот добиться выделения автора жирным и снять это выделение после вывода номера журнала и перед номером страницы - нет.

Вложения: !kk330_pt.pft (4.8KB)  
Re: Помогите разобраться с RTF-форматом вывода карточки на отдельную статью сборника
Пользователь: Дунаевская (IP-адрес скрыт)
Дата: 18, April, 2013 08:02

Gena написал(а):
-------------------------------------------------------
> Может я что-то недопонимаю, но... Вы говорите о
> формате RTF. а приложенный ПФТ создает выходной
> файл с HTML-тегами. Так и должно быть?
>
> вот ссылка на самый полный документированный
> список юнифоров. Там есть не все, но большая часть
> из известного.
> [wiki.elnit.org]
>
> &uf('+S1' - не знаю

[irbis.gpntb.ru]


> &uf('Ag330^(#'v932)) - вывести подполе ( из поля
> 330 повторения, указанного в поле 932
>
> &unifor('Kjzk.mnu|'&unifor('Av101#1')) -
> раскодировать код языка через справочник jzk.mnu.
> Код берется из поля первого повторения поля 101

Re: Помогите разобраться с RTF-форматом вывода карточки на отдельную статью сборника
Пользователь: Дунаевская (IP-адрес скрыт)
Дата: 18, April, 2013 08:37

S-presso написал(а):
-------------------------------------------------------
> Ой, извиняюсь, ошибся. Я привёл как раз формат,
> взятый за основу (из того сообщения). Он
> действительно был в HTML-формате, который моя
> программа не принимает, поэтому я и начал
> переделывать его в RTF (кстати, не понимаю, зачем
> вообще печатать карточки в HTML - через браузер,
> что ли?). Чуть позже Светлана Михайловна приложила
> к своему сообщению и RTF-формат, который я заново
> попытался переделать (правда, с тем же
> результатом). Перенести номер страницы для статьи
> в конец мне ещё удалось, но вот добиться выделения
> автора жирным и снять это выделение после вывода
> номера журнала и перед номером страницы - нет.

По-моему, в Вашем формате все, что Вам нужно, но есть 2 маленьких ошибочки
1. Замените 991^a на 932
if &uf('Ag330#'v991^a)<>'' then
2. Слились два fi
if &uf('Ag330^4#'v932)<>''then' - с. ',&uf('Ag330^4#'v932) fi
fi

Re: Помогите разобраться с RTF-форматом вывода карточки на отдельную статью сборника
Пользователь: S-presso (IP-адрес скрыт)
Дата: 19, April, 2013 12:09

Спасибо, я разобрался. Основная ошибка была не в самом формате, а в том, как он интерпретировался моей программой (выполнялась всё время часть кода, отвечающая за формирование текста в случае использования языка форматирования абзацев, - при этом в случае использования на входе RTF-формата с ним выполнялось ненужное преобразование, сводящее на нет мои собственные привнесённые изменения). Новую версию программы "АльтерПечать" со всеми исправлениями вы можете найти здесь - [irbis.gpntb.ru].



Извините, только зарегистрированные пользователи могут писать в этом форуме.
This forum powered by Phorum.