You are viewing a plain text version of this content. The canonical link for it is here.
Posted to batik-users@xmlgraphics.apache.org by Mostafa Mahdieh <m....@gmail.com> on 2013/06/24 15:03:30 UTC
Text rendering of some Persian characters has issues when converting
SVG to PNG
Hi,
I am using Activiti Explorer 5.12.1, which uses batik transcoder 1.7 as a
library. When exporting bpmn models to png using Activiti Explorer, the
output has issues on characters "ی", "ک", "پ" and "گ". Note that theses
characters are part of the Persian character set of utf-8, and other
characters which are in the common set of Arabic and Persian character
sets, don't seem to have any problems.
I have *attached* a sample of one of my tests. The text in the box should
read
"ما کب گپ جیب جوب پا"
which is incorrectly shown as
"ما کب گپ جیب جوب پا"
I traced the problem in Activiti Explorer code to this small code snippet:
=======================
InputStream svgStream = new
ByteArrayInputStream(modelForm.getFirstValue("svg_xml").getBytes("utf-8"));
TranscoderInput input = new TranscoderInput(svgStream);
PNGTranscoder transcoder = new PNGTranscoder();
// Setup output
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
TranscoderOutput output = new TranscoderOutput(outStream);
// Do the transformation
transcoder.transcode(input, output);
final byte[] result = outStream.toByteArray();
=======================
It seems that the issues are coming from the PNGTranscoder not being able
to render persian text correctly. PNGTranscoder is part of Apache Batik
(org.apache.batik.transcoder.image.PNGTranscoder).
I have also created a very small eclipse project which does the same thing,
independent of any Activiti Explorer code, which helps a lot to debug the
problem. The project is attached.
More details:
OS: Ubuntu Linux 12.04 (3.2.0-44-generic #69-Ubuntu SMP Thu May 16 17:35:01
UTC 2013 x86_64 x86_64 x86_64 GNU/Linux)
Java: java version "1.7.0_21"
OpenJDK Runtime Environment (IcedTea 2.3.9) (7u21-2.3.9-0ubuntu0.12.04.1)
Batik version used by Activiti Explorer (found in the MANIFEST.MF of the
jar file included): 1.7+r608262
Regards
--
Mostafa Mahdieh
Re: Text rendering of some Persian characters has issues when
converting SVG to PNG
Posted by Mostafa Mahdieh <m....@gmail.com>.
Does anyone see my messages? Am I sending to the wrong group?
On Wed, Jun 26, 2013 at 11:53 PM, Mostafa Mahdieh <m....@gmail.com>wrote:
> Any ideas?
>
>
> On Mon, Jun 24, 2013 at 5:33 PM, Mostafa Mahdieh <m....@gmail.com>wrote:
>
>> Hi,
>>
>> I am using Activiti Explorer 5.12.1, which uses batik transcoder 1.7 as a
>> library. When exporting bpmn models to png using Activiti Explorer, the
>> output has issues on characters "ی", "ک", "پ" and "گ". Note that theses
>> characters are part of the Persian character set of utf-8, and other
>> characters which are in the common set of Arabic and Persian character
>> sets, don't seem to have any problems.
>>
>> I have *attached* a sample of one of my tests. The text in the box
>> should read
>>
>> "ما کب گپ جیب جوب پا"
>>
>> which is incorrectly shown as
>>
>> "ما کب گپ جیب جوب پا"
>>
>> I traced the problem in Activiti Explorer code to this small code snippet:
>>
>> =======================
>> InputStream svgStream = new
>> ByteArrayInputStream(modelForm.getFirstValue("svg_xml").getBytes("utf-8"));
>> TranscoderInput input = new TranscoderInput(svgStream);
>>
>> PNGTranscoder transcoder = new PNGTranscoder();
>> // Setup output
>> ByteArrayOutputStream outStream = new ByteArrayOutputStream();
>> TranscoderOutput output = new TranscoderOutput(outStream);
>>
>> // Do the transformation
>> transcoder.transcode(input, output);
>> final byte[] result = outStream.toByteArray();
>> =======================
>>
>> It seems that the issues are coming from the PNGTranscoder not being able
>> to render persian text correctly. PNGTranscoder is part of Apache Batik
>> (org.apache.batik.transcoder.image.PNGTranscoder).
>>
>> I have also created a very small eclipse project which does the same
>> thing, independent of any Activiti Explorer code, which helps a lot to
>> debug the problem. The project is attached.
>>
>> More details:
>>
>> OS: Ubuntu Linux 12.04 (3.2.0-44-generic #69-Ubuntu SMP Thu May 16
>> 17:35:01 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux)
>>
>> Java: java version "1.7.0_21"
>> OpenJDK Runtime Environment (IcedTea 2.3.9) (7u21-2.3.9-0ubuntu0.12.04.1)
>>
>> Batik version used by Activiti Explorer (found in the MANIFEST.MF of the
>> jar file included): 1.7+r608262
>>
>> Regards
>> --
>> Mostafa Mahdieh
>>
>
>
>
> --
> Mostafa Mahdieh
>
--
Mostafa Mahdieh
Re: Text rendering of some Persian characters has issues when
converting SVG to PNG
Posted by Mostafa Mahdieh <m....@gmail.com>.
Any ideas?
On Mon, Jun 24, 2013 at 5:33 PM, Mostafa Mahdieh <m....@gmail.com>wrote:
> Hi,
>
> I am using Activiti Explorer 5.12.1, which uses batik transcoder 1.7 as a
> library. When exporting bpmn models to png using Activiti Explorer, the
> output has issues on characters "ی", "ک", "پ" and "گ". Note that theses
> characters are part of the Persian character set of utf-8, and other
> characters which are in the common set of Arabic and Persian character
> sets, don't seem to have any problems.
>
> I have *attached* a sample of one of my tests. The text in the box should
> read
>
> "ما کب گپ جیب جوب پا"
>
> which is incorrectly shown as
>
> "ما کب گپ جیب جوب پا"
>
> I traced the problem in Activiti Explorer code to this small code snippet:
>
> =======================
> InputStream svgStream = new
> ByteArrayInputStream(modelForm.getFirstValue("svg_xml").getBytes("utf-8"));
> TranscoderInput input = new TranscoderInput(svgStream);
>
> PNGTranscoder transcoder = new PNGTranscoder();
> // Setup output
> ByteArrayOutputStream outStream = new ByteArrayOutputStream();
> TranscoderOutput output = new TranscoderOutput(outStream);
>
> // Do the transformation
> transcoder.transcode(input, output);
> final byte[] result = outStream.toByteArray();
> =======================
>
> It seems that the issues are coming from the PNGTranscoder not being able
> to render persian text correctly. PNGTranscoder is part of Apache Batik
> (org.apache.batik.transcoder.image.PNGTranscoder).
>
> I have also created a very small eclipse project which does the same
> thing, independent of any Activiti Explorer code, which helps a lot to
> debug the problem. The project is attached.
>
> More details:
>
> OS: Ubuntu Linux 12.04 (3.2.0-44-generic #69-Ubuntu SMP Thu May 16
> 17:35:01 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux)
>
> Java: java version "1.7.0_21"
> OpenJDK Runtime Environment (IcedTea 2.3.9) (7u21-2.3.9-0ubuntu0.12.04.1)
>
> Batik version used by Activiti Explorer (found in the MANIFEST.MF of the
> jar file included): 1.7+r608262
>
> Regards
> --
> Mostafa Mahdieh
>
--
Mostafa Mahdieh