Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / WinForms, .Net Framework Новый топик    Ответить
 RTF выравнивание значения ВНУТРИ ЯЧЕЙКИ таблицы  [new]
Arbit
Member

Откуда:
Сообщений: 207
Здравствуйте уважаемые Гуру!

Я не студент и не профи.
Просто очень люблю программирование.
(Отнеситесь с пониманием подалуйста)

Подскажите пожалуйста как можно сделать выравнивание значения ВНУТРИ ЯЧЕЕК
таблицы?

Например:
Текст по левому краю одной ячейки в строке, а
Число - по правому краю другой ячейки в этой же строке
(как в Word)

trql, trqr и trqc - выравнивают всю таблицу относительно страницы,
а мне нужно именно относительно границ ячейки

Заранее всем благодарен
22 фев 19, 17:22    [21817516]     Ответить | Цитировать Сообщить модератору
 Re: RTF выравнивание значения ВНУТРИ ЯЧЕЙКИ таблицы  [new]
Shocker.Pro
Member

Откуда: ->|<- :адуктО
Сообщений: 20277
Arbit
(как в Word)
Если вопрос про формат RTF, то ответ
а) посмотреть в спецификацию
б) выровнять в ворде, сохранить как rtf и посмотреть, что получилось

А если вопрос не про формат RTF... тогда не очень понятно про что.
22 фев 19, 17:51    [21817531]     Ответить | Цитировать Сообщить модератору
 Re: RTF выравнивание значения ВНУТРИ ЯЧЕЙКИ таблицы  [new]
Arbit
Member

Откуда:
Сообщений: 207
Shocker.Pro
Если вопрос про формат RTF, то ответ
а) посмотреть в спецификацию
б) выровнять в ворде, сохранить как rtf и посмотреть, что получилось

Это первое что я сделал перед тем как обратиться за помощью.
а) В спецификации в разделе работы с таблицами нашел только \trql, \trqr и \trqc
Но выравнивают всю таблицу (об этом писал выше)
б) В Word на пустом листе создал таблицу из одной строки и 1 столбца и получил
полный лист формата А4 лишнего RTF кода, в котором мне сложно разобраться где там описано выравнивание
22 фев 19, 19:48    [21817602]     Ответить | Цитировать Сообщить модератору
 Re: RTF выравнивание значения ВНУТРИ ЯЧЕЙКИ таблицы  [new]
PinkCat
Member [заблокирован]

Откуда:
Сообщений: 2421
Arbit,

Когда ты ложишь грид на форму, то у тебя есть возможность настроить тип, который будет отрисовываться в каждой ячейке колонки грида.
Твоя беда в том, что типа, подходящего для РТФ, в списке нет. Можно написать свой враппер, но это довольно объемно.


Если указанное выше тебя не беспокоит, а беспокоит только проблема с РТФ, то:
- спецификация тут : http://www.biblioscape.com/rtf15_spec.htm​
- необходимый раздел: Cell Shading and Background Pattern

примеры там есть в конце раздела.
22 фев 19, 20:17    [21817636]     Ответить | Цитировать Сообщить модератору
 Re: RTF выравнивание значения ВНУТРИ ЯЧЕЙКИ таблицы  [new]
PinkCat
Member [заблокирован]

Откуда:
Сообщений: 2421
Да, пока не забыл - WordPad - тоже умеет РТФ, но делает его более компактным.
Ниже - 2 строки по 3 колонки, каждый целл форматирован по своему и подписан

{\rtf1\ansi\ansicpg1252\deff0\deflang2057
{\fonttbl
{\f0\froman\fprq2\fcharset0 Times New Roman;}
{\f1\fswiss\fprq2\fcharset0 Calibri;}
{\f2\fnil\fcharset0 Calibri;}
}
\viewkind4\uc1\trowd\trgaph108\trleft-108\trbrdrl\brdrs\brdrw10

\trbrdrt\brdrs\brdrw10
\trbrdrr\brdrs\brdrw10
\trbrdrb\brdrs\brdrw10
\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3

\clbrdrl\brdrw10\brdrs\clbrdrt\brdrw10\brdrs\clbrdrr\brdrw10\brdrs\clbrdrb\brdrw10\brdrs
\cellx2972\clbrdrl\brdrw10\brdrs\clbrdrt\brdrw10\brdrs\clbrdrr\brdrw10\brdrs\clbrdrb\brdrw10\brdrs
\cellx6053\clbrdrl\brdrw10\brdrs\clbrdrt\brdrw10\brdrs\clbrdrr\brdrw10\brdrs\clbrdrb\brdrw10\brdrs

\cellx9134\pard\intbl\f1\fs22 left
\cell\pard\intbl\qc center
\cell\pard\intbl\qr right

\cell\row\trowd\trgaph108\trleft-108\trbrdrl\brdrs\brdrw10
\trbrdrt\brdrs\brdrw10
\trbrdrr\brdrs\brdrw10
\trbrdrb\brdrs\brdrw10
\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3

\clbrdrl\brdrw10\brdrs\clbrdrt\brdrw10\brdrs\clbrdrr\brdrw10\brdrs\clbrdrb\brdrw10\brdrs
\cellx2972\clbrdrl\brdrw10\brdrs\clbrdrt\brdrw10\brdrs\clbrdrr\brdrw10\brdrs\clbrdrb\brdrw10\brdrs
\cellx6053\clbrdrl\brdrw10\brdrs\clbrdrt\brdrw10\brdrs\clbrdrr\brdrw10\brdrs\clbrdrb\brdrw10\brdrs

\cellx9134\pard\intbl\qr RIGHT
\cell\pard\intbl\qc CENTER
\cell\pard\intbl LEFT

\cell\row\pard\sa200\sl276\slmult1\lang9\f2\par
}
22 фев 19, 20:42    [21817652]     Ответить | Цитировать Сообщить модератору
 Re: RTF выравнивание значения ВНУТРИ ЯЧЕЙКИ таблицы  [new]
PinkCat
Member [заблокирован]

Откуда:
Сообщений: 2421
PinkCat,

Соврал. Раздел в спецификации: Paragraph Formatting Properties
22 фев 19, 20:47    [21817654]     Ответить | Цитировать Сообщить модератору
 Re: RTF выравнивание значения ВНУТРИ ЯЧЕЙКИ таблицы  [new]
Arbit
Member

Откуда:
Сообщений: 207
PinkCat, спасибо большое за код!!!
PinkCat
Раздел в спецификации: Paragraph Formatting Properties

Теперь у меня другая проблема.
RichTextBox в студии 2013, видимо, не поддерживает эту часть спецификации, так как
код не отражает форматирование в control.
Хотя в Word и WordPad все красиво.

Я подумал что может сделать наследуемый класс от RichTextBox и прописать все это в нем?
Но это будет мой первый опыт и я не знаю что и как изменить для этого
(какие свойства и методы добавить или изменить)
Может подскажите?

И еще вопрос по спецификации:
Для того чтобы сделать невидимыми, или отобразить границы ячеек или самой таблицы
В каком разделе это смотреть?

Спасибо.
23 фев 19, 15:04    [21817834]     Ответить | Цитировать Сообщить модератору
 Re: RTF выравнивание значения ВНУТРИ ЯЧЕЙКИ таблицы  [new]
Shocker.Pro
Member

Откуда: ->|<- :адуктО
Сообщений: 20277
Arbit
RichTextBox
он используется в качестве редактора или только для просмотра?
23 фев 19, 15:29    [21817847]     Ответить | Цитировать Сообщить модератору
 Re: RTF выравнивание значения ВНУТРИ ЯЧЕЙКИ таблицы  [new]
Arbit
Member

Откуда:
Сообщений: 207
Shocker.Pro
Arbit
RichTextBox
он используется в качестве редактора или только для просмотра?


Используется как текстовый редактор с дальнейшим выводом содержимого на печать.
При работе с таблицей нужно добавить:
- выравнивание содержимого в самой ячейке (по горизонтали и вертикали)
- скрытие и отображение границ таблицы (верх, низ, справа, слева) и самой сетки таблицы.

Остального функционала достаточно.

Спасибо.
23 фев 19, 15:49    [21817857]     Ответить | Цитировать Сообщить модератору
 Re: RTF выравнивание значения ВНУТРИ ЯЧЕЙКИ таблицы  [new]
PinkCat
Member [заблокирован]

Откуда:
Сообщений: 2421
Arbit,

Используется как текстовый редактор с дальнейшим выводом содержимого на печать.
-----
Пользуй Ворд в аутоматион. Там заморочек тоже много, но... это стандартный Ворд...
25 фев 19, 11:43    [21818557]     Ответить | Цитировать Сообщить модератору
Все форумы / WinForms, .Net Framework Ответить