Страница 1 из 1

Сочетание Margin и CanGrow

Добавлено: 07 авг 2006, 13:39
Yukio
Здравствуйте!

Как сочетать ненулевой Margin и CanGrow для StiText?

Если указать ненулевой Margin для контрола StiText, который потом увеличивает свои размеры, такое ощущение, что новые размеры контрола пересчитываются без учета горизонтальной составляющей margin'a, а потом margin "съедает" часть текста в контроле (по крайней мере в Preview это так, при экспорте в разные форматы it varies).

Сочетание Margin и CanGrow

Добавлено: 07 авг 2006, 15:01
Edward
Yukio писал(а):Здравствуйте!

Как сочетать ненулевой Margin и CanGrow для StiText?

Если указать ненулевой Margin для контрола StiText, который потом увеличивает свои размеры, такое ощущение, что новые размеры контрола пересчитываются без учета горизонтальной составляющей margin'a, а потом margin "съедает" часть текста в контроле (по крайней мере в Preview это так, при экспорте в разные форматы it varies).
Спасибо за вопрос. Это ошибка версии 1.60. Для получения обновления обратитесь с запросом на Изображение. Пожалуйста укажите свой регистрационный номер для получения обновления для платной версии. Если Вы не зарегистрированный пользователь, обращайтесь в любом случае.
Спасибо.

Сочетание Margin и CanGrow

Добавлено: 08 авг 2006, 10:00
Yukio
Спасибо за обновление.

В новой версии StiText, если ему указать CanGrow=true, и ненулевой горизонтальный margin, вместо того, чтобы формировать отступ внутри, увеличивает размер контрола по горизонтали, и он заезжает на соседние.

Еще вопрос: как связаны единицы, в которых указывает Margin, с единицами в отчете?

Сочетание Margin и CanGrow

Добавлено: 08 авг 2006, 12:59
Edward
Yukio писал(а):Спасибо за обновление.

В новой версии StiText, если ему указать CanGrow=true, и ненулевой горизонтальный margin, вместо того, чтобы формировать отступ внутри, увеличивает размер контрола по горизонтали, и он заезжает на соседние.
Cпасибо, поправили. Пожалуйста обращайтесь на Изображение за обновлением.
Yukio писал(а): Еще вопрос: как связаны единицы, в которых указывает Margin, с единицами в отчете?
Никак не связаны. В свойстве Margins используются единицы измерения - сотые дюйма.

Спасибо.

Сочетание Margin и CanGrow

Добавлено: 08 авг 2006, 13:14
Yukio
Еще замечено: неправильно сочетается margin с значением StiVertAlignment = Center или Bottom - текст смещается немного вверх. (Для Top работает нормально)

исправлено: другая ошибка оказалась поправленной в обновлении, сорри

Сочетание Margin и CanGrow

Добавлено: 09 авг 2006, 20:55
Vital

Проверили, но эффект явно не проявляется. Возможно прислать какой нибудь пример?

Спасибо.

Сочетание Margin и CanGrow

Добавлено: 10 авг 2006, 07:07
Yukio
Эффект (по крайней мере у меня) в самом деле небольшой, может быть и не стоило беспокоиться. Но тем не менее... примерно такой код может это показать:

Код: Выделить всё

StiBorder border = new StiBorder(StiBorderSides.All,Color.Black,1,StiPenStyle.Solid);
StiMargins margins = new StiMargins(0,0,0,0);
StiReport report = new StiReport();

StiText cellText = new StiText(new RectangleD(0,0,2.5,0.4));
cellText.CanShrink = true;
cellText.CanGrow = true;
cellText.Border = border;
cellText.Name = "text1";
					
cellText.VertAlignment = StiVertAlignment.Center;
cellText.Text = "valign = center";

cellText.Margins = margins;
report.Pages[0].Components.Add(cellText);

StiText cellText2 = new StiText(new RectangleD(2.5,0,2.5,0.4));
cellText2.CanShrink = true;
cellText2.CanGrow = true;
cellText2.Border = border;
cellText2.Name = "text2";
					
cellText2.VertAlignment = StiVertAlignment.Top;
cellText2.Text = "valign = top";
cellText2.Margins = margins;
report.Pages[0].Components.Add(cellText2);

report.Show();
При просмотре видно, что строчка "valign=center" чуть-чуть выше, чем "valign=top". Хотя возможно в самом деле это не так существенно.