Skip to content

Commit 96977e6

Browse files
committed
Improvement - User options callbacks for img & pdf - Expose png imageUri
1 parent 7284c98 commit 96977e6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+79
-17
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -582,10 +582,10 @@ You can pass a callback trhough the config, for each button, to override the def
582582
const config = {
583583
userOptions: {
584584
callbacks: {
585-
pdf: (chartElement: HTMLElement) => {
585+
pdf: ({ chartElement, imageUri, base64 }) => {
586586
console.log(chartElement);
587587
},
588-
img: (base64: string) => {
588+
img: ({ chartElement, imageUri, base64 }) => {
589589
console.log(base64);
590590
},
591591
csv: (csvStr: string) => {

TestingArena/ArenaVueUiXy.vue

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -584,7 +584,7 @@ const model = ref([
584584
{ key: 'chart.userOptions.print.allowTaint', def: true, type: 'checkbox' },
585585
{ key: 'chart.userOptions.print.backgroundColor', def: '#FFFFFF', type: 'color' },
586586
{ key: 'chart.userOptions.print.useCORS', def: true, type: 'checkbox' },
587-
{ key: 'chart.userOptions.print.scale', def: 2, type: 'number', min: 1, max: 5 },
587+
{ key: 'chart.userOptions.print.scale', def: 4, type: 'number', min: 1, max: 5 },
588588
589589
]);
590590
@@ -767,14 +767,14 @@ const config = computed(() => {
767767
userOptions: {
768768
...c.chart.userOptions,
769769
callbacks: {
770-
img: (b64) => {
771-
console.log(b64)
770+
img: ({ domElement, imageUri, base64}) => {
771+
console.log(imageUri)
772772
},
773773
csv: (xls) => {
774774
console.log(xls)
775775
},
776-
pdf: (chart) => {
777-
console.log(chart)
776+
pdf: ({ domElement, imageUri, base64}) => {
777+
console.log(imageUri)
778778
}
779779
},
780780
print: {

src/atoms/UserOptions.vue

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -129,13 +129,18 @@ const props = defineProps({
129129
return {}
130130
}
131131
},
132+
printScale: {
133+
type: Number,
134+
default: 2
135+
}
132136
});
133137
134138
const emit = defineEmits(['generatePdf', 'generateCsv', 'generateImage', 'toggleTable', 'toggleLabels', 'toggleSort', 'toggleFullscreen', 'toggleStack', 'toggleTooltip', 'toggleAnimation', 'toggleAnnotator']);
135139
136-
function generatePdf() {
140+
async function generatePdf() {
137141
if (props.callbacks.pdf) {
138-
props.callbacks.pdf(props.chartElement);
142+
const { imageUri, base64} = await img({ domElement: props.chartElement, base64: true, img: true, scale: props.printScale })
143+
props.callbacks.pdf({ domElement: props.chartElement, base64, imageUri});
139144
} else {
140145
emit('generatePdf');
141146
}
@@ -147,8 +152,8 @@ function generateCsv() {
147152
148153
async function generateImage() {
149154
if (props.callbacks.img) {
150-
const b64 = await img({ domElement: props.chartElement, base64: true })
151-
props.callbacks.img(b64);
155+
const { imageUri, base64 } = await img({ domElement: props.chartElement, base64: true, img: true, scale: props.printScale })
156+
props.callbacks.img({ domElement: props.chartElement, imageUri, base64 });
152157
} else {
153158
emit('generateImage');
154159
}

src/components/vue-ui-3d-bar.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -583,6 +583,7 @@ defineExpose({
583583
:hasAnnotator="FINAL_CONFIG.userOptions.buttons.annotator"
584584
:isAnnotation="isAnnotator"
585585
:callbacks="FINAL_CONFIG.userOptions.callbacks"
586+
:printScale="FINAL_CONFIG.userOptions.print.scale"
586587
@toggleFullscreen="toggleFullscreen"
587588
@generatePdf="generatePdf"
588589
@generateCsv="generateCsv"

src/components/vue-ui-age-pyramid.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -524,6 +524,7 @@ defineExpose({
524524
:hasAnnotator="FINAL_CONFIG.userOptions.buttons.annotator"
525525
:isAnnotation="isAnnotator"
526526
:callbacks="FINAL_CONFIG.userOptions.callbacks"
527+
:printScale="FINAL_CONFIG.userOptions.print.scale"
527528
@toggleFullscreen="toggleFullscreen"
528529
@generatePdf="generatePdf"
529530
@generateCsv="generateCsv"

src/components/vue-ui-bullet.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -429,6 +429,7 @@ defineExpose({
429429
:hasAnnotator="FINAL_CONFIG.userOptions.buttons.annotator"
430430
:isAnnotation="isAnnotator"
431431
:callbacks="FINAL_CONFIG.userOptions.callbacks"
432+
:printScale="FINAL_CONFIG.userOptions.print.scale"
432433
@toggleFullscreen="toggleFullscreen"
433434
@generatePdf="generatePdf"
434435
@generateImage="generateImage"

src/components/vue-ui-candlestick.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -742,6 +742,7 @@ defineExpose({
742742
:hasAnnotator="FINAL_CONFIG.userOptions.buttons.annotator"
743743
:isAnnotation="isAnnotator"
744744
:callbacks="FINAL_CONFIG.userOptions.callbacks"
745+
:printScale="FINAL_CONFIG.userOptions.print.scale"
745746
@toggleFullscreen="toggleFullscreen"
746747
@generatePdf="generatePdf"
747748
@generateCsv="generateCsv"

src/components/vue-ui-carousel-table.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -560,6 +560,7 @@ defineExpose({
560560
:zIndex="3"
561561
:offsetX="12"
562562
:callbacks="FINAL_CONFIG.userOptions.callbacks"
563+
:printScale="FINAL_CONFIG.userOptions.print.scale"
563564
@generatePdf="generatePdf"
564565
@generateCsv="generateCsv"
565566
@generateImage="generateImage"

src/components/vue-ui-chestnut.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -590,6 +590,7 @@ defineExpose({
590590
:hasAnnotator="FINAL_CONFIG.userOptions.buttons.annotator"
591591
:isAnnotation="isAnnotator"
592592
:callbacks="FINAL_CONFIG.userOptions.callbacks"
593+
:printScale="FINAL_CONFIG.userOptions.print.scale"
593594
@toggleFullscreen="toggleFullscreen"
594595
@generatePdf="generatePdf"
595596
@generateCsv="generateCsv"

src/components/vue-ui-chord.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -880,6 +880,7 @@ defineExpose({
880880
:hasAnnotator="FINAL_CONFIG.userOptions.buttons.annotator"
881881
:isAnnotation="isAnnotator"
882882
:callbacks="FINAL_CONFIG.userOptions.callbacks"
883+
:printScale="FINAL_CONFIG.userOptions.print.scale"
883884
@toggleFullscreen="toggleFullscreen"
884885
@generatePdf="generatePdf"
885886
@generateCsv="generateCsv"

0 commit comments

Comments
 (0)