PDA

Просмотр полной версии : embedded fonts in a Flex DataGrid


andrew2312
19.07.2012, 17:08
Здравствуйте! Укажите, пожалуйста, мне на мою ошибку. В статье по ссылке http://blog.flexexamples.com/2008/02/12/using-embedded-fonts-in-a-flex-datagrid-control/
автор показывает, как можно сделать поворот DataGrid так, чтобы текст внутри не пропал. У меня же вообще пропадает весь текст из таблицы, когда добавляю fontFamily и headerStyleName. Даже без поворота.

<fx:Style>
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
@font-face {
src:url("assets/verdana.ttf");
fontFamily: VerdanaEmbedded;
}
.myHeaderStyleName {
fontWeight: normal;
}
</fx:Style>
<mx:DataGrid id="myGrid" fontFamily="VerdanaEmbedded" headerStyleName="myHeaderStyleName"
dataProvider="{initDG}" editable="true" selectable="true" fontSize="11">
<mx:columns>
<mx:DataGridColumn dataField="Col1" headerText="Column1" headerWordWrap="true" width="100"/>
<mx:DataGridColumn dataField="Col2" headerText="Column2" headerWordWrap="true" width="100">
</mx:columns>
</mx:DataGrid>

Заранее спасибо.

alatar
19.07.2012, 18:00
По-умолчанию, шрифты встраиваются как CFF. mx.controls.DataGrid, по-умолчанию, не поддерживает этот формат. Есть три варианта решения:
1. Использовать spark.components.DataGrid.
2. Встроить шрифты с опцией embedAsCFF: false и назначить вашей DataGrid.
3. Если используете Flash Builder в опциях компилятора в свойствах проекта выбрать чекбокс "Use Flash Text Engine in MX Components" или применить тему MXFTEText.css (%sdk%/frameworks/projects/spark/MXFTEText.css).

andrew2312
20.07.2012, 11:06
Уважаемый alatar! Спасибо огромное за Вашу помощь. Воспользовался вторым вариантом. Возможно Вы сможете подсказать мне решение двух небольших проблем, которые возникли после поворота заголовков таблицы:
1. Как можно сделать перенос на следующую строку длинных заголовков. Сейчас заголовки перевёрнуты на 90 градусов и текст идёт длинной строкой. Чтобы он был виден полностью приходится делать headerHeight просто огромным. headerWordWrap="true" не помогает.
2. По горизонтали и по вертикали в заголовках таблицы появились полосы прокрутки. Можно ли каким-нибудь образом от них избавиться?
Большое спасибо.

Добавлено через 71 час 32 минуты
Решил проблему путём изменения mx:Text в заголовках таблицы на mx:Label и масштабирования. Спасибо за внимание и помощь.