git-svn-id: http://svn.robofab.com/branches/ufo3k@256 b5fa9d6c-a76f-4ffd-b3cb-f825fc41095c
108 lines
3.8 KiB
Plaintext
108 lines
3.8 KiB
Plaintext
ufoLib
|
|
------
|
|
- UFOReader
|
|
- need to add up-conversion for kerning and kerning groups
|
|
- this needs to be done in three different methods:
|
|
- readInfo
|
|
- default suffixes can be set in __init__
|
|
- readGroups
|
|
- maybe skim the kerning for referenced groups and rename on the fly.
|
|
this creates a race condition of sorts in that he kerning could be modified
|
|
after the groups have been read. there isn't any way around this. maybe the
|
|
doc should say that for < version 3 kerning and groups should always be read
|
|
at the same time.
|
|
- readKerning
|
|
- need to temporarily read the groups for conversion. see above.
|
|
- readInfo
|
|
- double check to make sure that no conversion is needed
|
|
- add support for new attributes
|
|
- add a method for getting the images path
|
|
- add a method for getting the directory path
|
|
- add a getLayerNames method
|
|
- how will this handle indicating that a layer is the default?
|
|
- getGlyphSet
|
|
- add a layerName=None argument
|
|
|
|
- UFOWriter
|
|
- change default version
|
|
- writeInfo
|
|
- need down-convert function to filter out >= 3 attributes
|
|
- add support for new attributes
|
|
- writeKerning and writeGroups
|
|
- down conversion of modified group names is going to be a problem
|
|
when writing into an existing < 3 file.
|
|
- getGlyphSet
|
|
- add layerName=None argument
|
|
- add the user name to file name conversion abstraction to glifLib
|
|
- add an isDefaultLayer=True (or something) argument for when the default layer has a name
|
|
- update layercontents.plist each time a glyph set is created or make the caller do it?
|
|
- add a method for getting the images path
|
|
- add a method for getting the directory path
|
|
|
|
- build version 3 attribute definitions
|
|
- maybe do a dynamic copy of the version 2 data
|
|
- update validation functions
|
|
|
|
- are the in place version converters necessary?
|
|
|
|
|
|
glifLib
|
|
-------
|
|
- make GlyphSet a new style class
|
|
- roll in server optimizations
|
|
- GlyphSet
|
|
- add a readLayerInfo(info) method
|
|
- add a writeLayerInfo(info) method
|
|
- writeGlyph
|
|
- need to support guides
|
|
- objects could be required to have a guides attribute
|
|
containing objects with a specific API. this could be
|
|
messy in read glyphs. two ideas for that: guides is a
|
|
list like object with an addGuide method; the glyph has
|
|
an add guide method. the former is more symmetrical with
|
|
the output API.
|
|
- need to support images
|
|
- glyph could have an image attribute that accepts a tuple of (name, transformation), color)
|
|
this is similar to existing glifLib behavior but it is very different for robofab and defcon.
|
|
it's also going to be a problem for getting the image out of the object. maybe there could
|
|
be several attributes imageName, imageTransformation, imageColor. or there could be a specific
|
|
API:
|
|
image = glyphObject.image
|
|
image.name = name
|
|
image.transformation = transformation
|
|
image.color = color
|
|
this could be similar to guides.
|
|
- readGlyph
|
|
- need to support guides
|
|
- need to support images
|
|
|
|
- GLIFPointPen
|
|
- update to new API
|
|
|
|
- writeGlyphToString needs to be adapted
|
|
- add a formatVersion=3 argument
|
|
- add a buildOutline_Format2 function
|
|
|
|
- add the user name to file name conversion from the UFO spec
|
|
|
|
- don't write "180.0"
|
|
|
|
|
|
point pen protocol
|
|
------------------
|
|
- add an identifier=None to the beginPath method
|
|
- add an identifier=None to the addComponent method
|
|
- add an identifier=None to the addPoint method?
|
|
- add **kwargs to beginPath and addComponent?
|
|
|
|
|
|
RoboFab
|
|
-------
|
|
- remove
|
|
- anything with a DeprecationWarning (except the font.info attribute mapping)
|
|
- pens
|
|
- TransoformationPointPen needs to retain point data
|
|
- make point pens new style classes?
|
|
- reverse contour pen needs to retain kwargs
|
|
|