[Ipe-discuss] Ipe image format
Sebastian Kürten
sebastian.kuerten at fu-berlin.de
Mon Jan 6 10:39:39 CET 2014
Thank you very much, that was exactly the information I was looking
for. Got everything working with that now.
Sebastian
On Mon, 06 Jan 2014 03:35:37 +0900
Otfried Cheong <otfried at ipe.airpost.net> wrote:
>
>
> On 1/5/2014 8:23 PM, Sebastian Kürten wrote:
> > I'm working on a program that exports Ipe files. Now I try to insert
> > bitmaps via the <bitmap> element and referencing it via <image>
> > later in the file. What I did not find out yet is what format the
> > bitmap is encoded with.
> >
> > Since I did not find any information on the Web, I took a look at
> > what Ipe will produce. When I use Ipe to create a file with a
> > bitmap, I get encoding="base64", Filter="FlateDecode",
> > BitsPerComponent="8", length="x"
> >
> > I am able to decode the base64 string to some binary blob of length
> > x, but what is the format of the decoded string?
>
> Have you looked at
>
> http://ipe7.sourceforge.net/manual/manual_42.html
>
> and
>
> http://ipe7.sourceforge.net/manual/manual_44.html ?
>
> Ipe deliberately accepts a simpler format than it produces itself, to
> make it easy for other software to produce Ipe-compatible files.
>
> If you just want to include a bitmap in a drawing, the easiest would
> be to say
>
> <image rect="100 100 200 200" width="600" height="400"
> ColorSpace="DeviceRGB" BitsPerComponent="8">
> 000000ff0000aaff00125c7d.....
> </image>
>
> In other words, you don't need the <bitmap> element. you can put the
> bitmap data right inside the <image> element.
>
> If you omit the Filter attribute, then the image data is simply the
> pixels of the image, from top left to bottom right, row by row. In
> my example I omitted the encoding attribute, and so I provide image
> data in hexadeximal. So 000000 is a single black pixel, ff0000 a red
> pixel, 00ff00 a green pixel, and ffffff a white pixel.
>
> Alternatively you can provide the same data in base64 und give the
> encoding attribute. If you want to use Filter="FlateDecode", you
> would need to first compress the raw image byte stream using zlib and
> then convert it to ASCII (either in hexadecimal or base64).
>
> Cheers,
> Otfried
>
> _______________________________________________
> Ipe-discuss mailing list
> Ipe-discuss at lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/ipe-discuss
More information about the Ipe-discuss
mailing list