Many thanks Paul__B. I have amended the offending paragraph - please review it again for me?
I hope the OP has gone away happy with his answer, because this thread it getting a bit silly now! 2 ICs and four exotic surface-mount-only FETs just to drive a cheap red 4 digit display...
He may well have had 12 Arduino lines available and just wanted 4 bog-standard NPNs.
BTW, did anyone else notice that the OP's question was 10 sentences long, of which 5 began with the word "so"? (am I turning into Sheldon Cooper?)
The ATmega will source or sink 30mA even. [although the aggregate limits kick inat some point
The one word I probably shouldn't mention in this thread is Charlieplexing!
The only problem is the extra complexity in the code.
The table halfway down this page might help.
Did I not introduce the only sensible fork of this quite promptly when I pointed out "way back then" that a MAX7219 will perform the job perfectly?
I just realised red913 said his display is common anode, but max7219 works with only common cathode so the display would need to be replaced to use the max.
Also attach a resistor between base and emitter on all 2N3906, 10 kOhm will be OK.