I'm a big fan of the letter. Handwritten is best, but email can be alright. Not a big fan of the text message.

There are many good things about a letter. First of all, you can think carefully about what you say in a letter. You can explain yourself fully without being interrupted. And then she doesn't need to respond immediately. She can take time and digest it. Read it again. Think about her response before making it. Or even make no response.

She may not forgive you right away. But the fact that you did actually apologize can only lessen her anger. maybe not immediately, but certainly over time. No one can change the past. An apology and a commitment to change the future is the best we can do.