Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 20.06.2011, 20:54
GooDMAGE вне форума Посмотреть профиль Отправить личное сообщение для GooDMAGE Найти все сообщения от GooDMAGE
  № 1  
Ответить с цитированием
GooDMAGE

Регистрация: Jun 2011
Сообщений: 16
Tools Помогите с Embed!

Всем привет!
Как встроить шрифт во флешку?
На данный момент делаю так:
Код AS3:
package bin.Text 
{
	import flash.display.MovieClip;
	import flash.text.*;
	/**
	 * ...
	 * @author GooDMAGE
	 */
	public class Text extends MovieClip
	{
		[Embed (source = "fonts\visitor1.ttf", fontFamily = "Visitor", mimeType = "application/x-font-truetype", embedAsCFF = "false")]
 
		//Vars
		private var Name:TextField;
		private var style:TextFormat;
 
		public function Text()
		{	
			style = new TextFormat();
			style.font = "Visitor";
			style.size = 15;
			style.color = 0xFFFFFF;
		}
 
		public function TEXT(TexT:String, cX:int, cY:int):void
		{
			Name = new TextField;
			Name.embedFonts = true;
			Name.setTextFormat(style);
			Name.defaultTextFormat = style;
			Name.antiAliasType = AntiAliasType.NORMAL;
			Name.selectable = false;
			Name.type = "dynamic";
			Name.autoSize = TextFieldAutoSize.CENTER;
			Name.text = TexT;
                        Name.x = cX;
			Name.y = cY;
			Name.maxChars = 15;
			addChild(Name);
		}
 
	}
 
}
Но текст не отображается. Хотя если закомментить Name.embedFonts = true; то текст появляется ,но с обычным шрифтом. Код пишу во FD. Знающих прошу помочь/объяснить почему не отображается шрифт ,и как это исправить!

Старый 20.06.2011, 21:17
samana вне форума Посмотреть профиль Отправить личное сообщение для samana Найти все сообщения от samana
  № 2  
Ответить с цитированием
samana
 
Аватар для samana

блогер
Регистрация: Mar 2008
Адрес: Днепропетровск
Сообщений: 1,783
Записей в блоге: 3
Вот этот шаблон всегда мне помогает:
Код AS3:
[Embed(source = '../lib/winter.ttf',fontName='имя',embedAsCFF='false')] public var winterFont:Class;
 
var tf:TextField = new TextField();
tf.embedFonts = true;
tf.defaultTextFormat = new TextFormat("имя", 15, 0);

Старый 20.06.2011, 21:20
GooDMAGE вне форума Посмотреть профиль Отправить личное сообщение для GooDMAGE Найти все сообщения от GooDMAGE
  № 3  
Ответить с цитированием
GooDMAGE

Регистрация: Jun 2011
Сообщений: 16
Хм.... шас попробую!
что за путь? "../lib/winter.ttf"? lib - это библиотека?

Старый 20.06.2011, 21:39
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 4  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
просто путь
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 20.06.2011, 21:53
GooDMAGE вне форума Посмотреть профиль Отправить личное сообщение для GooDMAGE Найти все сообщения от GooDMAGE
  № 5  
Ответить с цитированием
GooDMAGE

Регистрация: Jun 2011
Сообщений: 16
Хм... модифицировал код
Код AS3:
package bin.Text 
{
	import flash.display.MovieClip;
	import flash.text.*;
	/**
	 * ...
	 * @author GooDMAGE
	 */
	public class Text extends MovieClip
	{
		[Embed (source = 'fonts\visitor1.ttf', fontName = 'Visitor', embedAsCFF = 'false')] public var visitor_font:Class;
 
		//Vars
		private var Name:TextField;
 
		public function Text()
		{	
 
		}
 
		public function TEXT(TexT:String, cX:int, cY:int):void
		{
			Name = new TextField;
			Name.embedFonts = true;
			Name.defaultTextFormat = new TextFormat("Visitor", 15 , 0);
			Name.antiAliasType = AntiAliasType.ADVANCED;
			Name.selectable = false;
			Name.type = "dynamic";
			Name.autoSize = TextFieldAutoSize.CENTER;
			Name.text = TexT;
                        Name.x = cX;
			Name.y = cY;
			Name.maxChars = 15;
			addChild(Name);
		}
 
	}
 
}
Вызываю в основном классе _text.TEXT("test", 100, 200);
текст не видно =( Где на сей раз ошибка

Добавлено через 18 часов 11 минут
Может кто нибудь сделать исходник со встраиванием шрифта для FD и скомпилированным на CS3?
Заранее спасибо =)


Последний раз редактировалось GooDMAGE; 21.06.2011 в 16:05.
Старый 21.06.2011, 16:19
tsarapkabel вне форума Посмотреть профиль Отправить личное сообщение для tsarapkabel Найти все сообщения от tsarapkabel
  № 6  
Ответить с цитированием
tsarapkabel
 
Аватар для tsarapkabel

Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
Код AS3:
package {
 
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.TimerEvent;
	import flash.text.*;
	import flash.utils.Timer;
 
	public class TextRotation extends Sprite {
 
		[Embed(source = "C:/WINDOWS/Fonts/comic.ttf", fontFamily = "hzFamily", embedAsCFF="false")]
		private var comTxt:String;
		//Для плееров <10 нужно удалить свойство embedAsCFF="false"
 
		private var txtCanvas:Sprite = new Sprite();
 
		public function TextRotation() {
 
			var txt:TextField = new TextField();
			txt.embedFonts = true;
			txt.autoSize = TextFieldAutoSize.LEFT;
			txt.border = true;
 
			var txtFmt:TextFormat = new TextFormat(); //Создаём формат для задания шрифта
			txtFmt.font = "hzFamily";
			txtFmt.size = 30;
			txt.defaultTextFormat = txtFmt; //Устанавливаем формат для textField
			txt.text = "fasdаффвыаsdfasdf";
 
			txtCanvas.x = txtCanvas.y = 350;
 
			txtCanvas.addChild (txt);
			this.addChild(txtCanvas);
 
			var timer:Timer = new Timer (16);
			timer.addEventListener (TimerEvent.TIMER, onTimer, false, 0, true);
			timer.start();
		}
 
		private function onTimer (event:TimerEvent):void {
			if (txtCanvas.rotation <= 360) txtCanvas.rotation += 1;
			else txtCanvas.rotation -= 360;
		}
	}
}
__________________
Нормально делай — нормально будет!

Старый 21.06.2011, 17:12
GooDMAGE вне форума Посмотреть профиль Отправить личное сообщение для GooDMAGE Найти все сообщения от GooDMAGE
  № 7  
Ответить с цитированием
GooDMAGE

Регистрация: Jun 2011
Сообщений: 16
Сколько не изменял все равно не появляется текст =\
вот код:
Код AS3:
package bin.Text 
{
	import flash.display.MovieClip;
	import flash.text.*;
	/**
	 * ...
	 * @author GooDMAGE
	 */
	public class Text extends MovieClip
	{
		[Embed (source = 'visitor.ttf', fontName = 'Visitor', embedAsCFF = 'false')] public var visitor_font:Class;
 
		public function Text()
		{	
			TEXT("test", 10 , 10);
		}
 
		public function TEXT(TexT:String, cX:int, cY:int):void
		{
			var Name:TextField = new TextField;
			Name.embedFonts = true;
			Name.defaultTextFormat = new TextFormat("Visitor", 15 , 0xFFFFFF);
			Name.antiAliasType = AntiAliasType.ADVANCED;
			Name.selectable = false;
			Name.type = "dynamic";
			Name.autoSize = TextFieldAutoSize.CENTER;
			Name.text = TexT;
            Name.x = cX;
			Name.y = cY;
			Name.maxChars = 15;
			addChild(Name);
		}	
	}
 
}
Шрифт лежит в одной папку с классом Text

Старый 21.06.2011, 17:28
tsarapkabel вне форума Посмотреть профиль Отправить личное сообщение для tsarapkabel Найти все сообщения от tsarapkabel
  № 8  
Ответить с цитированием
tsarapkabel
 
Аватар для tsarapkabel

Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
Твой код работает.

Код AS3:
package {
 
	import flash.display.MovieClip;
	import flash.text.*;
 
	public class Text extends MovieClip {
 
		[Embed (source = 'visitor.ttf', fontName = 'Visitor', embedAsCFF = 'false')]
		public var visitor_font:Class;
 
		public function Text() {	
			TEXT("test", 10 , 10);
		}
 
		public function TEXT(TexT:String, cX:int, cY:int):void {
			var Name:TextField = new TextField(); //сюда добавил скобки
			Name.embedFonts = true;
			Name.defaultTextFormat = new TextFormat("Visitor", 15 , 0xFF00FF); //здесь был белый
			Name.antiAliasType = AntiAliasType.ADVANCED;
			Name.selectable = false;
			Name.type = "dynamic";
			Name.autoSize = TextFieldAutoSize.CENTER;
			Name.text = TexT;
			Name.x = cX;
			Name.y = cY;
			Name.maxChars = 15;
			addChild(Name);
		}	
	}
}
__________________
Нормально делай — нормально будет!


Последний раз редактировалось tsarapkabel; 21.06.2011 в 17:35.
Старый 21.06.2011, 17:33
GooDMAGE вне форума Посмотреть профиль Отправить личное сообщение для GooDMAGE Найти все сообщения от GooDMAGE
  № 9  
Ответить с цитированием
GooDMAGE

Регистрация: Jun 2011
Сообщений: 16
а у меня нет О_О
добавил скобки все равно текст не появился =(

Старый 21.06.2011, 17:35
tsarapkabel вне форума Посмотреть профиль Отправить личное сообщение для tsarapkabel Найти все сообщения от tsarapkabel
  № 10  
Ответить с цитированием
tsarapkabel
 
Аватар для tsarapkabel

Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
Если ты прочитал мои комментарии, давай описание ошибки.
__________________
Нормально делай — нормально будет!

Создать новую тему Ответ Часовой пояс GMT +4, время: 15:53.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 15:53.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.