since myimage is using pygame.image.load, it might be indexed?  On the
other hand, it's also possible that pygame.image.save is actually
performing some compression when it saves to a png format?  I'm not sure
offhand, but something to check out.


On Wed, Aug 13, 2014 at 10:02 AM, diliup gabadamudalige <dili...@gmail.com>
wrote:

> Sorry there was a small error in the previous message. My apologies.
>
> import pygame
> import StringIO
>
> myimage = pygame.image.load("88keykbd.png")
> buff = StringIO.StringIO()
> buff.name = '88keykbd.png'
> pygame.image.save(myimage, buff)
>
> putimage = buff.getvalue()
> print "buff:", type(buff), "myimage:", type(myimage), "getimage:",
> type(putimage)
>
> print len(putimage)
> with open('myscrambledimage.dat', 'w') as newfile:
>     newfile.write(putimage)
>
> with open('myscrambledimage.dat', 'r') as newfile:
>     getimage= newfile.read()
> print len(getimage)
>
>
>
> On Wed, Aug 13, 2014 at 7:30 PM, diliup gabadamudalige <dili...@gmail.com>
> wrote:
>
>> can any good soul out there tell me why these two files are not the same
>> size?
>>
>> import pygame
>> import StringIO
>>
>> myimage = pygame.image.load("88keykbd.png")
>> buff = StringIO.StringIO()
>> buff.name = '88keykbd.png'
>> pygame.image.save(myimage, buff)
>>
>> putimage = buff.getvalue()
>> print "buff:", type(buff), "myimage:", type(myimage), "getimage:",
>> type(putimage)
>>
>> print len(getimage)
>> with open('myscrambledimage.dat', 'w') as newfile:
>>     newfile.write(putimage)
>>
>> with open('myscrambledimage.dat', 'r') as newfile:
>>     getimage= newfile.read()
>> print len(getimage)
>>
>> len(putimage) and len(getimage) are hugely different in size and I can't
>> see why as it is putimage that is written to file and then read back as
>> getimage.
>>
>> Clarification on this would be immensly welcome.
>>
>> Thank you in advance
>>
>>
>> On Tue, Aug 12, 2014 at 9:53 PM, diliup gabadamudalige <dili...@gmail.com
>> > wrote:
>>
>>> Hi Radomir,
>>>
>>> Thanks for the response.
>>> ok. This is what i want to do
>>> i want to try to convert images into a string format and store them on
>>> disk. Better if they are unprintable characters.
>>> then when i want to see them i will run them thrugh a decryption python
>>> script and viola they will be displayed in pygame
>>> when i close the program again i will have only the encoded 'imageds' on
>>> the hd.
>>> I did this using
>>>
>>> get_screen = SCREEN.subsurface(0, 0, SCREENW, SCREENH)
>>> with open(image_filename, "rb") as imageFile:
>>>     imagestr = base64.b64encode(imageFile.read())
>>> ## create the text file name to save to disk
>>> text_filename = newpath + "s" + str(va.page) + ".dat"
>>> ## save imagestr(image as a textfle) to disk
>>> with open(text_filename, "wb") as f:
>>>     f.write(imagestr)
>>>
>>> I wanted a better way and hence the question.
>>>
>>> stringio or cstringio is fine. i can save the string to disk but how can
>>> i convert it back to an image file?
>>>
>>> Thank you for your help.
>>>
>>>
>>>
>>>
>>> On Tue, Aug 12, 2014 at 11:12 AM, Radomir Dopieralski <
>>> pyg...@sheep.art.pl> wrote:
>>>
>>>> On 08/11/2014 09:53 PM, diliup gabadamudalige wrote:
>>>> > type(f) gives <type 'instance'>
>>>> > yourimage = f.getvalue()
>>>> > with open('myscrambledimage.dat', 'w') as f:
>>>> >     f.write(yourimage)
>>>> > so i coukld write this file to disk
>>>> >
>>>> > now how can i convert this back to an image?
>>>> > Thanks in advance
>>>>
>>>> What are you actually tryig to do?
>>>> I'm sure there is a simpler way.
>>>>
>>>> --
>>>> The Sheep
>>>>
>>>
>>>
>>>
>>> --
>>> Diliup Gabadamudalige
>>>
>>> http://www.diliupg.com
>>> http://soft.diliupg.com/
>>>
>>>
>>> **********************************************************************************************
>>> This e-mail is confidential. It may also be legally privileged. If you
>>> are not the intended recipient or have received it in error, please delete
>>> it and all copies from your system and notify the sender immediately by
>>> return e-mail. Any unauthorized reading, reproducing, printing or further
>>> dissemination of this e-mail or its contents is strictly prohibited and may
>>> be unlawful. Internet communications cannot be guaranteed to be timely,
>>> secure, error or virus-free. The sender does not accept liability for any
>>> errors or omissions.
>>>
>>> **********************************************************************************************
>>>
>>>
>>
>>
>> --
>> Diliup Gabadamudalige
>>
>> http://www.diliupg.com
>> http://soft.diliupg.com/
>>
>>
>> **********************************************************************************************
>> This e-mail is confidential. It may also be legally privileged. If you
>> are not the intended recipient or have received it in error, please delete
>> it and all copies from your system and notify the sender immediately by
>> return e-mail. Any unauthorized reading, reproducing, printing or further
>> dissemination of this e-mail or its contents is strictly prohibited and may
>> be unlawful. Internet communications cannot be guaranteed to be timely,
>> secure, error or virus-free. The sender does not accept liability for any
>> errors or omissions.
>>
>> **********************************************************************************************
>>
>>
>
>
> --
> Diliup Gabadamudalige
>
> http://www.diliupg.com
> http://soft.diliupg.com/
>
>
> **********************************************************************************************
> This e-mail is confidential. It may also be legally privileged. If you are
> not the intended recipient or have received it in error, please delete it
> and all copies from your system and notify the sender immediately by return
> e-mail. Any unauthorized reading, reproducing, printing or further
> dissemination of this e-mail or its contents is strictly prohibited and may
> be unlawful. Internet communications cannot be guaranteed to be timely,
> secure, error or virus-free. The sender does not accept liability for any
> errors or omissions.
>
> **********************************************************************************************
>
>

Reply via email to