class CssUtils {

	public float parsePxInCmMmPcToPt(final String length, final String defaultMetric) {
		int pos = determinePositionBetweenValueAndUnit(length);
		if (pos == 0)
			return 0f;
		float f = Float.parseFloat(length.substring(0, pos) + "f");
		String unit = length.substring(pos);
		// inches
		if (unit.startsWith(CSS.Value.IN) || (unit.equals("") && defaultMetric.equals(CSS.Value.IN))) {
			f *= 72f;
		}
		// centimeters
		else if (unit.startsWith(CSS.Value.CM) || (unit.equals("") && defaultMetric.equals(CSS.Value.CM))) {
			f = (f / 2.54f) * 72f;
		}
		// millimeters
		else if (unit.startsWith(CSS.Value.MM) || (unit.equals("") && defaultMetric.equals(CSS.Value.MM))) {
			f = (f / 25.4f) * 72f;
		}
		// picas
		else if (unit.startsWith(CSS.Value.PC) || (unit.equals("") && defaultMetric.equals(CSS.Value.PC))) {
			f *= 12f;
		}
		// pixels (1px = 0.75pt).
		else if (unit.startsWith(CSS.Value.PX) || (unit.equals("") && defaultMetric.equals(CSS.Value.PX))) {
			f *= 0.75f;
		}
		return f;
	}

	private  CssUtils();

}