Hi list

I have an old script using the CoreGraphics API that's no longer working 
properly since Snow Leopard.
I' running Lion with the default Python, which is 2.7.1.
I googled about this and it seems that's because Python is 64-bit now and some 
old data types don't work anymore.


The first error I got was in the function CGBitmapContextCreateWithColor.
The Console spits the following error:
---
TypeError: in method 'CGBitmapContextCreateWithColor', argument 4 of type 
'CGFloat const [5]'
---

My code looks like this:
c = CGBitmapContextCreateWithColor(new_Width, new_Height, cs, (0,0,0,0))

The problem is in the last argument "(0, 0, 0, 0)" [a color reference] which, 
the new API expects to be CGFloatArray.
I couldn't find any documentation on how to create such an object in python 
but, fortunately, I found some code here 
http://stuffineededtoknow.blogspot.pt/2009_01_01_archive.html  that solved this 
issue:
---
bg = CGFloatArray(5)
c = CGBitmapContextCreateWithColor(new_Width, new_Height, cs, bg)
---


But now I'm getting another error (and I'll probably get some more) with 
another function that expects a CGFloat object instead of a plain integer.
The code looks like this:
---
self.pdf.drawPlainTextInRect(text_prov, textRect, 10)
---

And the error (again caused by the last argument, in this case "10"):
---
TypeError: in method 'CGContext_drawPlainTextInRect', argument 4 of type 
'CGFloat'
---


I'm sure that it can't be so hard to create a CGFloat but I didn't find the 
right documentation or sample code to do it.
Does anybody know how to do this?

Thanks in advance.
João
_______________________________________________
Pythonmac-SIG maillist  -  Pythonmac-SIG@python.org
http://mail.python.org/mailman/listinfo/pythonmac-sig
unsubscribe: http://mail.python.org/mailman/options/Pythonmac-SIG

Reply via email to