Здравствуйте, уважаемые форумчане. Прошу помочь мне решить возникшую у меня проблему вывода (по нестандартному шаблону) подписей к рисункам и таблицам. После замены компьютера, ОС (с 64 на Win 32) и старого MIKTEX на его последнюю версию, в полученном pdf-файле неправильно выводятся подписи. Содержимое подписи вместе с номером должно выводиться как один отцентрированный абзац. А получается, что номер (Рис. 99.) выводится отдельной строкой, а сама подпись находится ниже номера (и они оба отцентрированы).
По-видимому, проблема связана с нестандартным шаблоном статьи (файла sty) и «переделкой» caption. В таком шаблоне нет автоматической нумерации всех объектов (разделов, формул, теорем, рисунков и таблиц). Но к этому всему я привык (две статьи опубликовал в этом журнале).
Но с неправильным выводом подписей надо что-то сделать. Прошу помогите.
Вот преамбула тех-файла статьи::
\documentclass[12pt,twoside]{article}
\usepackage{tikz}
\usepackage[T2A]{fontenc}
%\usepackage[LCY]{fontenc}
%\usepackage[koi8-r]{inputenc}
\usepackage[cp1251]{inputenc}
\usepackage[russian]{babel}
\usepackage{floatflt}
\usepackage{CPMJ}
\usepackage{nccfancyhdr}
%
\newenvironment{assumption}
{\refstepcounter{corcounter}\par\addvspace{3mm}\noindent%
{\bf Предположение \thetheocounter.\thecorcounter.\
}\begin{it}}{\end{it}
\par\addvspace{3mm}}
%
%\usepackage{ifthen,latexsym}
\usepackage{amssymb}
\usepackage{amsfonts}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{graphicx,graphics}
\usepackage{caption,psfrag}
\usepackage[format=plain,labelformat=empty,textformat=simple,
justification=centering]{caption} % это моя вставка, чтобы запретить %вывод стандартного номера
%
\usepackage{xspace}
\setlength{\textfloatsep}{5mm}
\setlength{\intextsep}{5mm}
\begin{document}
\font\aaa = cmbxti14
\def\Re{\mathop{\rm Re}\,}
\def\Im{\mathop{\rm Im}\,}
\def\dist{\mathop{\rm dist}}
\def\grad{\mathop{\rm grad}}
\newcommand{\rpIII}{\mathbb{R}P^3}
\newcommand{\Rim}[1]{\uppercase\expandafter{\romannumeral#1}}
%
%
\newcommand{\phan}{\hspace*{0cm}}
……………………………………………………………………
далее по тексту.
В шаблоне статьи (файл CPMJ)
Содержится такой «пассаж»:
\newsavebox{\tempbox}
\newlength{\mycaptionwidth}
\setlength{\mycaptionwidth}{\linewidth}
%\setlength{\mycaptionwidth}{13.2cm}
\def\caption#1#2{
\par\vspace{10pt}\sbox{\tempbox}{{#1 #2}}
{\ifthenelse{\lengthtest{\wd\tempbox = \mycaptionwidth}}
{\sbox{\tempbox}{#1\ }
\addtolength{\mycaptionwidth}{-\wd\tempbox}
\mbox{#1\ }\parbox[t]{\mycaptionwidth}{#2}}
{\begin{center}#1 #2\end{center}}}
\bigskip}
%
Из-за которого и происходит все плохое. Вместо «автоматического» номера приходится вручную вставлять номер посредством этого:
\begin{figure}[ht]%\vspace{-9mm}
% \centering
\hspace{0mm}
\includegraphics[scale=0.76]{iz1.png}%\vspace{-4mm}
\caption{\hspace{0mm}\footnotesize Рис.~1.}{\footnotesize~ Интерфейс пользователя GULP-IDE: а) область ввода и редактирования скрипта, б) область ввода и редактирования входного файла данных, в) область выходного файла.}\vspace{-3mm}
\end{figure}
И этого:
\begin{table}
\begin{center}
\caption{\vspace{-5mm}\footnotesize~Таблица 1.}{\footnotesize~Какая-то таблица} %\vspace{-2mm}
\begin{tabular}{|c|c|c|}
\hline
N п/п & <img src='https://dxdy-01.korotkov.co.uk/f/0/5/f/05f9a7caf25931d51ad2ad54735df5ff82.png' class="latex" alt="$J(v,w)[\bar \alpha_1] $" title="$J(v,w)[\bar \alpha_1] $" />&<img src='https://dxdy-04.korotkov.co.uk/f/3/b/e/3be901a7f0b753e53a46a70f6a47930a82.png' class="latex" alt="$J(v,w)[\bar \alpha_2]$" title="$J(v,w)[\bar \alpha_2]$" /> \\
\hline
1 & 0,41481694144427 & 0,409891680848025\\\hline
2 & 0,414805991303278& 0,409701655144124\\\hline
3 & 0,414802358566991& 0,409496583044948\\\hline
4 & 0,41480054650382 & 0,409274627344283\\\hline
5 & 0,414799460983295& 0,409033642178898\\\hline
\end{tabular}
\end{center}
\end{table}
При этом получался неправильный вывод подписей.
Я пробовал заменить этот кусок текста, на кусок, взятый из книги:
\renewcommand{\@makecaption}[2]{%
\vspace{\abovecaptionskip}%
\sbox{\@tempboxa}{#1. #2}
\ifdim \wd\@tempboxa >\hsize
{#1. #2}\par
\else
\global\@minipagefalse
\hbox to \hsize {\hfil #1. #2\hfil}%
\fi
\vspace{\belowcaptionskip}}
%
Этот вариант не прошел. Все работало, но вывод подписей был такой же плохой.
Затем я вставил такой кусок, взятый из нормального шаблона другого журнала:
\setlength\abovecaptionskip{2ex}
\def\@caption@left@right@skip{\leftskip=3.5ex\rightskip=3.5ex}
\def\nocaptionskips{\def\@caption@left@right@skip{}}
\renewcommand\@makecaption[2]{%
\vskip\abovecaptionskip
\sbox\@tempboxa{\small\textbf{#1.} #2}%
\ifdim\wd\@tempboxa >\hsize
{\@caption@left@right@skip\small\textbf{#1.} #2\par}
\else
\global\@minipagefalse
\hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
\fi
}
(Правда там все эти строки, в конечном итоге, были закоментированы)
В конечном итоге, ни один из вышеописанных вариантов не прошел.
Ну никак не хочет правильно соединяться коротенький номер типа Рис.99 с более длинным боксом самой подписи.
Прошу вас, пожалуйста помогите. Может быть в этих вариантах текста чего-нибудь не хватает. Я не знаю.