2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Multirow и выравнивание по центру
Сообщение24.11.2016, 13:16 


04/09/14
8
Подскажите, что я делаю не так. Понадобилось сделать табличку. И вроде бы все хорошо, но в ячейках с multirow не работает нормально выравнивание - ближе к левой стороне (сравнить "норма" и "соотв." в ячейках)
Изображение
код: [ скачать ] [ спрятать ]
Используется синтаксис LaTeX
\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}}% Выравнивание столбца по левому краю
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}% Выравнивание столбца по левому центру
\newcolumntype{R}[1]{>{\raggedleft\arraybackslash}p{#1}}% Выравнивание столбца по правому краю
\newcolumntype{P}[1]{>{\centering\arraybackslash}p{#1}}
\newcolumntype{M}[1]{>{\centering\arraybackslash}m{#1}}

\begin{longtable}{|C{25mm}|M{17mm}|M{17mm}|M{22mm}|C{20mm}|C{20mm}|C{22mm}|}  
\caption{Сложноватая} \label{appendix:t:3} \\
\hline
\multirow{3}{25mm}{ Проверяемый параметр}                                      &
\multicolumn{2}{C{34mm}|}{ По \mbox{КПВЕ.xxxxxx.yyyyy}}       &
\multicolumn{3}{C{62mm}|}{Результаты испытаний}               &
\multirow{3}{22mm}{Примечание} \\ \cline{2-6}                                   &                          

\multirow{2}{15mm}{норма}                                                                    &
\multirow{2}{22mm}{номер пункта методики}                                      &
\multicolumn{1}{C{22mm}|}{Нормальные условия}                            &
\multicolumn{1}{C{20mm}|}{плюс 50 °С}                                       &
\multicolumn{1}{C{20mm}|}{минус 40 °С}                                             &
\\ \cline{4-6}

&&& \multicolumn{3}{C{62mm}|}{Напряжение питания}                        &
\\ \cline{4-6}
&&& \multicolumn{1}{C{22mm}|}{2,2 В}                                             &
\multicolumn{1}{C{20mm}|}{5 В}                                                                   &
\multicolumn{1}{C{20mm}|}{5 В}                                                                   &
\\ \cline{1-7}
\endfirsthead
\endhead

\multicolumn{1}{|L{25mm}|}{ 1 Работоспособность RS-232C} &
\multicolumn{1}{C{17mm}|}{соотв.}                                           &
\multicolumn{1}{C{17mm}|}{5.2.1}                                                 &&  
\multicolumn{2}{C{40mm}|}{\multirow{2}*{Не проверяется}} &
\\ \cline{1-4} \cline{7-7}


\multicolumn{1}{|L{25mm}|}{ 2 Работоспособность RS-485}  &
\multicolumn{1}{C{17mm}|}{соотв.}                        &
\multicolumn{1}{C{17mm}|}{5.2.2.1}                                       &&  
\multicolumn{2}{C{40mm}|}{}                                                              &
\\ \hline

     &    &    &  12 &  12 &  12&  12 \\ \hline
     &    &    &  12 &  12 &  12&  12 \\ \hline
     &    &    &  12 &  12 &  12&  12 \\ \hline
     &    &    &  12 &  12 &  12&  12 \\ \hline
     &    &    &  12 &  12 &  12&  12 \\ \hline
     &    &    &  12 &  12 &  12&  12 \\ \hline
     &    &    &  12 &  12 &  12&  12 \\ \hline
     &    &    &  12 &  12 &  12&  12 \\ \hline
\end{longtable}


И еще, как в multirow сделать выравнивание по центру вертикальное?

 Профиль  
                  
 
 Re: Multirow и выравнивание по центру
Сообщение24.11.2016, 14:11 
Заслуженный участник
Аватара пользователя


31/01/14
11018
Hogtown
Полный пример: с преамбулой, чтобы можно было сразу процессировать.

 Профиль  
                  
 
 Re: Multirow и выравнивание по центру
Сообщение24.11.2016, 16:04 


04/09/14
8
код: [ скачать ] [ спрятать ]
Используется синтаксис LaTeX
 \documentclass[a4paper,12pt,russian]{article} %draft
\usepackage[T2A]{fontenc}% Поддержка русских букв

% XeTeX packages
\usepackage[cm-default]{fontspec} % or install lmodern and remove cm-default opt
\usepackage{xunicode} % some extra unicode support
\usepackage{xltxtra} % \XeLaTeX macro

\tolerance=1000
\emergencystretch=0.74cm
\usepackage{indentfirst} %делать отступ в начале параграфа

\usepackage[pdfborder = {0 0 0}]{hyperref} %гиперссылки в документе.

\usepackage[utf8]{inputenc}     % кодировка текста
\usepackage[russian]{babel}     % руссификация по Бабелю
\usepackage{graphics}

\usepackage[clean,pdf]{svg}

\usepackage{amsmath, amsfonts} % для расширенных настроек ссылок на формулы
\usepackage{extsizes}   % использование шрифтов большего кегля

\usepackage{fancyvrb} % Добавляет продвинутые Verbatim и Verb

\usepackage{epsfig} % удобно вставлять рисунки в строку текста
\usepackage[usenames,dvipsnames]{pstricks}
\usepackage{pst-grad} % For gradients
\usepackage{pst-plot} % For axes



\usepackage{graphicx,xcolor}

%\usepackage[MakeStamp]{eskdi}
\usepackage[MakeStamp, SubSectInToc]{eskdi}
%\usepackage[MakeStamp, SubSubSectInToc]{eskdi}
%\usepackage[MakeStamp, ParagraphInToc]{eskdi}
%\usepackage[twoside, MakeStamp, ParagraphInToc]{eskdi}
%\usepackage{eskdi}
%\usepackage[SubSectInToc]{eskdi}
%\usepackage[SubSubSectInToc]{eskdi}
%\usepackage[ParagraphInToc]{eskdi}
%\usepackage[twoside, ParagraphInToc]{eskdi}
%\usepackage[twoside, MakeEmptyStamp, SubSectInToc]{eskdi}
%\usepackage[twoside, MakeEmptyStamp, ParagraphInToc]{eskdi}
%\usepackage[twoside, MakeEmptyStamp]{eskdi}
%\usepackage[MakeEmptyStamp, ParagraphInToc]{eskdi}


\usepackage{array}
\usepackage{tabularx}
\usepackage{supertabular}
\usepackage{longtable} % для создания таблиц, переносящихся на другую страницу
%\usepackage{listingsutf8}%
\usepackage{listings} % для включения листинга кода в приложения. Русский язык глючит.


\lstloadlanguages{bash,[LaTeX]TeX,MetaPost,Clean,Matlab}


\usepackage{textcomp}   % Ввод различных знаков
\usepackage{keystroke} % для отображения символов клавиш
\usepackage{bytefield} %для создания таблиц с битовыми полями
\usepackage{filecontents} %для включения в документ содержимого файлов

\usepackage{tikz} % Пакет для рмсования диаграмм
\usepackage{tikz-timing}[2009/12/09]
\usetikzlibrary{positioning,arrows,automata,plotmarks} %В данном случае нам потребуются positioning и arrows, которые нужны для расположения элементов друг относительно друга и рисования стрелок между ними соответственно.
\usetikzlibrary{shapes,snakes}
\usepackage{schemabloc}
\usepackage{lscape}
\usepackage{makecell} % Для многострочных ячеек таблицы
\usepackage{colortbl} % Для раскрашивания ячеек в таблицах
\usepackage{multirow}
\usepackage{hhline}

\gostSetRomanfont{Times New Roman}%
\gostSetSansfont{Times New Roman}%
\gostSetMonofont{Times New Roman}%
\gostSetMainfont{Times New Roman}%
\gostSetStampfont{Times New Roman}%
\verbatimfont{\fontspec[Scale=1.0]{Arial} \itshape}% % Для замены стиля начертания verbatim и verb

%\renewcommand{\SetStampfontIt}{\itshape}%
\usepackage{array,booktabs}
\usepackage{tabularx}

\input commands.tex %Файл включает такие команды как надчёркивание, запрещение переноса ТУ и др.


\setpage % Разметка текста на странице

\begin{document}% Начало самого документа (содержательной части)

\input ./muucos/title.tex %Здесь информация о названии файла, авторах и т.д.

\maketitle % Поместили Титульный лист

\SetEvenPage
\makesecondpage

\tableofcontents % Содержание
%\input ./muucos/begin.tex
\input ./muucos/Part_1.tex
\SetEmptyPage
\SetEvenPage

\input ./muuos/Part_7.tex

\clearpage

\end{document}



 

 Профиль  
                  
 
 Re: Multirow и выравнивание по центру
Сообщение24.11.2016, 19:43 


13/07/14
257
В вашем примере
Цитата:
! LaTeX Error: File `eskdi.sty' not found.

И ещё изучите http://meta.tex.stackexchange.com/a/3225

 Профиль  
                  
 
 Re: Multirow и выравнивание по центру
Сообщение24.11.2016, 20:50 
Заслуженный участник
Аватара пользователя


31/01/14
11018
Hogtown
1) Примеры должны быть минимальными (т.е. не загружать кучи не относящихся к делу пакетов, особенно левых вроде eskdi (на CTAN нет, значит левый) и шрифтов)
2) И быть возможно меньше. А тут у Вас еще куча всего \input и бог знает чего

 Профиль  
                  
 
 Re: Multirow и выравнивание по центру
Сообщение24.11.2016, 23:34 


04/09/14
8
Так проблема в том, что у меня оформление по ГОСТ реализовано eskdi пакетом, и у меня в нем куча документации сделана. А сейчас понадобилось добавить такую таблицу. И как мне быть?

 Профиль  
                  
 
 Re: Multirow и выравнивание по центру
Сообщение24.11.2016, 23:41 
Заслуженный участник
Аватара пользователя


31/01/14
11018
Hogtown
Вы можете сделать все в один файл, исключая eskdi.sty, и отдельно eskdi.sty?

 Профиль  
                  
 
 Re: Multirow и выравнивание по центру
Сообщение28.11.2016, 13:45 


04/09/14
8
В два файла не смог. Максимально упростил все и выкинул все неиспользуемое.

http://rgho.st/6VLV2Szjs

 Профиль  
                  
 
 Re: Multirow и выравнивание по центру
Сообщение28.11.2016, 15:05 
Заслуженный участник
Аватара пользователя


31/01/14
11018
Hogtown
Минимальный пример: не нужен ни xelatex, ни tikz, ничего кроме того, что используется в конкретном месте

 Профиль  
                  
 
 Re: Multirow и выравнивание по центру
Сообщение28.11.2016, 15:47 


04/09/14
8
Red_Herring в сообщении #1172400 писал(а):
Минимальный пример: не нужен ни xelatex, ни tikz, ничего кроме того, что используется в конкретном месте

Ну вроде бы так.

Код:
\documentclass[a4paper,12pt,russian]{article} %draft
\usepackage[T2A]{fontenc}% Поддержка русских букв

% XeTeX packages
\usepackage[cm-default]{fontspec} % or install lmodern and remove cm-default opt
\tolerance=1000
\emergencystretch=0.74cm

\usepackage[utf8]{inputenc}   % кодировка текста
\usepackage[russian]{babel}   % руссификация по Бабелю
\usepackage{fancyvrb} % Добавляет продвинутые Verbatim и Verb
\usepackage[MakeStamp, SubSectInToc]{eskdi}

\usepackage{array}
\usepackage{tabularx}
\usepackage{supertabular}
\usepackage{longtable} % для создания таблиц, переносящихся на другую страницу
%\usepackage{listingsutf8}%
\usepackage{listings} % для включения листинга кода в приложения. Русский язык глючит.

\usepackage{makecell} % Для многострочных ячеек таблицы
\usepackage{multirow}
\usepackage{hhline}

\gostSetRomanfont{Times New Roman}%
\gostSetSansfont{Times New Roman}%
\gostSetMonofont{Times New Roman}%
\gostSetMainfont{Times New Roman}%
\gostSetStampfont{Times New Roman}%
\verbatimfont{\fontspec[Scale=1.0]{Arial} \itshape}% % Для замены стиля начертания verbatim и verb

\usepackage{booktabs}
\begin{document}
\input ./mus/title.tex %Здесь информация о названии файла, авторах и т.д.

\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}}% Выравнивание столбца по левому краю
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}% Выравнивание столбца по левому центру
\newcolumntype{R}[1]{>{\raggedleft\arraybackslash}p{#1}}% Выравнивание столбца по правому краю
\newcolumntype{P}[1]{>{\centering\arraybackslash}p{#1}}
\newcolumntype{M}[1]{>{\centering\arraybackslash}m{#1}}


\begin{small}
\begin{longtable}{|M{25mm}|M{17mm}|M{17mm}|C{22mm}|C{20mm}|C{20mm}|M{22mm}|} 

\hline
\multirow{3}{25mm}{  Проверяемый параметр}                   &
\multicolumn{2}{M{34mm}|}{ По \mbox{КПВЕ.123456.12345}}       &
\multicolumn{3}{C{62mm}|}{ XXX}               &
\multirow{3}{22mm}{ Примечание} \\ \cline{2-6}               &                           

\multirow{2}{15mm}{  норма}                              &
\multirow{2}{17mm}{  номер пункта  методики}                 &
\multicolumn{1}{M{22mm}|}{ Нормальные условия}               &
\multicolumn{1}{M{20mm}|}{ плюс 50 °С}                       &
\multicolumn{1}{M{20mm}|}{ минус 40 °С}                     &
\\ \cline{4-6}

&&& \multicolumn{3}{M{62mm}|}{  Напряжение питания}  &
\\ \cline{4-6}
&&& \multicolumn{1}{M{22mm}|}{ 2,2 В}                     &
\multicolumn{1}{M{20mm}|}{ 5 В}                           &
\multicolumn{1}{M{20mm}|}{ 5 В}                           &
\\ \cline{1-7}
\endfirsthead


\endhead
\multicolumn{1}{|L{25mm}|}{ 1 Работоспособность RS-232C} &
\multicolumn{1}{M{17mm}|}{соотв.}                    &
\multicolumn{1}{M{17mm}|}{5.2.1}                    && 
\multicolumn{2}{M{40mm}|}{\multirow{2}*{Не проверяется}} &
\\ \cline{1-4} \cline{7-7}


\multicolumn{1}{|L{25mm}|}{ 2 Работоспособность RS-485}  &
\multicolumn{1}{M{17mm}|}{соотв.}                        &
\multicolumn{1}{M{17mm}|}{5.2.2.1}                    &&   
\multicolumn{2}{M{40mm}|}{}                         &
\\ \hline

\multicolumn{1}{|L{25mm}|}{ 3 Работоспособность Ethernet} &
\multicolumn{1}{M{17mm}|}{соотв.}                         &
\multicolumn{1}{M{17mm}|}{5.2.2.2}                     &&&&
\\ \hline


\end{longtable}
\end{small}

\clearpage
\SetEmptyPage
\end{document}




 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group