diff --git a/vtm/src/org/oscim/backend/CanvasAdapter.java b/vtm/src/org/oscim/backend/CanvasAdapter.java index 2c1f14bd..51664fa0 100644 --- a/vtm/src/org/oscim/backend/CanvasAdapter.java +++ b/vtm/src/org/oscim/backend/CanvasAdapter.java @@ -48,6 +48,11 @@ public abstract class CanvasAdapter { */ public static float dpi = 240; + /** + * The scale. + */ + public static float scale = 1; + /** * The text scale. */ diff --git a/vtm/src/org/oscim/theme/XmlThemeBuilder.java b/vtm/src/org/oscim/theme/XmlThemeBuilder.java index 135e07f0..3e4d1f0b 100644 --- a/vtm/src/org/oscim/theme/XmlThemeBuilder.java +++ b/vtm/src/org/oscim/theme/XmlThemeBuilder.java @@ -133,7 +133,7 @@ public class XmlThemeBuilder extends DefaultHandler { private final ThemeFile mTheme; private RenderTheme mRenderTheme; - private final float mScaleValue; + private final float mScale; private Set<String> mCategories; private XmlRenderThemeStyleLayer mCurrentLayer; @@ -141,7 +141,7 @@ public class XmlThemeBuilder extends DefaultHandler { public XmlThemeBuilder(ThemeFile theme) { mTheme = theme; - mScaleValue = 1 + (CanvasAdapter.dpi / 240 - 1) * 0.5f; + mScale = CanvasAdapter.scale + (CanvasAdapter.dpi / 240 - 1) * 0.5f; } @Override @@ -478,7 +478,7 @@ public class XmlThemeBuilder extends DefaultHandler { b.color(value); else if ("width".equals(name) || "stroke-width".equals(name)) { - b.strokeWidth = parseFloat(value) * mScaleValue; + b.strokeWidth = parseFloat(value) * mScale; if (line == null) { if (!isOutline) validateNonNegative("width", b.strokeWidth); @@ -495,7 +495,7 @@ public class XmlThemeBuilder extends DefaultHandler { b.fixed = parseBoolean(value); else if ("stipple".equals(name)) - b.stipple = Math.round(parseInt(value) * mScaleValue); + b.stipple = Math.round(parseInt(value) * mScale); else if ("stipple-stroke".equals(name)) b.stippleColor(value); @@ -582,7 +582,7 @@ public class XmlThemeBuilder extends DefaultHandler { else if ("stroke-width".equals(name)) { float strokeWidth = Float.parseFloat(value); validateNonNegative("stroke-width", strokeWidth); - b.strokeWidth = strokeWidth * mScaleValue; + b.strokeWidth = strokeWidth * mScale; } else if ("fade".equals(name)) b.fadeScale = Integer.parseInt(value); @@ -855,7 +855,7 @@ public class XmlThemeBuilder extends DefaultHandler { b.strokeColor = Color.parseColor(value); else if ("stroke-width".equals(name)) - b.strokeWidth = Float.parseFloat(value) * mScaleValue; + b.strokeWidth = Float.parseFloat(value) * mScale; else if ("caption".equals(name)) b.caption = Boolean.parseBoolean(value); @@ -907,7 +907,7 @@ public class XmlThemeBuilder extends DefaultHandler { String value = attributes.getValue(i); if ("r".equals(name) || "radius".equals(name)) - radius = Float.parseFloat(value) * mScaleValue; + radius = Float.parseFloat(value) * mScale; else if ("cat".equals(name)) cat = value; @@ -922,7 +922,7 @@ public class XmlThemeBuilder extends DefaultHandler { stroke = Color.parseColor(value); else if ("stroke-width".equals(name)) - strokeWidth = Float.parseFloat(value) * mScaleValue; + strokeWidth = Float.parseFloat(value) * mScale; else logUnknownAttribute(elementName, name, value, i);