allow input plugins and fonts directories to be set by environment when auto-loaded from python - closes #1594 - refs #1004
This commit is contained in:
parent
37804ed0a5
commit
bffabbf99d
1 changed files with 14 additions and 6 deletions
|
@ -67,7 +67,8 @@ def bootstrap_env():
|
|||
bootstrap_env()
|
||||
|
||||
from _mapnik import *
|
||||
from paths import inputpluginspath, fontscollectionpath
|
||||
from paths import inputpluginspath
|
||||
from paths import fontscollectionpath
|
||||
|
||||
import printing
|
||||
printing.renderer = render
|
||||
|
@ -996,20 +997,27 @@ class _TextSymbolizer(TextSymbolizer,_injector):
|
|||
self.properties.wrap_width = wrap_width
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
def mapnik_version_from_string(version_string):
|
||||
"""Return the Mapnik version from a string."""
|
||||
n = version_string.split('.')
|
||||
return (int(n[0]) * 100000) + (int(n[1]) * 100) + (int(n[2]));
|
||||
|
||||
def register_plugins(path=inputpluginspath):
|
||||
def register_plugins(path=None):
|
||||
"""Register plugins located by specified path"""
|
||||
if not path:
|
||||
if os.environ.has_key('MAPNIK_INPUT_PLUGINS_DIRECTORY'):
|
||||
path = os.environ.get('MAPNIK_INPUT_PLUGINS_DIRECTORY')
|
||||
else:
|
||||
path = inputpluginspath
|
||||
DatasourceCache.register_datasources(path)
|
||||
|
||||
def register_fonts(path=fontscollectionpath,valid_extensions=['.ttf','.otf','.ttc','.pfa','.pfb','.ttc','.dfont']):
|
||||
def register_fonts(path=None,valid_extensions=['.ttf','.otf','.ttc','.pfa','.pfb','.ttc','.dfont']):
|
||||
"""Recursively register fonts using path argument as base directory"""
|
||||
if not path:
|
||||
if os.environ.has_key('MAPNIK_FONT_DIRECTORY'):
|
||||
path = os.environ.get('MAPNIK_FONT_DIRECTORY')
|
||||
else:
|
||||
path = fontscollectionpath
|
||||
for dirpath, _, filenames in os.walk(path):
|
||||
for filename in filenames:
|
||||
if os.path.splitext(filename.lower())[1] in valid_extensions:
|
||||
|
|
Loading…
Reference in a new issue