If you want to use the constant current regulation feature of the AS1115 you can use a split supply +/-5 V where the cathode drivers are fed from -5 V.
I don't see a way to avoid the inverters for the digit outputs, but there are BJTs with resistors included or P-MOSFET arrays available.
The ULN2804 (or ULN2004) can be used as sink driver array including bias resistors if you need a compact design, but it would operate at the limits. Discrete transistors or MOSFET are needed at higher currents.
It is not possible to drive the decimal points directly via ULN because this would force the SEG outputs below GND. Adding dummy LEDs or z diodes in series would work.
This solution is only useful for low LED currents if the full 8x8 matrix is needed. Assume 32 mA usable SEG driver strength there is only 4 mA average segment current possible.
simulate this circuit – Schematic created using CircuitLab
I built some displays using these very large LED digits and this is what I have learned from it:
- They are not as bright as you think. Don't be disappointed later!
- Do not use time multiplexing with drivers like AS1115, MAX7219 or equivalent if you have more than 3 high power digits. Consider the required currents: Assume 20 mA average segment current. At 1:8 multiplex this needs 160 mA driver strength of the segment driver and 1.12 A sink capability per digit driver. LEDs don't tolerate this 1:8 duty cycle at low frequencies.
- EMI is a nightmare with 56 long wires/tracks switching more than 1 A.
- Use the common anode version with resistors in the cathode paths and one power shift register per digit (NPIC6C595/STPIC6C595/TPIC6C595). No EMI problems and no excessive currents in the LEDs. 3 wire SPI instead of I2C.