76 lines
3.6 KiB
Python
76 lines
3.6 KiB
Python
#!/usr/bin/env python3
|
|
# -*- coding: utf-8 -*-
|
|
# ***************************************************************************
|
|
# * Copyright (c) 2013 WandererFan <wandererfan@gmail.com> *
|
|
# * *
|
|
# * This file is part of the FreeCAD CAx development system. *
|
|
# * *
|
|
# * This program is free software; you can redistribute it and/or modify *
|
|
# * it under the terms of the GNU Lesser General Public License (LGPL) *
|
|
# * as published by the Free Software Foundation; either version 2 of *
|
|
# * the License, or (at your option) any later version. *
|
|
# * for detail see the LICENCE text file. *
|
|
# * *
|
|
# * This program is distributed in the hope that it will be useful, *
|
|
# * but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
|
# * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
|
# * GNU Library General Public License for more details. *
|
|
# * *
|
|
# * You should have received a copy of the GNU Library General Public *
|
|
# * License along with this program; if not, write to the Free Software *
|
|
# * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 *
|
|
# * USA *
|
|
# * *
|
|
# ***************************************************************************
|
|
|
|
|
|
# tester for Part.makeWireString
|
|
|
|
import FreeCAD
|
|
import Part
|
|
import PartDesign
|
|
|
|
print("testWire started")
|
|
|
|
# test strings
|
|
# if string contains funky characters, it has to be declared as Unicode or it
|
|
# turns into the default encoding (usually utf8). FT2 doesn't do utf8.
|
|
# String = 'Wide WMA_' # wide glyphs for tracking
|
|
# String = 'Big'
|
|
# String = u'ecAnO' # UCS-2 w/ only ASCII
|
|
# String = u'ucs2uéçÄñØ' # UCS-2
|
|
# String = 'utf8!uéçÄñØ' # UTF-8
|
|
# String = 'abcdefghijklmnopqrstuvwxyz0123456789'
|
|
# String = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
|
|
# String = 'Big Daddy' # white space
|
|
# String = 'AVWAIXA.V' # kerning
|
|
String = "FreeCAD" # ASCII
|
|
|
|
# FontPath = '/usr/share/fonts/truetype/msttcorefonts/'
|
|
# FontName = 'Times_New_Roman_Italic.ttf'
|
|
FontPath = "/usr/share/fonts/truetype/msttcorefonts/"
|
|
FontName = "Arial.ttf"
|
|
# FontName = 'NOTArial.ttf' # font file not found error
|
|
# FontPath = '/usr/share/fonts/truetype/msttcorefonts/'
|
|
# FontName = 'ariali.ttf' # symlink to ttf
|
|
# FontPath = '/usr/share/fonts/truetype/'
|
|
# FontName = 'Peterbuilt.ttf' # overlapping script font
|
|
# FontPath = '/usr/share/fonts/truetype/'
|
|
# FontName = 'dyspepsia.ttf' # overlapping script font # :)
|
|
|
|
Height = 2000 # out string height FCunits
|
|
Track = 0 # intercharacter spacing
|
|
|
|
print("testWire.py input String contains ", len(String), " characters.")
|
|
|
|
s = Part.makeWireString(String, FontPath, FontName, Height, Track)
|
|
|
|
print("returned from makeWireString")
|
|
print("testWire.py output contains ", len(s), " WireChars.")
|
|
|
|
for char in s:
|
|
for contour in char:
|
|
Part.show(contour)
|
|
|
|
print("testWire ended.")
|