/[public]/psiconv/trunk/README
ViewVC logotype

Diff of /psiconv/trunk/README

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 2 Revision 152
6they may profit from the data I collected. 6they may profit from the data I collected.
7 7
8The package consists of several parts: 8The package consists of several parts:
9 * Documentation about Psion 5 data formats; 9 * Documentation about Psion 5 data formats;
10 * A library which can be linked against application that have to read 10 * A library which can be linked against application that have to read
11 (and in the future, perhaps write) Psion 5 files; 11 and write Psion 5 files;
12 * An example command-line program which reads Psion files and writes 12 * An example command-line program which reads Psion files and writes
13 more commonly used formats. 13 more commonly used formats.
14 14
15 15
16DATA FORMATS 16DATA FORMATS
18 18
19As far as I know, and have gathered from the newsgroups, Psion does not want 19As far as I know, and have gathered from the newsgroups, Psion does not want
20or is not able to release the data formats of the saved files of their 20or is not able to release the data formats of the saved files of their
21internal applications. I am trying to reverse engineer these data formats 21internal applications. I am trying to reverse engineer these data formats
22and to document them for general use. At this moment, I understand their 22and to document them for general use. At this moment, I understand their
23Word, TextEd, Sketch, MBM and Record files. I want this information to 23Word, Sheet, TextEd, Sketch, MBM, Clipart and Record files, as well as a
24few other less important formats. I want this information to be available
24be available to everyone, in order to write better file conversion utilities 25to everyone, in order to write better file conversion utilities for popular
25for popular (non-)Windows programs. 26(non-)Windows programs.
26 27
27All documentation is written in Psion 5 Word. Fortunately, the utilities 28All documentation is written in Psion 5 Word. Fortunately, the utilities
28in this package can translate it to HTML and other formats. 29in this package can translate it to HTML and other formats.
29 30
30Unlike all other files in this package, the *.psi files in the directory 31Unlike all other files in this package, the *.psi files in the directory
38 39
39THE LIBRARY 40THE LIBRARY
40=========== 41===========
41 42
42libpsiconv is a library of routines that you can link against your own 43libpsiconv is a library of routines that you can link against your own
43application. It allows you to read Psion 5 files, and helps you output 44application. It allows you to read Psion 5 files. Note that it comes
44more commonly used files. Note that it comes under the GNU General 45under the GNU General Public License; that means that you can only link
45Public License; that means that you can only link it to programs which 46it to programs which are also covered by that license. You can contact
46are also covered by that license. You can contact me if you need other 47me if you need other license terms.
47license terms.
48 48
49Libpsiconv consists of two parts. The parser reads the Psion file into its 49The following formats can be read at this moment:
50internal data structures. The generator reads these data structures and 50 Word Word processor files
51generates an output file in some other format. Libpsiconv is written to make 51 TextEd OPL editor files
52it easy to add generators, without having to modify the parser side. 52 Sketch Picture files
53Actually, it is a lot easier to write a generator than to modify the parser! 53 MBM Alternate picture format; several pictures can be combined in it
54 ClipArt Internal picture format; several pictures can be combined in it
54 55
55The parser is quite good at the moment. Page layout codes are not yet 56The parser is quite good at the moment. Page layout codes are not yet
56read, but almost everything that is described in the documents in the 57read, but almost everything that is described in the documents in the
57format directory is supported by it. Of course, it can also not yet 58format directory is supported by it; but it can not yet cope with
58cope with inserted objects (ie. documents in some other format) and 59inserted objects (ie. documents in some other format).
59other as of yet undocumented things.
60
61The current HTML target is not very ideal. HTML is just not made to
62represent detailed layout considerations: it is a document description
63language. Still, the output is quite readable already. Of course, headers
64and footers are not displayed, because there is no notion of pages in
65HTML. Tabs are also difficult; they are not supported yet. This can be
66solved using tables, but it is quite hard to do it correctly. Some other
67things are just approximated too.
68
69The HTML4 target uses style sheets. You need a not-too-old browser for
70this to display correctly. Generally, the output of this generator is
71of higher quality than the normal HTML generator's.
72
73A plain TEXT target just grabs all text, without any futher conversions.
74
75I would very much like to add other targets, like (La)TeX, RTF (Rich Text
76Format) and XML (for AbiWord). If other people want to work on this, please
77let me know! Of course, you could also write your own conversion applications
78just using my data format description. Native import/export filters for
79some word processors would be very welcome!
80 60
81Documentation is scarce; please examine the source code or the example 61Documentation is scarce; please examine the source code or the example
82psiconv program. Some things may also be found in the doc subdirectory. 62psiconv program. Some things may also be found in the doc subdirectory.
83 63
84 64
89more commonly used formats. It is linked against libpsiconv, and can 69more commonly used formats. It is linked against libpsiconv, and can
90handle anything that it can. 70handle anything that it can.
91 71
92Please enter `psiconv --help' if you want to know about its syntax. 72Please enter `psiconv --help' if you want to know about its syntax.
93 73
74The current HTML3 target is not very ideal. HTML is just not made to
75represent detailed layout considerations: it is a document description
76language. Still, the output is quite readable already. Of course, headers
77and footers are not displayed, because there is no notion of pages in
78HTML. Tabs are also difficult; they are not supported yet. This can be
79solved using tables, but it is quite hard to do it correctly. Some other
80things are just approximated too.
81
82The HTML4 target uses style sheets. You need a not-too-old browser for
83this to display correctly. Generally, the output of this generator is
84of higher quality than the normal HTML generator's.
85
86A plain TEXT target just grabs all text, without any futher conversions.
87
88The RTF target is not finished yet; in fact, it is no usable at all
89right now.
90
91All ImageMagick graphic output formats are supported; depending on how
92you compiled ImageMagick, this is betwee 20 and 50 different formats.
93Your favorite one should be somewhere in there...
94
95I would very much like to add other targets, like (La)TeX, RTF (Rich Text
96Format) and XML (for AbiWord). If other people want to work on this, please
97let me know! Of course, you could also write your own conversion applications
98just using my data format description. Native import/export filters for
99some word processors would be very welcome!
100
94Psiconv is licensed under the GPL. Please read the included file COPYING 101Psiconv is licensed under the GPL. Please read the included file COPYING
95for exact licensing information. Please contact me if you need some other 102for exact licensing information. Please contact me if you need some other
96licensing terms. 103licensing terms.
97 104
98 105
100============================ 107============================
101 108
102Starting with version 0.2, psiconv should keep all namespaces unpoluted. 109Starting with version 0.2, psiconv should keep all namespaces unpoluted.
103Starting with version 0.4, the conversion routines are linked into a 110Starting with version 0.4, the conversion routines are linked into a
104(static or shared) library. Version 0.5 has autoconf and libtool support, 111(static or shared) library. Version 0.5 has autoconf and libtool support,
105and should run on many more platforms. 112and should run on many more platforms. Version 0.6 has support for
113graphics.
106 114
107High on the TODO list are input routines for Sketch, MBM and Record files. 115High on the TODO list are input routines for Record files.
108Sheet files will be next. I am running into some trouble understanding 116Sheet files will be next. I am running into some trouble understanding
109Data and Agenda files, but with a little luck, I'll figure it out after 117Data and Agenda files, but with a little luck, I'll figure it out after
110all. This is more long-term though. 118all. This is more long-term though.
111On the output side, I hope RTF will soon be done. This will allow most 119On the output side, I hope RTF will soon be done. This will allow most
112office tools to read the Psion files. 120office tools to read the Psion files.

Legend:
Removed from v.2  
changed lines
  Added in v.152

frodo@frodo.looijaard.name
ViewVC Help
Powered by ViewVC 1.1.26