public void setLineStyle(final LineStyle style) {
		if (style.getWidth() != null) {
			float width_prev = this.lineWidth;
			this.setLineWidth(style.getWidth().floatValue());
			this.lineWidth = width_prev;
		}
		if (style.getCap() != null) {
			this._out(style.getCap().toString() + " J"); //$NON-NLS-1$
		}
		if (style.getJoin() != null) {
			this._out(style.getJoin().toString() + " j"); //$NON-NLS-1$
		}
		if (style.getDashes() != null) {
			StringBuilder sb = new StringBuilder();
			for (float dash : style.getDashes()) {
				if (sb.length() > 0) {
					sb.append(' ');
				}
				sb.append(String.format(Locale.ENGLISH,
						"%.2f", Float.valueOf(dash))); //$NON-NLS-1$
			}
			this._out(String.format(Locale.ENGLISH,
					"[%s] %.2f d", sb.toString(), Float //$NON-NLS-1$
							.valueOf(style.getPhase())));
		}
		if (style.getColor() != null) {
			this.setDrawColor(style.getColor());
		}
	}