如何让我的指南捕捉到Flash(CS3)中的像素?

时间:2009-06-10 10:10:39

标签: flash alignment

我正在尝试在Flash舞台上使用指南以更好地对齐对象,但如何让指南捕捉到像素?有一半时间他们最终会像298.4一样,当我希望它们很好地捕捉到每个像素时,即。 298.0

我正在使用Flash CS3,并且我已启用所有捕捉选项。我在某处读到按住 shift 会将指南捕捉到像素,但这似乎不起作用。

1 个答案:

答案 0 :(得分:3)

有些人可能不会认为这个问题与stackoverflow有关,因为它与编程无关,或者它很容易。但它可能会变得令人讨厌:)

反正 如果您转到编辑对齐 CMD + / (MAC)或 Ctrl + / (PC))并设置:

  1. Snap Align
  2. 指向指南
  3. 对齐像素
  4. 打开并打开网格(右键单击文档中的空白区域,然后转到网格>显示网格 )。您可能希望将网格编辑为1 x 1而不是默认的18 x 18像素。

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

    让我知道如果你打算做一些像素艺术,我可以推荐一些方便的工具,否则如果它只是设置一个清晰的布局,this扩展将是方便的,但链接不幸的是不行。

    幸运的是,写起来很容易。 我刚刚制作了一个新的JSFL文档(例如RoundPixelValues.jsfl) 并将其保存在$ Flash / 命令文件夹中,其中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文件中即可保存。该选项应出现在您的命令菜单中。优点是,如果您经常需要,也可以设置键盘快捷键。

    Goodluck!