frederik

Forum Replies Created

Viewing 15 posts - 361 through 375 (of 531 total)
  • Author
    Posts
  • in reply to: Some Cosmetic RoboFont Enhancements #4232

    frederik
    Keymaster

    long post :)

    1) 2) yep, true that is handy, this is added in 1.3

    3) in 1.3 there will be a “Join Contours” in the contextual menu, and double click in the drawing tool to close the contour

    4) should it do that? maybe, don’t know

    5) renaming is not possible and layers will change a lot when UFO3 gets implemented (not in 1.3)

    6) for now, you have to write your own sets of script to handle “group spacing” see http://doc.robofont.com/forums/topic/group-spacing/

    7) 8) that is true, its not a text setting tool :)

    9) in 1.3 you can

    10) there are 4 angles constrains: 0°, 90°, 45° and the proportional angle (=the diagonal from the bounding box, in 1.3 you can eliminate the 45° contain in the prefs

    11) shift keyboard zoom with smaller steps makes sense

    12) 13) in 1.3 :)

    14) can you reproduce that?

    15) yep, interesting, will add it

    16) soon :)

    thanks

    in reply to: Integers #4230

    frederik
    Keymaster

    It true that scaling would result in floating coordinates. But I would rather see advantages in keeping the coordinates with floating numbers. If one has a set of transformations the result would be much better if floating numbers are used instead round the coordinates after each step.

    use glyph.round()

    Output will always round all coordinates.

    in reply to: lowestRecPPEM always set to 3 ? #4228

    frederik
    Keymaster

    mmm, have to look into it
    (could also be an FDK issue)

    in reply to: Kerning view broken? #4225

    frederik
    Keymaster

    you have to double click….

    I had already some discussions about supporting single selection click to preview the glyphs.
    Still doubting how to implement it

    in reply to: Move glyph vertically in Space Center #4217

    frederik
    Keymaster

    cool, I didn’t knew about this functionality in FL :)

    ‘shift’ is not the most logic place, will put it under ‘alt’ cause it an alternate behavior

    in reply to: interpolate kerning not working #4216

    frederik
    Keymaster

    Thanks for reporting, will be solved in the next release (1.3)

    in reply to: robofab.pens.filterPen #4215

    frederik
    Keymaster

    that is a bug, and already solved in the beta, will be in the next release

    a workaround:

    from robofab.pens.filterPen import ThresholdPen
    
    tempGlyph = RGlyph()
    glyph = CurrentGlyph()
    
    pen = ThresholdPen(tempGlyph.getPen(), threshold=10)
    
    glyph.draw(pen)
    
    glyph.clear()
    
    glyph.appendGlyph(tempGlyph)
    print "done"
    

    good luck

    in reply to: Last Script #4206

    frederik
    Keymaster

    mmm, no access to the last executed script, there is also no record of which scripts are being executed.

    will add it to the “think-about-to-add-this-feature” list

    in reply to: extension to build alternate glyphs #4203

    frederik
    Keymaster

    Just as a general question: are there any extension building guidelines (for design or behavior)?

    No there is no actual guide line, but it would be nice if the UI would follow a bit the Human Interface Guidelines

    see https://developer.apple.com/library/mac/#documentation/userexperience/Conceptual/AppleHIGuidelines/Intro/Intro.html

    Shouldn’t “Copy metrics” be active by default only if the glyph is empty?

    Yeah, good catch, this behavior is already adjusted in the beta versions and will be available in the next release.

    thanks

    in reply to: Swap layers via hot key #4202

    frederik
    Keymaster

    With swap you move the current layer to an other layer. Flipping would also move the layer glyph to the source layer.

    The action menu in the layer inspector pane will be gone in the next version.

    but you can still use:

    g = CurrentGlyph()
    g.flipLayers("foreground", "background")
    
    in reply to: Scripting, strings and diacritics #4200

    frederik
    Keymaster

    This is idd a bug :) and already solved in the beta and will be fixed in the next release.

    in reply to: Group-Spacing #4190

    frederik
    Keymaster

    That is a very good observation :) if your “dieresis” isn’t in the list of glyphs in the for loop, the “dieresis” will idd not be moved.

    Here is an extended example:

    font = CurrentFont()
    glyphNames = font.selection
    
    leftMargin = 40
    
    for glyphName in glyphNames:
        glyph = font[glyphName]
        # the difference between the existing left margin of the glyph
        # and the desired left margin is the move value on the x-axis
        move = leftMargin - glyph.leftMargin
    
        # loop over all contours and move only the contours
        for contour in glyph:
            contour.move((move, 0))
        
        # loop over all components in the glyph
        for component in glyph.components:
            # check if the component is in the big glyphNames list
            if component.baseGlyph in glyphNames:
                # if so the component will be moved by moving the base glyph contours
                # and continue in the for loop
                continue
            # otherwise move the component
            component.move((move, 0))
    

    have fun!

    in reply to: Group-Spacing #4188

    frederik
    Keymaster

    He Nina

    welcome :)

    If both the component and the base glyph are transformed, the component will be transformed twice: once with by the moving the component and once cause the component is being moved.

    you can ignore it by checking if a glyph as components:

    
    # loop over all the glyphs
        for destGlyph in glyphs:
            # check if the destination glyph is in the font
            if destGlyph not in font:
                continue
            # get the destination glyph
            destGlyph = font[destGlyph]
    
    
            if destGlyph.components:
                ## do nothing if the glyph has components
                continue
    

    next issue pops up when there is a mix of contours and components
    the best solution is to decompose the glyph or to handle contours separately if you want to keep the components.

    ## solution #1
    glyph = CurrentGlyph()
    glyph.decompose()
    
    ## solution #2
    
    glyph = CurrentGlyph()
    
    # define a leftMargin, in this cause it should be 10
    leftMargin = 20
    # the difference between the existing left margin of the glyph
    # and the desired left margin is the move value on the x-axis
    move = leftMargin - glyph.leftMargin
    
    # loop over all contours and move only the contours
    for contour in glyph:
        contour.move((move, 0))
    

    good luck

    in reply to: extension to build alternate glyphs #4186

    frederik
    Keymaster

    great extension!

    In the next version the same behavior will be added hen a glyph is added with a script as when the glyph is being added with “Add Glyphs” through the menu.

    Why is the window closing after click “Build new glyphs”?
    and check if the CurrentFont() is not None :)

    you can also use the build in color conversions:

    from AppKit import NSColor
    from lib.tools.misc import rgbaToNSColor, NSColorToRgba
    
    nsColorObject = NSColor.redColor()
    
    print NSColorToRgba(nsColorObject)
    print rgbaToNSColor((0, 1, 0, .5))
    

    (I know, I have to document the public internal objects)

    thanks

    in reply to: Five digit unicode values ? #4185

    frederik
    Keymaster

    yeah, python and unicode :)

    In the next release RoboFont will check if an unicode value is bigger then 0x10000 (65536) to open a Space Center.

Viewing 15 posts - 361 through 375 (of 531 total)