Printing RSS on printer

Hello, I just got my Arduino Uno + Eternal Shield + Adafruit Thermal Printer.
I totally love them.

However, as I don't use Twitter, I'd love to hook it up to my blog. (recent comment RSS)
One of the biggest concern is how to store and print it to the printer.

It seems like when Arduino gets data from the internet, it receives byte by byte and spread it to the serial.
If I do same way with the thermal printer, I see that there are one character every line. (in other words, printing vertically)

So, I was thinking about using array as Arduino's Twitter example did. However, blog comments easily go over 140 and I'm actually looking at 2000 ~3000 characters (want to test for newspaper feed).

Here are the question, any recommendation of the handling method? I've been working with PHP and never had to worry about such memory issues.
As I am 1st day Arduino user, if you could provide any example, that would be so nice.

Before I forget, thank you so much for reading and your comment.

gon770:
I'm actually looking at 2000 ~3000 characters (want to test for newspaper feed).

The Uno has 2048 bytes of RAM, if that helps with your design.

If I do same way with the thermal printer, I see that there are one character every line. (in other words, printing vertically)

Without looking at the documentation for those devices, it sounds like you are using a println method rather than plain print when you send data.

Thanks a lot for comments, Nick and wildbill.

Wildbill:
I did not use println; I use printer.print for that one. However, I realized that it still works just like println.
Assume blog article is long, how does Arduino handle that?

Nick:
How do you handling with 2kb RAM? Does Arduino has any function that deactive memory after variable became useless?

Well, you just do a line at a time. Receive one line, print it, etc.

Thanks for your advise, Nick.
So, you're recommending line by line.

In this case, how do I prevent memory leak?
With a given example from Arduino,

String rss; //without defining size

rss = "1st line news feed";
printer.print(rss);
rss = "2nd line news feed";
printer.print(rss);

Is this what you recommend?

Thanks in advance

I do not recommend you use the String class, because that is likely to fragment memory.

Say you have a maximum line size of 100 bytes.

You could have:

char myLine [101];  // extra byte for the trailing 0x00

Read into myLine from your RSS feed. Print it. Repeat.

So, you're recommending line by line.

you can also do it char by char, not as efficient but probably fast enough.

Thank you so much, Nick and Robtillaart. Your answers are very helpful.
Let me try with your advise.

Again, thanks a lot

Can you please provide a little bit of code. I want to send image data (a byte array) from my server to a thermal printer. My ethernet shield doesn't have an SD card slot so I need a little help with buffers or requesting smaller chunks of data for the theral.printBitmap() method.

My own topic is here if that helps anyone else with a similar project: Images over HTTP - Project Guidance - Arduino Forum

Thanks