2009-06-10 4 views
1

개체를보다 잘 정렬하기 위해 Flash 스테이지에서 가이드를 사용하려고하지만 가이드를 픽셀로 스냅하는 방법은 무엇입니까? 시간의 절반은 298.4처럼 끝납니다. 나는 그들을 각 픽셀에 멋지게 찍었 으면합니다. 298.0.가이드를 플래시 (CS3)의 픽셀에 맞추려면 어떻게해야합니까?

Flash CS3을 사용하고 있으며 모든 스냅 옵션이 켜져 있습니다. 나는 어딘가에 을 고정하면 가이드를 스냅 할 것이지만, 이것은 효과가없는 것처럼 보입니다.

답변

3

일부 사람들은 프로그래밍과 관련이 없거나 꽤 쉬운 문제이기 때문에 stackoverflow와 관련된이 질문을 고려하지 않을 수도 있습니다. 그것은 당신이 편집 스냅 (CMD +/ (MAC) 또는 Ctrl 키 +/ (PC))에 가면 :)하지만 어쨌든

, 을 괴짜 얻고 설정할 수 있습니다

  1. 스냅 정렬은
  2. 픽셀에 맞추기
  3. 스냅을 가이드하는

으로 바꿔 그리드을 켜기 (문서에서 빈 공간을 마우스 오른쪽 버튼으로 클릭하고 그리드> 그리드 표시)로 이동합니다. 그리드를 기본 18 x 18 픽셀 대신 1 x 1로 편집하고자 할 수 있습니다.

그리드를 켜지 않으면 반 화소 (.5) 값으로 스 내핑 될 수 있습니다.이 값은 피하려는 것으로 가정합니다.

일부 픽셀 아트를 할 계획이라면 알려주세요. 몇 가지 편리한 도구를 추천 할 수 있습니다. 그렇지 않으면 설정이 선명한 레이아웃 인 경우 this 확장 기능을 사용하면 편리하지만 링크는 유용하지 않습니다. 불행하게도.

다행히도 작성하기가 쉽습니다. 새 JSFL 문서 (예 : RoundPixelValues.jsfl) 을 $ Flash/명령 폴더에 저장했습니다. 여기에서 Flash는 응용 프로그램/프로그램 파일 폴더입니다.

당신은 아마 코드의 3,4 라인 전체를 쓸 수 있습니다,하지만 난 가독성을 위해 10 일에 그것을 밖으로 spead했습니다

var doc = fl.getDocumentDOM(); 
var timeline = doc.getTimeline(); 
var currentLayer = timeline.layers[timeline.currentLayer]; 
var currentFrame = currentLayer.frames[timeline.currentFrame]; 
var elements = currentFrame.elements; 
var elementsNum = elements.length; 
for(var i = 0 ; i < elementsNum ; i++){ 
    elements[i].x = Math.round(elements[i].x); 
    elements[i].y = Math.round(elements[i].y); 
} 

방금 ​​새로 만든 JSFL 파일의 코드를 붙여 저장 . 이 옵션은 명령 메뉴에 나타나야합니다. 장점은 자주 필요한 경우 키보드 단축키를 설정할 수도 있다는 것입니다.

Goodluck!

관련 문제