Why Did Maggie Gyllenhaal Replace Katie Holmes?

Katie Holmes was originally slated to reprise her role as Rachel Dawes in The Dark Knight, but she was ultimately replaced by Maggie Gyllenhaal. The most likely reason for this is that Holmes was pregnant with her second child during…