Finished documentation of non protocol specific socket library classes
[senf.git] / senfscons / Dia2Png.py
index d536ebf..a518464 100644 (file)
@@ -17,11 +17,14 @@ def dia_getSize(env,source):
 
 def dia2png_generator(source, target, env, for_signature):
     if for_signature:
-        return "$DIACOM -t png -s $DIA2PNGDPI $TARGET $SOURCE"
+        return "$DIACOM -t png -s $DIA2PNGDPI,$DIA2PNGMAXWIDTH $TARGET $SOURCE"
     size = dia_getSize(env,source)
     if not size: return None;
     size[0] = size[0]*int(env['DIA2PNGDPI'])/72
     size[1] = size[1]*int(env['DIA2PNGDPI'])/72
+    if size[0] > env['DIA2PNGMAXWIDTH']:
+        size[1] = size[1]*env['DIA2PNGMAXWIDTH']/size[0]
+        size[0] = env['DIA2PNGMAXWIDTH']
     return env.Action("$DIACOM -t png -s %dx%d -e $TARGET $SOURCE" % tuple(size))
 
 Dia2Png = SCons.Builder.Builder(suffix = ".png",
@@ -33,6 +36,7 @@ def generate(env):
     env['BUILDERS']['Dia2Png'] = Dia2Png
     env['DIACOM'] = "dia"
     env['DIA2PNGDPI'] = 115
+    env['DIA2PNGMAXWIDTH'] = 800
 
 def exists(env):
     return env.Detect("dia")