예제 #1
0
def create_glyph(glif, master):
    itemlist = glif.find('advance')
    width = itemlist.get('width')

    glyph = glif.getroot()
    glyphname = glyph.get('name')

    if master.project.mfparser == 'pen':
        pointsets = get_pointsets(glif)
    else:
        pointsets = get_controlpmode_pointsets(glif)

    if Glyph.exists(name=glyphname, master_id=master.id):
        return

    glyph = Glyph.create(name=glyphname,
                         width=width,
                         master_id=master.id,
                         project_id=master.project_id,
                         width_new=width)

    for pointset in pointsets:
        pointset.save_to_database(glyph)

    return glyph
예제 #2
0
    def test_assign_point_attribute(self):
        pointsets = get_pointsets(xml_4)

        pointset = pointsets[0]

        self.assertEqual(pointset.points[0]['preset']['startp'], 1)
        self.assertEqual(pointset.points[0]['preset']['pointname'], 'z1l')
        self.assertEqual(pointset.points[0]['preset']['type'], 'line')

        self.assertEqual(pointset.points[1]['preset']['pointname'], 'z2l')
        self.assertEqual(pointset.points[1]['preset']['tripledash'], 1)
        self.assertEqual(pointset.points[1]['preset']['type'], 'line')

        self.assertEqual(pointset.points[2]['preset']['pointname'], 'z2r')
        self.assertEqual(pointset.points[2]['preset']['tripledash'], 1)
        self.assertEqual(pointset.points[2]['preset']['type'], 'line')

        self.assertEqual(pointset.points[3]['preset']['pointname'], 'z1r')
        self.assertEqual(pointset.points[3]['preset']['tripledash'], 1)
        self.assertEqual(pointset.points[3]['preset']['type'], 'line')

        pointset = pointsets[1]

        self.assertEqual(pointset.points[0]['preset']['startp'], 1)
        self.assertEqual(pointset.points[0]['preset']['pointname'], 'z3l')
        self.assertEqual(pointset.points[0]['preset']['type'], 'line')

        self.assertEqual(pointset.points[1]['preset']['pointname'], 'z4l')
        self.assertEqual(pointset.points[1]['preset']['tripledash'], 1)
        self.assertEqual(pointset.points[1]['preset']['type'], 'line')

        self.assertEqual(pointset.points[2]['preset']['pointname'], 'z4r')
        self.assertEqual(pointset.points[2]['preset']['tripledash'], 1)
        self.assertEqual(pointset.points[2]['preset']['type'], 'line')

        self.assertEqual(pointset.points[3]['preset']['pointname'], 'z3r')
        self.assertEqual(pointset.points[3]['preset']['tripledash'], 1)
        self.assertEqual(pointset.points[3]['preset']['type'], 'line')

        pointset = pointsets[2]

        self.assertEqual(pointset.points[0]['preset']['startp'], 1)
        self.assertEqual(pointset.points[0]['preset']['pointname'], 'z5l')
        self.assertEqual(pointset.points[0]['preset']['type'], 'line')

        self.assertEqual(pointset.points[1]['preset']['pointname'], 'z6l')
        self.assertEqual(pointset.points[1]['preset']['tripledash'], 1)
        self.assertEqual(pointset.points[1]['preset']['type'], 'line')

        self.assertEqual(pointset.points[2]['preset']['pointname'], 'z6r')
        self.assertEqual(pointset.points[2]['preset']['tripledash'], 1)
        self.assertEqual(pointset.points[2]['preset']['type'], 'line')

        self.assertEqual(pointset.points[3]['preset']['pointname'], 'z5r')
        self.assertEqual(pointset.points[3]['preset']['tripledash'], 1)
        self.assertEqual(pointset.points[3]['preset']['type'], 'line')

        self.assertTrue(not pointset.is_counterclockwise())
예제 #3
0
def create_glyph(glif, master):
    itemlist = glif.find('advance')
    width = itemlist.get('width')

    glyph = glif.getroot()
    glyphname = glyph.get('name')

    if master.project.mfparser == 'pen':
        pointsets = get_pointsets(glif)
    else:
        pointsets = get_controlpmode_pointsets(glif)

    if Glyph.exists(name=glyphname, master_id=master.id):
        return

    glyph = Glyph.create(name=glyphname, width=width,
                         master_id=master.id,
                         project_id=master.project_id,
                         width_new=width)

    for pointset in pointsets:
        pointset.save_to_database(glyph)

    return glyph
예제 #4
0
    def test_checking_clockwise_pointset_with_prepared_glif(self):
        pointset = get_pointsets(xml_at)[0]
        self.assertTrue(not pointset.is_counterclockwise())

        pointset = get_pointsets(xml_J)[0]
        self.assertTrue(not pointset.is_counterclockwise())