1

I'm trying to use guides on my Flash stage to better align objects, but how do I get the guides to snap to pixels? Half the time they end up being like 298.4, when I want them nicely snapped on each pixel, ie. 298.0.

I'm using Flash CS3 and I have all the snapping options turned on. I read somewhere that holding down shift will snap guides to pixels, but this doesn't seem to work.

4

1 回答 1

3

有些人可能不认为这个问题与 stackoverflow 相关,因为它与编程无关,或者它是一个非常简单的问题。虽然它可能会变得令人讨厌:)

无论如何,如果你去编辑捕捉CMD + / (MAC) 或Ctrl + / (PC) )并设置:

  1. 对齐对齐
  2. 对齐参考线
  3. 对齐像素

打开打开网格(右键单击文档中的空白区域并转到Grid > Show Grid)。您可能希望将网格编辑为 1 x 1 而不是默认的 18 x 18 像素。

如果您不打开网格,您可能会捕捉到半像素 (.5 ) 值,我假设您想避免这种情况。

如果你打算做一些像素艺术,请告诉我,我可以推荐一些方便的工具,否则如果你设置的只是一个清晰的布局,这个扩展会很方便,但不幸的是链接不起作用。

幸运的是,这是一件很容易编写的事情。我刚刚制作了一个新的 JSFL 文档(例如 RoundPixelValues.jsfl)并将其保存在 $Flash/ Commands文件夹中,其中 Flash 是您的应用程序/程序文件文件夹。

您可能可以用 3,4 行代码编写整个内容,但为了便于阅读,我将其扩展为 10 行:

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 文件中并保存即可。该选项应该出现在您的命令菜单中。优点是如果您经常需要,您还可以设置键盘快捷键。

祝你好运 !

于 2009-07-20T23:25:36.523 回答