Показать сообщение отдельно
Старый 29.12.2010, 00:55
DZHETIGAPA вне форума Посмотреть профиль Отправить личное сообщение для DZHETIGAPA Найти все сообщения от DZHETIGAPA
  № 1  
Ответить с цитированием
DZHETIGAPA

Регистрация: Dec 2010
Сообщений: 342
По умолчанию Русские символы в five3D+Make a new typography file

Уважаемые форумчане! Вопрос к тем, кто сталкивался с five3D и ‘Make a new typography file’. В этой библиотеке существует только шрифт по умолчанию Helvitica и только англ символы. Мне же нужно изменить шрифт+кириллица. Погуглил и нашел такую штуку на офиц сайте: ‘Make a new typography file’ - создает нужные шрифты с нужными символами. Закачал. Вроде все сделал как надо. Создал шрифт CourierNew с несколькими русскими буквами. В классе CourierNew.as дописал расширение класса Typography3D(это уже методом проб и ошибок):
Код AS3:
public class CourierNew  extends Typography3D
Но все равно не работает и выдает ошибку типа :TypeError: Error #1009: Cannot access a property or method of a null object reference.// то есть отсутствие объекта

Для примера написал простейший исходник
Код AS3:
package 
{
	import five3D.display.DynamicText3D;
	import flash.display.Sprite;
	import flash.events.*;
	import five3D.display.Scene3D;
	import five3D.display.Sprite3D;
	import five3D.typography.Typography3D;
	import five3D.typography.CourierNew;
	import com.greensock.*;
 
	/**
	 * ...
	 * @author 
	 */
	public class Main extends Sprite 
	{
		private var rect:Sprite3D;
 
		public function Main():void 
		{
			var scene:Scene3D = new Scene3D();
			scene.x = stage.stageWidth / 2;
			scene.y = 200;
			addChild(scene);
 
			rect = new Sprite3D();
			scene.addChild(rect);
 
			var font:CourierNew = new CourierNew();
 
			var word:DynamicText3D = new DynamicText3D(font);
            word.size=25;            //Устанавливаем размер,
            word.color=0xfff000;    //цвет,
           	word.text = "аааа";
 
			rect.addChild(word);
 
			rect.addEventListener(MouseEvent.MOUSE_MOVE, moveListener)
		}
 
		private function moveListener(e:MouseEvent):void
		{
			var distX:Number=mouseX/800-0.5;    //по оси X
            var distY:Number=-(mouseY/200-0.5);    //по оси Y
 
            TweenLite.to(rect, 1,{rotationX:distY*45, rotationY:distX*30});
        }
	}
}
Прилаживаю исходник со всеми библиотеками.

Буду благодарен за решение данной проблемы.

ЗЫ: возможно есть и другие способы вставки кириллицы в эту библиотеку. Жду ваших ответов.
Вложения
Тип файла: rar src.rar (215.6 Кб, 49 просмотров)