Вы захотите сделать деление с плавающей точкой, и затем использовать функцию потолка, окружить значение к следующему целому числу.
Я нашел эту запись из списков рассылки XSL , в которой описывается, как использовать функцию расширения Saxon xs: base64Binary-to-octet для потоковой передачи. в файл с помощью Java FileOutputStream в таблице стилей XSLT 2.0:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
version="2.0" xmlns:xs="http://www.w3.org/2001/XMLSchema";
xmlns:saxon="http://saxon.sf.net/";
xmlns:fos="java.io.FileOutputStream">
<xsl:template match="/">
<xsl:variable name="img" select="concat('c:\test\jesper', '.jpg')"/>
<xsl:variable name="fos" select="fos:new(string($img))"/>
<xsl:value-of select="fos:write($fos,
saxon:base64Binary-to-octets(xs:base64Binary(my-base64-encoded-image)))"/>
<xsl:value-of select="fos:close($fos)"/>
</xsl:template>
</xsl:stylesheet>
Преобразуйте его в HTML.
<img src="data:{mime};base64,{data}" />