diff --git a/src/main/java/com/byteowls/vaadin/chartjs/options/AbstractOptions.java b/src/main/java/com/byteowls/vaadin/chartjs/options/AbstractOptions.java index 6f6cfe1..e774b05 100644 --- a/src/main/java/com/byteowls/vaadin/chartjs/options/AbstractOptions.java +++ b/src/main/java/com/byteowls/vaadin/chartjs/options/AbstractOptions.java @@ -20,6 +20,7 @@ public abstract class AbstractOptions implements JsonBuilder, Serializable { protected Boolean responsive; private Integer responsiveAnimationDuration; private Boolean maintainAspectRatio; + private Integer devicePixelRatio; private List events; private Title title; private Tooltips tooltips; @@ -43,7 +44,7 @@ public T responsive(boolean responsive) { } /** - * Maintain the original canvas aspect ratio (width / height) when resizing + * Maintain the original canvas aspect ratio (width / height) when resizing. */ public T maintainAspectRatio(boolean maintainAspectRatio) { this.maintainAspectRatio = maintainAspectRatio; @@ -58,6 +59,14 @@ public T responsiveAnimationDuration(int responsiveAnimationDurationMs) { return getThis(); } + /** + * Defines the ratio between display pixels and rendered pixels. + */ + public T devicePixelRatio(int devicePixelRatio) { + this.devicePixelRatio = devicePixelRatio; + return getThis(); + } + /** * Events that the chart should listen to for tooltips and hovering */ @@ -155,6 +164,7 @@ public JsonObject buildJson() { JUtils.putNotNull(map, "responsive", responsive); JUtils.putNotNull(map, "maintainAspectRatio", maintainAspectRatio); JUtils.putNotNull(map, "responsiveAnimationDuration", responsiveAnimationDuration); + JUtils.putNotNull(map, "devicePixelRatio", devicePixelRatio); JUtils.putNotNull(map, "events", events); JUtils.putNotNull(map, "title", title); JUtils.putNotNull(map, "hover", hover);