I would like to post-process diff output and then pass the results to a graphical viewer, such as kdiff3 or xxdiff. If possible, I would like to be able to highlight in-line differences using different colors.
If you can use windows, there is a great program that does this called WinMerge
Here is an example:
For highlighting, try colordiff or highlight, with the
--syntax=diff argument; however, you don't need those with a graphical diff viewer as those have their own highlighters, so you should be able to just use a graphical diff viewer normally. The aforementioned [meld][http://meldmerge.org/] is one such tool, and you apparently already know about kdiff3.
If you're diffing non-files (e.g.
<(command args...) subshell FIFOs in bash), all you need to do is redirect the non-files' content into files and run the graphical tool on that.
Perhaps this is not what you're looking for exactly, but you can do this in using vim:
vimdiff file1 file2 file3