[prev in list] [next in list] [prev in thread] [next in thread]
List: batik-dev
Subject: RFE in WMF transcoder
From: Hervé_Girod <herve.girod () club-internet ! fr>
Date: 2004-08-02 17:39:46
Message-ID: 001701c478b7$bb70d9e0$fcbc223e () hppav
[Download RAW message or body]
Hello ! I have some remarks on the WMF transcoder package.
I noticed that the WMF transcoding process don't handle the charset in =
which the fonts are defined in the WMF file, the result being that, for =
example, greek characters are not properly handled : When some text is =
encountered (META_TEXTOUT), the WMFRecordStore uses the standard charset =
to decode the incoming bytes. It should use the charset ID encountered =
for the last font (META_CREATEFONTINDIRECT), and decode the bytes =
accordingly.
Another problem I encountered is that the decoding of WMF text =
(META_TEXTOUT) seems to depend on the fact that there is exactly as many =
bytes as there is characters in the text. In fact, WMF files code =
strings in U16 cells, each cell storing two characters, so if there is =
an odd number of characters, it is necessary to read the last remaining =
half of U16, or the reading of the file will stop abruptly after that...
[Attachment #3 (text/html)]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2800.1400" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>Hello ! I have some remarks on the WMF transcoder
package.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>I noticed that the WMF transcoding
process don't handle the charset in which the fonts are defined in the WMF
file, the result being that, for example, greek characters are not properly
handled : </FONT><FONT face=Arial size=2>When some text is encountered (<FONT
size=3><FONT size=2>META_TEXTOUT</FONT>), </FONT><FONT size=2>the WMFRecordStore
uses the standard charset to decode the incoming bytes. It should use the
charset ID encountered for the last font (<FONT size=3><FONT
size=2>META_CREATEFONTINDIRECT</FONT>)</FONT>, and decode the bytes
accordingly.</FONT></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Another problem I encountered is that the decoding
of WMF text (<FONT size=3><FONT
size=2>META_TEXTOUT</FONT>)</FONT> seems to depend on the fact that there
is exactly as many bytes as there is characters in the text. In fact, WMF files
code strings in U16 cells, each cell storing two characters, so if there is
an odd number of characters, it is necessary to read the last remaining half of
U16, or the reading of the file will stop abruptly after
that...</FONT></DIV></BODY></HTML>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic