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

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

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

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
По умолчанию EmbedFonts FamilyFonts

Здравствуйте.
Возникают проблемы с импортом шрифтов одного семейства. (MyriadPro)
В нем есть несколько начертаний.
Bold, Bold Condensed, Bold Condensed Italic, Condensed Italic, Condensed и так далее. Если импортироать 1 из них, отображается верно, если импортировать несколько, начитаются артефакты. Где вместо жирного пишет курсивом, вместо курсива жирным и собственными силами не могу побороть.
Что не так?
Код AS3:
	public class FontMng {
 
		[Embed(source="/asset_font/MyriadPro-BoldCond.otf", fontFamily="MBC", mimeType="application/x-font", embedAsCFF = 'false')]
		public static  const Myriad2ProBoldIT:Class;
 
		[Embed(source="/asset_font/MyriadPro-Bold.otf", fontFamily="MB", mimeType="application/x-font", embedAsCFF = 'false')]
		public static  const Myriad2ProBold:Class;
 
		[Embed(source="/asset_font/MyriadPro-Cond.otf", fontFamily="MC", mimeType="application/x-font", embedAsCFF = 'false')]
		public static  const Myriad2ProC:Class;
 
		[Embed(source="/asset_font/MyriadPro-BoldCondIt.otf", fontFamily="MBCI", mimeType="application/x-font", embedAsCFF = 'false')]
		public static  const Myriad2ProCI:Class;/**/
 
		public function FontMng() {
			// constructor code
			traceFont();
		}
 
 
 
		public function fontInit(evt:Event):void {
			//fontClass:Class = evt.currentTarget.applicationDomain.getDefinition("testFont_myriadprod1") as Class;
 
			var _arr		:Array	= Font.enumerateFonts();
			for each( var i in _arr){
 
				trace(i.fontName);
 
				/*
				trace('font');
				for ( var id in i)
				trace(id+" >> "+i[id]);*/
			}
		}
 
		public function setStyle(txt:TextField,fontName:String, size:uint = 0, color:Number = -1, align:String = 'left'):void
		{
			trace('SET '+fontName);
 
			txt.embedFonts = true;
			txt.selectable = false;
 
			txt.autoSize = align;
 
			var myHeadingFormat:TextFormat = new TextFormat(fontName);
 
			if (color>=0) {
				myHeadingFormat.color = color;
			}
 
			if (size) {
				myHeadingFormat.size = size;
			}
 
			txt.setTextFormat(myHeadingFormat);
			txt.defaultTextFormat = myHeadingFormat;
		}
__________________
return this...

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

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Ничего не понял. А зачем fontFamily то разный?

Вот пример импорта простого начертания и болда
Код AS3:
public class Main extends Sprite 
	{
		[Embed(source = "../lib/SegoeWP.ttf"
			,fontFamily	= 'SegoeWP'
			,fontStyle	= 'normal'
			,fontWeight	= 'normal'
			,embedAsCFF	= 'false'
			,mimeType	= 'application/x-font-truetype'
		)] 
		private const SegoeWP:Class;
 
		[Embed(source = "../lib/SegoeWP-Bold.ttf"
			,fontFamily	= 'SegoeWP'
			,fontStyle	= 'normal'
			,fontWeight	= 'bold'
			,embedAsCFF	= 'false'
			,mimeType	= 'application/x-font-truetype'
		)] 
		private const SegoeWPBold:Class;
fontStyle может быть normal или italic. У тебя два семейства - Простой мириад и мириад конденсед. Второе семейство у тебя представлено тремя начертаниями - простое, болд и болд италик.
__________________
Reality.getBounds(this);

Старый 05.06.2013, 19:52
AlexCooper вне форума Посмотреть профиль Отправить личное сообщение для AlexCooper Найти все сообщения от AlexCooper
  № 3  
Ответить с цитированием
AlexCooper
 
Аватар для AlexCooper

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
Очевидно нужно внимательней прочитать про шрифты. То-есть мне нужно импортировать два семейства. Вопрос только каких, пользоваться я так понял нужно "тегами" "<i> <b>".
__________________
return this...

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

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Ну значит у Вас будет нужен болд, италик и италик болд (ну и регуляр, то есть нормальное начертание, ни болд ни италик).
Condensed это не стиль, это подсемейство, так же как Ариал есть простой, Narrow и Black, при этом два первых могут иметь 4 стиля начертания — нормальное, болд, италик и италик-болд, а Black это градация толщины (толще чем болд) и соответственно может иметь два стиля — регуляр и италик.
Нет ни HTML-тегов, ни CSS-свойств, чтобы обозначить Condensed или Narrow или Extra Light — это просто "другой шрифт", то есть другое семейство. И импортироваться все представители этого семейства должны с одинаковым именем, но разными атрибутами веса и стиля (болд и италик).
Если вы хотите использовать в текстах то просто Myriad, то Myriad Condensed, вам придется указывать именно смену шрифта. А будет в тексте болд, италик или нормал — это уже стиль, задаваемый тегами <b><i> или CSS или текстформатом.

Вот сколько всего начертаний в Myriad Pro. А стилей текстформата — только 4. Вслед за HTML и CSS флэшплеер не различает такие стили толщины, как Light, Semibold или Black (а вообще в типографике есть и еще более тонкие ступени, Median, Extra Light, Extra Bold, Extra Black например) — только регуляр и болд. Поэтому нет другого способа использовать все многообразие семейства, кроме как импортировать эти шрифты как отдельный fontFamily.

Название: myriad_1.gif
Просмотров: 584

Размер: 22.7 Кб
__________________
Reality.getBounds(this);


Последний раз редактировалось Wolsh; 06.06.2013 в 00:57.
Старый 06.06.2013, 00:48
AlexCooper вне форума Посмотреть профиль Отправить личное сообщение для AlexCooper Найти все сообщения от AlexCooper
  № 5  
Ответить с цитированием
AlexCooper
 
Аватар для AlexCooper

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
Большое человеческое спасибо. Я уже голову сломал и какие только велосипеды не пытался "выпустить" что-бы все ровно поехало, а оказалось кручу руль вместо педалей)
__________________
return this...

Старый 09.06.2013, 12:42
AlexCooper вне форума Посмотреть профиль Отправить личное сообщение для AlexCooper Найти все сообщения от AlexCooper
  № 6  
Ответить с цитированием
AlexCooper
 
Аватар для AlexCooper

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
Все же не удается мне. Простите за наглость "сделай за меня" прилаживаю fla (CS4), окажите помощь в импорте шрифтов. Заранее безумно благодарен.
Вложения
Тип файла: rar FontEmbded.rar (727.0 Кб, 79 просмотров)
__________________
return this...

Старый 09.06.2013, 15:20
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 7  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Код AS3:
package {
 
	import flash.text.Font;
	import flash.text.TextField;
	import flash.text.TextFormat;
 
	import flash.display.MovieClip;
 
	public class FontEmbded extends MovieClip {
 
		/*    REGULAR                                 */
		[Embed(source="../lib/MyriadPro-Regular.otf"
			   ,fontFamily= 'MB'
			   ,fontStyle = 'normal'
			   ,fontWeight	= 'normal'
			   ,mimeType="application/x-font"
			   ,embedAsCFF = 'false'
		)]
		public static  const Myriad2Pro:Class;
 
 
		/*    BOLD                                    */
		[Embed(source="../lib/MyriadPro-Bold.otf"
			   ,fontFamily= 'MB'
			   ,fontStyle = 'normal'
			   ,fontWeight	= 'bold'
			   ,mimeType="application/x-font"
			   ,embedAsCFF = 'false'
		)]
		public static  const Myriad2ProBold:Class;
 
		/*   ITALIC                                   */
		[Embed(source="../lib/MyriadPro-It.otf"
			   ,fontFamily='MB'
			   ,fontStyle = 'italic'
			   ,fontWeight	= 'normal'
			   ,mimeType="application/x-font"
			   ,embedAsCFF = 'false'
		)]
		public static  const Myriad2ProIT:Class;/*!!!*/
 
		/*   BOLD + ITALIC                            */
		[Embed(source="../lib/MyriadPro-BoldIt.otf"
			   ,fontFamily= 'MB'
			   ,fontStyle = 'italic'
			   ,fontWeight	= 'bold'
			   ,mimeType= 'application/x-font'
			   ,embedAsCFF = 'false'
		)]
		public static  const Myriad2ProBoldIT:Class;
 
		/*   CONDENSED                                          */
		[Embed(source="../lib/MyriadPro-Cond.otf"
			   ,fontFamily="MC"
			   ,fontStyle = 'normal'
			   ,fontWeight	= 'normal'
			   ,mimeType="application/x-font"
			   ,embedAsCFF = 'false'
		)]
		public static  const Myriad2ProC:Class;
 
		/*    CONDENSED BOLD                                    */
		[Embed(source="../lib/MyriadPro-BoldCond.otf"
			   ,fontFamily= 'MC'
			   ,fontStyle = 'normal'
			   ,fontWeight	= 'bold'
			   ,mimeType="application/x-font"
			   ,embedAsCFF = 'false'
		)]
		public static  const Myriad2ProCondBold:Class;
 
		/*   CONDENSED ITALIC                                   */
		[Embed(source="../lib/MyriadPro-CondIt.otf"
			   ,fontFamily='MC'
			   ,fontStyle = 'italic'
			   ,fontWeight	= 'normal'
			   ,mimeType="application/x-font"
			   ,embedAsCFF = 'false'
		)]
		public static  const Myriad2ProCondIT:Class;/*!!!*/
 
		/*   CONDENSED BOLD + ITALIC                            */
		[Embed(source="../lib/MyriadPro-BoldCondIt.otf"
			   ,fontFamily= 'MC'
			   ,fontStyle = 'italic'
			   ,fontWeight	= 'bold'
			   ,mimeType= 'application/x-font'
			   ,embedAsCFF = 'false'
		)]
		public static  const Myriad2ProCondBoldIT:Class;
 
		public function FontEmbded() {
 
			fontInit();
 
			var txtPro:TextField = new TextField();
			txtPro.width = 500;
			txtPro.height = 40;
			txtPro.embedFonts = true;
			addChild(txtPro);
			txtPro.x = 20;
			txtPro.y = 50;
			txtPro.defaultTextFormat = new TextFormat("MB", 26);
			txtPro.htmlText = "MyriadPro <b>Bold</b> <i>Italic</i> <b><i>BoldItalic</i></b>";
 
			var txtCond:TextField = new TextField();
			txtCond.width = 500;
			txtCond.height = 40;
			txtCond.embedFonts = true;
			addChild(txtCond);
			txtCond.x = 20;
			txtCond.y = 150;
			txtCond.defaultTextFormat = new TextFormat("MC", 26);
			txtCond.htmlText = "MyriadPro Condensed <b>Bold</b> <i>Italic</i> <b><i>BoldItalic</i></b>";
		}
 
		public function fontInit():void {
			var _arr :Array	= Font.enumerateFonts();
			for each( var i:Font in _arr){
				trace(i.fontName);
			}
		}
	}
 
}
EmbeddingFontFamilies.swf   (629.4 Кб)
Вложения
Тип файла: swf EmbeddingFontFamilies.swf (629.4 Кб, 118 просмотров)
__________________
Reality.getBounds(this);

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

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
Еще раз огромнейшее спасибо)
__________________
return this...

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

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

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


 


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


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