2013-08-21 1 views
1

애니메이션을 할 때 충분히 부드럽게 보이는 TextField를 만들려고합니다. 유일한 옵션은 부드럽게 애니메이션 된 텍스트 필드를 얻을 수있을 때 antiAliasType 속성을 AntiAliasType.NORMAL로 설정하는 것입니다. 하지만 텍스트를 조금 두껍게 만들기 위해 텍스트 앤티 앨리어싱을 사용하고 싶습니다. 그래서 antiAliasType을 AntiAliasType.ADVANCED로 변경합니다. 그 후 애니메이션이되면 텍스트 필드가 급격하게 보입니다 (글리프가 픽셀 그리드에 스냅되는 것처럼 보입니다). textField의 gridFitType 속성 변경은 의미가 없습니다.사용자 정의 앤티 앨리어싱을 사용하여 애니메이션 텍스트 필드를 부드럽게 만드는 방법은 무엇입니까?

antiAliasType이 AntiAliasType.ADVANCED로 전환 될 때 아무도 부드러운 텍스트 필드 애니메이션을 얻지 못했습니까?

var p:TextField = new TextField(); 
var font:Font = new Font1XXX(); 
// font is embedded int the library and exported as Font1XXX class 

var tfor:TextFormat = new TextFormat(); 
tfor.font = font.fontName; 
tfor.size = 15; 
tfor.color = 0xFFFFFF; 
p.defaultTextFormat = tfor; 
p.autoSize = TextFieldAutoSize.LEFT; 
p.antiAliasType   = AntiAliasType.ADVANCED; 
p.gridFitType = GridFitType.NONE; 
// change to GridFitType.NONE does not make any sense; 

p.selectable = false; 
p.embedFonts = true; 
p.text = "HELLO WORLD"; 
addChild(p); 

답변

1

하는 비트 맵에 텍스트 필드를 그릴, 선택 가능한 텍스트를 필요로 비트 맵을 추가하지 않으면 :

여기

내 짧은 코드 (중 TLF 텍스트 필드로 전환 할 때 불안해 텍스트가 발생합니다) 텍스트 필드 대신 스테이지.

+0

그래,이 해결 방법은 나를 위해 작동합니다. 감사. 그러나 표준 기능이 있고 gridFitType이 아무런 영향을 미치지 않는 이유는 무엇입니까? – DigitalD

+0

나는 대답 할 수 있었으면 좋겠지 만 솔직히 나는 잘 모르겠다. gridfittype은 imho를 사용해야한다. 텍스트 작업은 항상 두통을 줬습니다. – Fygo

1

플래시의 모든 텍스트가 전체 픽셀로 스냅되어 결과적으로 애니메이션이 고르지 않게됩니다.

"정적 텍스트"를 모양으로 변환하고 무비 클립 안에 넣거나 텍스트를 비트 맵에 "복사"하여 해당 비트 맵에 애니메이션을 적용하는 것이 좋습니다. 어떤 유형의 애니메이션을 사용 하느냐에 따라 최상의 시각적 경험을 위해서는 다른 솔루션이 필요합니다.

예를 들어, 텍스트를 스크롤하는 경우 비트 맵으로 캐시 한 다음 축을 따라 이동하는 것이 가장 좋습니다.

텍스트 확대/축소 (크기가 크게 조정 된 경우). 이것은 빤다, 나는 시각적 인공물없이 이것을 해결하는 좋은 방법을 찾지 못했다. 가장 좋은 해결책은 일반적으로 텍스트를 다른 클립으로 복사하고 텍스트를 숨긴 다음 빠르게 애니메이션을 적용하거나 다른 효과로 덮으려고하기 때문에 텍스트 자체에서 집중을 제거합니다.

+0

감사합니다. Daniel. 불행히도 동적 텍스트 필드가 필요합니다. 텍스트 필드의 antialiasType이 AntiAlias.NORMAL로 설정된 경우 텍스트가 들쭉날쭉하게 보이지 않습니다. antialiasType이 AntiAlias.ADVANCED로 설정된 경우 텍스트 필드의 비트 맵으로 캐싱해도 들쭉날쭉 한 부분이 제거되지 않습니다. x 및 y로 텍스트 필드를 프로그래밍 방식으로 이동시키고 있습니다. – DigitalD

+0

"비트 맵으로 캐시"에는 많은 단점이 있습니다. 항목의 크기를 조정할 수는 없습니다.하지만 텍스트 필드의 비트 맵 복사본을 가져 와서 크기를 조정할 수는 있습니다. –

관련 문제