base64はURLが長すぎるので、一部Androidの標準ブラウザでは画像を長押し保存できない(2016年6月現在)。これはURLの文字数制限にひっかかるのが原因で、画像のサイズは関係なし。
(aタグにtarget="_blank"つけて別タブで開いても、download属性を使ってみても、画像は保存できない。)
検証はしていないが、考えられるのはblobへ変換する方法
canvasで描画したデータをtoDataURL()メソッドでのsrc属性に指定後、画像の保存ができない!
これでできなければ対処法はないので、標準ブラウザを使えない旨を明記する。Dにはこんな感じの説明を添えて。
Android端末は「Chrome」でのみ検証する。なぜならGoogleが「標準ブラウザ」のサポートを終了しているから。標準ブラウザのアップデートをしてくれないということは、バグが発生した時に対応できない。さらにアクセス解析では「Chrome」のシェアが「標準ブラウザ」を上回っている。
結論、サーバーサイドでjpeg/pngをつくるのが確実。