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

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

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

Регистрация: Nov 2009
Сообщений: 11
По умолчанию Так как все таки встраивать шрифты?

Добрый день читатели и отвечатели этого форума.
Я начинающий программер. на днях столкнулся с проблеммой добавления своих шрифтов в проэкт. Перелопатил весь поиск форума и поиск гугла. так ничего и не понял, только запутался. перепробовал все что предлагали - ничего не получилось.
1. пробовал через библиотеку. т.е. new Font ->linkage properties-> export for actionscript
результата ноль. +читал что это очень плохо и все дела...
2. пробовал [Embed... разными способами. хз толь не туда вставляю толи что то не так пишу - не высвечивается.
3. пробовал через текстовое поле(но если шрифта в библиотеке нет то кнопа ембед не появляется и возник вопрос почему это не через библиотеку???) - тоже ничего не вышло.
и везде пишут типа "так не правильно", а как правильно не пишет никто.

в общем я в отчаянии. напишите пожалуйста как для "барана". как встраивать шрифты? по шагам? какие есть способы? и как ими пользоватся? спасибо. извините за повторение уже обсужденного вопроса.

Юзаю Abode Flash CS4

Старый 03.01.2010, 20:03
Alex Lexcuk вне форума Посмотреть профиль Отправить личное сообщение для Alex Lexcuk Посетить домашнюю страницу Alex Lexcuk Найти все сообщения от Alex Lexcuk
  № 2  
Ответить с цитированием
Alex Lexcuk

блогер
Регистрация: Mar 2008
Адрес: Донецк_city
Сообщений: 1,094
Записей в блоге: 5
так попробуйте
Код AS3:
package  
{
	import flash.display.*;
	import flash.text.*
	/**
	 * ...
	 * @author http://www.murmadillo.tut.su/
	 */
	public class DocFontUse extends Sprite
	{
			[Embed(source='ACADEMY.TTF', fontName='vampire_ttf')]
			public static var Geisha_ttf:Class;
 
			/*[Embed(source = 'C:/WINDOWS/Fonts/GARA.TTF', fontName = '_Garamond')]
			public var _Garamond:Class;
			*/
		public function DocFontUse() 
		{
 
			//смотрим все фонты
			//var allFonts:Array = Font.enumerateFonts(true);
			//allFonts.sortOn("fontName", Array.CASEINSENSITIVE);
			Font.registerFont(Geisha_ttf);
			//смотрим ембеденные фонты
			var embeddedFonts:Array = Font.enumerateFonts(false);
			//embeddedFonts.sortOn("fontName", Array.CASEINSENSITIVE);
			trace(embeddedFonts);
			//trace показывает
			//object Font],[object DocFontUse_Geisha_ttf]
 
 
			var font:DocFontUse_Geisha_ttf = new DocFontUse_Geisha_ttf();
			var txt_fmt:TextFormat=new TextFormat();
			txt_fmt.font=font.fontName;
			txt_fmt.size = 25;
			var txt:TextField=new TextField();
			txt.autoSize=TextFieldAutoSize.LEFT;
			txt.defaultTextFormat=txt_fmt;
			txt.embedFonts=true
			txt.htmlText ='Меню      Reset';
			txt.selectable = true;
			txt.rotation = 45;
			txt.x = 100;
			txt.y = 100;
			addChild(txt);
 
		}
 
	}
 
}
__________________
Гоночка

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

Регистрация: Oct 2006
Адрес: Волгодонск
Сообщений: 182
добавляете ручками текстовое поле, в нем че-нить пишете необходимым шрифтом.
В свойствах этого текстового поля ставим динамик текст, а в характер эмбединг - выбираем необходимые для внедрения символы.
Далее в скрипте, для програмного текстового поля ставим этот шрифт и ембедФонтс=тру.

Старый 04.01.2010, 01:37
dj_Kayot вне форума Посмотреть профиль Отправить личное сообщение для dj_Kayot Найти все сообщения от dj_Kayot
  № 4  
Ответить с цитированием
dj_Kayot

Регистрация: Nov 2009
Сообщений: 11
Alex Lexcuk
На строке
Код AS3:
Font.registerFont(Geisha_ttf);
мне выдавало ошибку: попытка использовать не объявленный класс. и откуда берется DocFontUse_Geisha_ttf???

GFreemen пасиба, помог. тока еще один вопрос. шрифт большой затирается немного. можно полечить?

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

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Товарищ murmadillo слегка перемудрил как мне кажется. Я обычно вставляю так:
Код:
//// EMBED FONT FILE
[Embed(source='../../../../../../lib/obla.ttf', fontName='obla', mimeType='application/x-font-truetype')]
public var OblaFont:Class;
И далее использую просто имя -
Код:
_textFMT = new TextFormat();
_textFMT.font = "obla";
_textFMT.size = 22;
__________________
Reality.getBounds(this);

Старый 05.01.2010, 00:22
Alex Lexcuk вне форума Посмотреть профиль Отправить личное сообщение для Alex Lexcuk Посетить домашнюю страницу Alex Lexcuk Найти все сообщения от Alex Lexcuk
  № 6  
Ответить с цитированием
Alex Lexcuk

блогер
Регистрация: Mar 2008
Адрес: Донецк_city
Сообщений: 1,094
Записей в блоге: 5
Цитата:
Сообщение от dj_Kayot Посмотреть сообщение
Alex Lexcuk
На строке
Код AS3:
Font.registerFont(Geisha_ttf);
мне выдавало ошибку: попытка использовать не объявленный класс. и откуда берется DocFontUse_Geisha_ttf???

GFreemen пасиба, помог. тока еще один вопрос. шрифт большой затирается немного. можно полечить?
dj_Kayot, а вы можете просто во флеш cs4 сделать документ класс DocFontUse скачать с интернета какой-нибуть ttf шрифт и тупо скопипасть тот код,
что я дал и просто попробовать, если у вас Font.registerFont(Geisha_ttf) выдал ошибку, то это просто катастрофа..., а DocFontUse_Geisha_ttf берется, как я уже и писал
Код AS3:
			//смотрим ембеденные шрифты
			var embeddedFonts:Array = Font.enumerateFonts(false);
			//embeddedFonts.sortOn("fontName", Array.CASEINSENSITIVE);
			trace(embeddedFonts);
			//trace показывает
			//object Font],[object DocFontUse_Geisha_ttf]
его показывает trace, если мой компилятор так встраивает шрифты, то что я могу.
__________________
Гоночка

Старый 08.08.2013, 13:49
Snarkus вне форума Посмотреть профиль Отправить личное сообщение для Snarkus Найти все сообщения от Snarkus
  № 7  
Ответить с цитированием
Snarkus

Регистрация: Aug 2013
Сообщений: 2
Tip Решено!

Специально зарегистрировался чтобы поделиться находкой с сообществом.
После долгих мытарств найдено на просторах англицких форумов следующее решение:
Код AS3:
[Embed(source="SomeFont.ttf", fontName="sfont", embedAsCFF="false")]
public var someFont:Class;
и далее все как в мануалах
Судя по всему, глюк чисто FlashDevelop, его версия компилятора "ду сомфинг рон" .
Этот false "правит" баг в FlashDevelop, после этого все работает!
Спасибо flasher.ru и лично mooncar за быстрое решение проблемы с публикацией поста!

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

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Три года назад не было никакого CFF.
И никакого глюка, никакого бага в FD нет. Формат CFF появился вместе с TLF и FTE, а вместе с ним и обязательная опция в [Embed] для компилятора.
__________________
Reality.getBounds(this);

Старый 08.08.2013, 22:13
Snarkus вне форума Посмотреть профиль Отправить личное сообщение для Snarkus Найти все сообщения от Snarkus
  № 9  
Ответить с цитированием
Snarkus

Регистрация: Aug 2013
Сообщений: 2
Простите, это все мой малый опыт разработки на AS3, на форуме решения не нашел, специально поднял ветку адобовского форума где нашел : тут пишут в частности:

"just add this in the embed tag and it works fine!
All the script was correct!
embedAsCFF="false"
[Embed(source="c:/windows/fonts/verdana.ttf", fontFamily="Verdana", embedAsCFF="false")]"
и сразу за ним ответ:
"Oh, I see. This is SDK issue. You didn't have to do that in versions prior to 4. I am using 3.5"

Да, не FD ошибка, тут я подзабыл, просто в ветке о нем упоминалось.

Что вижу то пою, мне помогло, в других вариациях не срабатывало, данного решения не нашел более нигде, возможно плохо искал, если это поможет кому-то, и то хорошо.

За наводку с TLF спасибо, прочел.

PS: дата публикации на адоб форуме Nov 15, 2010, что примерно 3 года назад и есть.

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

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Угу, а эта тема от 3 января. Почти год разницы. Но дело даже не в этом — три года это неслабый срок для флэш-плеера, а для форума и подавно. Сейчас про embedAsCFF каждый ребенок знает — уже "примерно 3 года" без этого аттрибута шрифт в проект вкомпиливается как CFF по-умолчанию, а TLF до сих пор пользуются единицы.
Не надо таких некропостингов впредь, хорошо? ))
И добро пожаловать.
__________________
Reality.getBounds(this);

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

Теги
embedfonts , sharedFonts , встроеные шрифты

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

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


 


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


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