On May 27, 2005, at 7:00 PM, nickg wrote:
> On May 27, 2005, at 9:39 PM, Bob Ippolito wrote: > > >> >> On May 27, 2005, at 6:32 PM, nickg wrote: >> >> >> >>> What's the latest with Apple's python extensions to use Quartz2D? >>> I'd like to use them with the latest python release but I can't >>> figure out where the original source code for the extensions are >>> so I >>> can't do a build. It looks like they used SWIG, but that's about as >>> much as I figured out. >> >> They're not open source. You can't use them with anything but the >> release of Python that ships with Mac OS X. File a bug. I filed >> mine over a year ago: >> >> rdar://3540071 >> Python CoreGraphics extension can't readily be used by other Python >> versions >> 26-Jan-2004 02:10 PM >> >> I updated it this april to say "hey, this actually matters now that >> 2.4.1 is out there", but I still have not received a response. >> >> I believe the reason is that the extension does some really >> horrible nasty SPI hacks in order to lift some of the restrictions >> that are normally imposed by these APIs (WindowServer connections, >> etc.) At least, that's what I gathered from reverse engineering it >> a bit. >> >> >> >>> Or this is something I might be able to do with PyObjC (which I >>> never >>> have used)? Or is there another alternative? >> >> It depends on what you're trying to do. The Cocoa APIs are higher >> level than Quartz2D and imposes a few restrictions along the way. > > Odd, the Python API is nearly 1-1 with the CoreGraphics C API so I > wouldn't expect any hacks. Oh well. Image loading and initialization are whack. It also installs several categories on AppKit classes that probably break stuff if you happen to import CoreGraphics from a GUI app. File a bug. >> I'm just using it to "draw" into a PDF or buffer to save a file. No >> UI or Windows needed. Can PyObjC make these calls? I'm new to the >> all the mac-python trickery. Again, it depends. The API is different, so for some definitions of "draw" it will work just fine, but not all of them. You can probably do something equivalent, but it's going to require a WindowServer connection (i.e. invoked by pythonw as root or by the logged-in user). File a bug. -bob _______________________________________________ Pythonmac-SIG maillist - Pythonmac-SIG@python.org http://mail.python.org/mailman/listinfo/pythonmac-sig