Tough question. I lean towards Olivia Wilde or Amber Heard, though since she's now going to be Mera in the DCU, she's out of the running. If it was ten years ago, I'd say Carla Gugino would be perfect as Zatanna (and in my opinion she could still do it if she wants, I just don't see the Powers That Be awarding her the role)