It doesn't have to
be on the Internet, it just needs a way to send its transaction bytes to the network. This can be done through a proxy (if you wanted, you could write down the hex representation of the transaction and paste it into
https://blockchain.info/pushtx - your wallet would not need to be online for this). Our VisualBTC uses animated QR codes to do the same.
Yeah I saw your post about it before just skim read it but it sounded like something I was considering in developing, but then also maybe extend it to hardware wallets in the future.