@@ -13689,16 +13689,29 @@
13689
13689
<xsl:template name="getImageSrc">
13690
13690
<xsl:choose>
13691
13691
<xsl:when test="not(starts-with(@src, 'data:'))">
13692
+ <xsl:call-template name="getImageSrcExternal"/>
13693
+ </xsl:when>
13694
+ <xsl:otherwise><xsl:value-of select="@src"/></xsl:otherwise>
13695
+ </xsl:choose>
13696
+ </xsl:template>
13697
+
13698
+ <xsl:template name="getImageSrcExternal">
13699
+ <xsl:choose>
13700
+ <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
13701
+ <xsl:value-of select="@src"/>
13702
+ </xsl:when>
13703
+ <xsl:otherwise>
13704
+ <xsl:variable name="src_with_basepath" select="concat($basepath, @src)"/>
13705
+ <xsl:variable name="file_exists" select="normalize-space(java:exists(java:java.io.File.new($src_with_basepath)))"/>
13692
13706
<xsl:choose>
13693
- <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -- >
13694
- <xsl:value-of select="@src "/>
13707
+ <xsl:when test="$file_exists = 'true'">
13708
+ <xsl:value-of select="$src_with_basepath "/>
13695
13709
</xsl:when>
13696
13710
<xsl:otherwise>
13697
- <xsl:value-of select="concat($basepath, @src) "/>
13711
+ <xsl:value-of select="@src"/>
13698
13712
</xsl:otherwise>
13699
- </xsl:choose>
13700
- </xsl:when>
13701
- <xsl:otherwise><xsl:value-of select="@src"/></xsl:otherwise>
13713
+ </xsl:choose>
13714
+ </xsl:otherwise>
13702
13715
</xsl:choose>
13703
13716
</xsl:template>
13704
13717
13773
13786
<xsl:value-of select="concat('url(file:///',$basepath, $src_png, ')')"/>
13774
13787
</xsl:when>
13775
13788
<xsl:when test="not(starts-with(@src, 'data:'))">
13776
- <xsl:choose>
13777
- <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
13778
- <xsl:value-of select="concat('url(file:///', @src, ')')"/>
13779
- </xsl:when>
13780
- <xsl:otherwise>
13781
- <xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
13782
- </xsl:otherwise>
13783
- </xsl:choose>
13789
+ <xsl:variable name="src_external"><xsl:call-template name="getImageSrcExternal"/></xsl:variable>
13790
+ <xsl:value-of select="concat('url(file:///', $src_external, ')')"/>
13784
13791
</xsl:when>
13785
13792
<xsl:otherwise>
13786
13793
<xsl:value-of select="@src"/>
13801
13808
</svg>
13802
13809
</xsl:when>
13803
13810
<xsl:when test="not(starts-with(@src, 'data:'))">
13804
- <xsl:variable name="src">
13805
- <xsl:choose>
13806
- <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
13807
- <xsl:value-of select="concat('url(file:///', @src, ')')"/>
13808
- </xsl:when>
13809
- <xsl:otherwise>
13810
- <xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
13811
- </xsl:otherwise>
13812
- </xsl:choose>
13813
- </xsl:variable>
13811
+ <xsl:variable name="src_external"><xsl:call-template name="getImageSrcExternal"/></xsl:variable>
13812
+ <xsl:variable name="src" select="concat('url(file:///', $src_external, ')')"/>
13814
13813
<xsl:variable name="file" select="java:java.io.File.new(@src)"/>
13815
13814
<xsl:variable name="bufferedImage" select="java:javax.imageio.ImageIO.read($file)"/>
13816
13815
<xsl:variable name="width" select="java:getWidth($bufferedImage)"/>
21263
21262
<xsl:value-of select="$src"/>
21264
21263
</xsl:when>
21265
21264
<xsl:otherwise>
21266
- <xsl:choose>
21267
- <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
21268
- <xsl:value-of select="concat('url(file:///', @src, ')')"/>
21269
- </xsl:when>
21270
- <xsl:otherwise>
21271
- <xsl:value-of select="concat('url(file:///',$basepath, $src, ')')"/>
21272
- </xsl:otherwise>
21273
- </xsl:choose>
21265
+ <xsl:variable name="src_external"><xsl:call-template name="getImageSrcExternal"/></xsl:variable>
21266
+ <xsl:value-of select="concat('url(file:///', $src_external, ')')"/>
21274
21267
</xsl:otherwise>
21275
21268
</xsl:choose>
21276
21269
</xsl:template>
0 commit comments