diff --git a/src/core-interfaces.ts b/src/core-interfaces.ts
index bf41a113f..d2a222d6a 100644
--- a/src/core-interfaces.ts
+++ b/src/core-interfaces.ts
@@ -455,6 +455,12 @@ export interface ImageProps extends PositionProps, DataOrPathProps {
* @default false
*/
rounding?: boolean
+ /**
+ * Transparency (percent)
+ * - range: 0-100
+ * @default 0
+ */
+ transparency?: number
/**
* Image sizing options
*/
diff --git a/src/gen-objects.ts b/src/gen-objects.ts
index e20cd18ec..8e26e00e2 100644
--- a/src/gen-objects.ts
+++ b/src/gen-objects.ts
@@ -414,6 +414,7 @@ export function addImageDefinition(target: PresSlide, opt: ImageProps) {
rotate: opt.rotate || 0,
flipV: opt.flipV || false,
flipH: opt.flipH || false,
+ transparency: opt.transparency || 0,
}
// STEP 4: Add this image to this Slide Rels (rId/rels count spans all slides! Count all images to get next rId)
diff --git a/src/gen-xml.ts b/src/gen-xml.ts
index eebfee559..245d96a6d 100644
--- a/src/gen-xml.ts
+++ b/src/gen-xml.ts
@@ -569,6 +569,7 @@ function slideObjectToXml(slide: PresSlide | SlideLayout): string {
let imageOpts = slideItemObj.options as ImageProps
let sizing = imageOpts.sizing,
rounding = imageOpts.rounding,
+ transparency = imageOpts.transparency,
width = cx,
height = cy
@@ -594,6 +595,7 @@ function slideObjectToXml(slide: PresSlide | SlideLayout): string {
(slide._relsMedia || []).filter(rel => rel.rId === slideItemObj.imageRid)[0]['extn'] === 'svg'
) {
strSlideXml += ''
+ strSlideXml += ` `
strSlideXml += ' '
strSlideXml += ' '
strSlideXml += ' '
@@ -601,7 +603,9 @@ function slideObjectToXml(slide: PresSlide | SlideLayout): string {
strSlideXml += ' '
strSlideXml += ''
} else {
- strSlideXml += ''
+ strSlideXml += ''
+ strSlideXml += ` `
+ strSlideXml += ''
}
if (sizing && sizing.type) {
let boxW = sizing.w ? getSmartParseNumber(sizing.w, 'X', slide._presLayout) : cx,