Designed these caps to be printed in two colors. Tested on a Makerbot Replicator 2 and a Tevo Black Widow. Both printers are single extrusion but the print can be paused just before the text layer and filament changed.
This was easiest with Black Widow because it runs Marlin Firmware. I just found which layer the text started on and put a M600 command in the gcode at the start of that layer which causes it to start a filament change. I believe same can be done with other printers using a pause command or filament change (varies from machine to machine).
Tested prints with PLA, Nylon and both of them worked.