Is there any way you could print out the code that makes up your Bitcoins and store them on physical paper?
This is possible, but I would go one step further and encrypt the wallet first. Here is how:
gpg --compress-algo BZIP2 --bzip2-compress-level 9 --encrypt -a -o text_crypt_wallet.txt wallet.dat
This will compress and then encrypt your wallet using your private GPG key. The -a flag tells gpg to give you ascii-armored (printable) output. The -o flag tells gpg to name the output file "text_crypt_wallet.txt". You can then print this out. The file will look something like this:
-----BEGIN PGP MESSAGE-----
gz9DKDc3Qb+idbP5gOn0TIZ5Sg74zP7ds4eoezpG5HPSvt3RXARQcvSeUrW8htFD
<lots of stuff>
aTEOO/lqWw/BzwZN
=FdZO
-----END PGP MESSAGE-----
I recommend first moving bitcoins to a fresh wallet with a single address via a single transaction, so as to have as small a file as possible. Otherwise, you may end up with many pages of output.
Make sure the font is OCR-readable (
http://en.wikipedia.org/wiki/Optical_character_recognition) and large enough to avoid scanning and transcription errors. Also, make sure to keep track of page numbers.
If you don't have a GPG key, you can encrypt it via just a symmetric cipher and password:
gpg --compress-algo BZIP2 --bzip2-compress-level 9 --symmetric -a -o text_crypt_wallet.txt wallet.dat
Just don't forget your password.
By default, GPG uses CAST5 as the symmetric cipher. Note that you can always specify which symmetric cipher you want to use (all of gpg's ciphers are considered strong) with one of these flags:
--cipher-algo 3DES
--cipher-algo AES128
--cipher-algo AES192
--cipher-algo AES256
--cipher-algo BLOWFISH
--cipher-algo CAMELLIA
--cipher-algo TWOFISH
To recover the wallet, you can scan the document and OCR it to a file. Then decrypt it:
gpg --decrypt -o wallet.dat scanned_text_file.txt
If you are running linux, you probably already have gnupg. If you have windows, you can get gnupg here:
http://www.gpg4win.org/