This native extension allows you to read pressure sensitivity data from a pen tablet. It’s only been tested on Windows 7 with a Wacom Intuos 4. I’ll go through the build steps in the same format as last time.
Requirements:
Checkout the project on GitHub for all the code.
- Source files
- Project files for Visual C++ and Flash Builder
- Batch files so you don’t have to use the command line
- All intermediate files
The project contains some placeholder files that I cannot include in the repository because they are copyrighted by Adobe. After checking out the project, you need to:
- Replace FREPenTablet/FREPenTablet/FlashRuntimeExtensions.h with AIR_SDK/include/FlashRuntimeExtensions.h
- Replace FREPenTablet/FREPenTablet/FlashRuntimeExtensions.lib with AIR_SDK/lib/win/FlashRuntimeExtensions.lib
Now that everything is setup, you can try compiling everything yourself.
- Open FREPenTablet/FREPenTablet.sln in Visual C++ 2010
- Build the .dll (F7)
- Import PenTabletLib into Flash Builder
- Build the .swc (Ctrl + B)
- Open the .swc with a .zip editor, and extract library.swf to the same folder as the .swc
- Build the .ane (run PenTabletLib/bin/package.bat)
- Import PenTabletDemo into Flash Builder
- Build the .swf (Ctrl + B)
- Build the .exe (run PenTabletLib/bin-debug/package.bat)
If everything was successful, you can draw on the stage with pressure sensitivity!

#1 by Brad on October 2, 2011 - 4:58 am
Really awesome work! Thanks for sharing.
side note:
Not sure if you have done any native extensions for Android, but I have been struggling to pass BitmapData from actionScript to Java, do you have any idea how to do it?
There is a FREBitmapData class included in the FlashRuntimeExtension jar, but I havent been able to use it successfully.
#2 by Sean Fujiwara on October 6, 2011 - 2:18 am
I have not done any native extensions for Android. But, the high-level API should be exactly the same as the Windows version. So, you should be able to use my image processor extension as a starting point.
#3 by Brad on October 6, 2011 - 2:29 am
Thanks for getting back to me.
If you, or anyone else is interested, there is some info on using FreBitmapData objects for Android at
http://recycledinformation.blogspot.com/2011/10/air-extensions-in-java-frebitmapdata.html
#4 by Ky Lân on January 6, 2012 - 3:30 am
Hi ! And thanks a lot for sharing your code !
I’m an AS3 dev, not a C dev. Do you think there is a chance to port your code for MacOS ? Or it’s totally different ?
Thanks again !
#5 by Sean Fujiwara on January 6, 2012 - 3:35 pm
Wacom has an SDK for Mac OS X, so it should be very similar. But, I’ve never done any Mac development, so I’m not sure what’s involved. It would be much better if somebody who uses a Mac did it, because it’s hard for me to test. I won’t say “no chance”, but not soon.
#6 by parizer on March 11, 2012 - 5:22 am
Is it possible to track mouse and mouse clicks on Windows with AIR app in system tray (+native extension)?
#7 by parizer on March 11, 2012 - 5:44 am
PS. something like this http://flowingdata.com/2010/02/09/track-mouse-activity-on-your-computer/
#8 by Sean Fujiwara on March 11, 2012 - 11:26 am
Yes, it should be, it’s just a matter of getting those events in your DLL. I’m not sure exactly how, but here’s the MSDN page on mouse input: http://msdn.microsoft.com/en-us/library/windows/desktop/ms645533(v=vs.85).aspx