users-prolog
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: put_code


From: m . degregorio
Subject: Re: put_code
Date: Thu, 1 Nov 2012 13:43:36 +0100
User-agent: Internet Messaging Program (IMP) H3 (4.1.6)

It worked perfectly. The only problem I have now is the following.

The PPM format has three line at the beginning such as:

P5
32 32
255

where P5 is the flag for binary greyscale
32 32 are the size of the image
255 number of greylevels

Just after that starts the binary part of the file that I can
generate following your good suggestion.

Now, how can I write, in the same file, the first three text line
followed by the binaries ones?

Massimo

Citando Salvador Pinto Abreu <address@hidden>:

On Nov 1, 2012, at 11:30, address@hidden wrote:

I am trying to automatically generate PPM P5 files.
In order to write the binary part of the files, I am using

put_code/1

maybe, considering you are building a non-text file, you'd be better off having Prolog use a binary stream, in which case you'd be using the put_byte/1 built-in.

consider this, for instance:

11:56:56$ gprolog
GNU Prolog 1.4.1
By Daniel Diaz
Copyright (C) 1999-2012 Daniel Diaz
| ?- open(foo, write, _FOO, [type(binary), alias(foo)]),
     set_output(foo),
     put_byte(0), put_byte(1), put_byte(2), put_byte(3),
     close(foo).

(1 ms) yes
| ?- halt.

11:57:05$ od -b foo
0000000   000 001 002 003
0000004
11:57:10$ ls -l foo
-rw-r--r--  1 spa  staff     4B Nov  1 11:56 foo
11:57:19$

hope this helps
-salvador





----------------------------------------------------------------
Massimo De Gregorio
Research Scientist
Istituto di Cibernetica "Eduardo Caianiello" - CNR
Via Campi Flegrei 34
Comprensorio "A. Olivetti" - Ed. 70
80078 Pozzuoli (NA) - ITALIA
Tel. (+ 39) 0818675151
Fax: (+ 39) 0818675158
Skype: massimo.de.gregorio
E-mail: address@hidden
----------------------------------------------------------------

----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]