I'm kinda like you. Shy in person but can express feelings and thoughts through words. So what I did about 3 months ago at school was make a little note with my cell number on it saying "Call or Text. I would like to get to know you". You can put your name on it. But I didn't because then that's a question that she can ask. It's a good convo-starter.
Now approching takes a lot of bravery and swag. What I did was just walk up to her, ask for her name, give her the note, and walk away. Smile and try not to look away from her because girls like confidence in a guy. So if you look at her and say all this, it will keep her attention. Speak loud enough so she can hear you but not screaming at her.
After walking away just be patient. If you did good, she'll call/text you later on in the day (If she doesn't then there is just more fish in the sea my friend).Then you can ask her questions and have her ask you questions. Keep a conversation going, make her laugh, etc. And when the conversation is dying a little, see if she'll want to hang out sometime (Try the upcomming weekend). Going to the movies is not a lame date. So if you can take her to go see something she wants to. Or maybe y'all can just go hang out at the park. Get to know each other outside of school or whatever.
Ever since I've done this I have met one amazing girl. And we've gotten to know each other well.
I <3 Young Love. ^_^