1. 플래시에서 동적으로 TextFiled를 생성하여 embedfont를 적용 시켜야 했다.
문제는 Libray에 New font로 embed 폰트를 등록후 등록시 입력한 이름을 적용시키니..
플래시 스테이지에 폰트가 나타나지 않는다.
문제는 플래시에 등록된 embed폰의 이름의 문제였다.
즉, 입력한 embed폰트이름과 실제 플래시에서 적용할 수 있는 이름이 다른것.
2. 해결방법.
1) 먼저 Library에서 New font로 embed 폰트 하나를 등록한다.
그리고 AS3 로 해당 등록된 폰트를 검색해 본다..
var arr:Array = Font.enumerateFonts();
for(var i:int=0; i<arr.length; i++){
var f:Font = arr[i];
trace(f.fontName);
}
//결과 : YDIWebYGO140
New font로 등록한 WY140* 같은 이름과 전혀 다르다.
위 이름을 아래처럼 생성시킬 textField에 적용시킨다.
var tf:TextField = new TextField();
var _fm:TextFormat = tf.getTextFormat();
_fm.size = 14;
_fm.color = 0xFF3300;
//_fm.font = "WY140";
_fm.font = "YDIWebYGO140";
tf.text = "모냐고요..흠";
tf.name = "cc";
tf.embedFonts = true;
tf.x = 100;
tf.y = 100;
tf.setTextFormat(_fm);
this.addChild(tf);
=> 적용된 결과를 확인 할 수 있다.
-----------------------------------------------------------------------------------------------------------------
## 아래는 참고될만한 자료 펌.
-----------------------------------------------------------------------------------------------------------------
안녕하세요
FlashPlayer 10으로 업데이트 되면서 기존에 잘 돌아가던 메뉴나 기능들이
갑자기 안된다는 연락을 받고 있답니다.
이번엔 메뉴 텍스트가 갑자기 안보이는 현상이 발생해서 텍스트 필드에서 뭐가 바뀌었나
살펴보다가 몇가지 바뀐사항을 발견하고 이렇게 글을 남겨봅니다.
※ 아직까지 일반 텍스트에서는 문제를 발견하지 못하였고 임베드 폰트를 사용한 텍스트 필드에서 문제를 발견했습니다.
■ 임베드 폰트명의 변화
임베트 폰트를 할때 폰트명을 적어주게 되는데 여기서 적어주는 폰트명이 틀려졌습니다. ;;;
만약 폰트명을 직접 입력해 주신 분들이라면 CS4에서 다시 컴파일할때 조심^^
테스트는 간단하게 Libary - New Font를 이용해서 폰트를 등록해준 후 간단하게 등록된 폰트명을 찍어보았습니다.
|
○ 결과
Flash CS3에서 컴파일 |
Flash CS4에서 컴파일 |
|
|
음냐 산돌광수 B와 윤고딕을 해봤는데 위와같이 이름이 틀려지네요
아직 영문폰트는 테스트를 못해봤습니다.
■ 텍스트의 크기값의 변화
TextField 속성에 보면 텍스트의 높이값을 알수 있는 속성인 textHeight 속성이있습니다.
이것을 계산해주는 부분이 약간 바뀐것 같습니다.
|
Flash CS3에서 컴파일 |
Flash CS4에서 컴파일 |
|
|
소수점이 붙어나오는것을 확인할 수 있엇습니다.
자 이제 안된다고 업체에서 연락오면 한번 의심해 보시길..
'Adobe Air & Flex > Adobe News' 카테고리의 다른 글
[Adobe RIA 소식]OSMF(Open Source Media Framework) 오픈 소스 공개 (0) | 2010.03.12 |
---|---|
Stratus Developer Key (Stratus 개발을 위한 개발키 발급) (0) | 2010.03.08 |