ゲレの工房

ゲーム好きの中の人が、自分が作りたいアプリを作る記録です

FF14雑記:おはララジェネレータがChromeでcanvasからダウンロードするときに「失敗 - ネットワークエラー -」と出て動かなかった時の対処法


スポンサーリンク


私が作成しているおはララジェネレータで、「失敗 - ネットワークエラー」が発生するようになったと報告を聴き、自分のPCでも再現してしまったので調査を行いました。その対処法をメモしておきます。
おはララジェネレータ


f:id:gelehrtecrest:20190218040338p:plain
失敗 - ネットワークエラー

そもそもどんなアプリだっけ

スクリーンショットにロゴを張り付けるだけのアプリです。Canvasで合成を行い、合成結果のCanvasを右クリックして画像ダウンロードできるようにしていました。

どうやらファイルサイズに問題が

元々既知の問題で既に解決されていたはずの問題でもあるのですが、2MB以上のファイルダウンロードに失敗する傾向があります。これをロゴを含めると、元のスクリーンショットのファイルサイズが小さくないと動かないようです。

例 - PNG(2.02 MB (2,124,458 バイト))

これではネットワークエラーが発生しました。
f:id:gelehrtecrest:20190218044329p:plain

例 - 同じファイルをJPGに(411 KB (421,137 バイト))

これだと上手くいくかと思いましたが、生成されたファイルがPNGですのでどちらにしろ失敗のようです。
f:id:gelehrtecrest:20190218044709j:plain

例 - 元のファイルPNGの画像サイズ・大きさを小さくする(912 KB (934,006 バイト))

これだと上手くいきますね。生成されたファイル自体が小さくなるため、ダウンロードも可能なようです。
f:id:gelehrtecrest:20190218045201p:plain

とりあえずの対処法

ユーザーに出来ること

元のPNGファイルのサイズを小さくする

お手数ですが、元のPNGファイルのサイズを小さくする方法が考えられます。これは本当にユーザの手数をかけてしまうのでやってもらいたくない方法なのですが、この場合しょうがないです。

ローカルのロゴをアップロードし、ダウンロードボタンを利用する

この方法はファイルサイズに関係なく使えます。今後はこの方法を主流にしていきたいと思っていますので、この方法が一番の推奨です。

Chromeの修正が終わるまで待つ

Chromeの仕様が変わったためにファイルサイズが大きいものがダウンロードできなくなってしまっているので、Google側がChromeの修正をしてくれるのを待つのも一つの手です。ただいつ直るか。本当に直してくれるのか不明です。

私にできること

ダウンロードボタンを有効利用する

実はURLで指定している場合でも、このサーバーと共に入っているロゴであればダウンロードボタンが使えます。つまり、私自身がロゴを作ればいいんです!というわけでロゴを作成しました。絵心無くて申し訳ないです。
f:id:gelehrtecrest:20190218070147p:plain

元のふぇぶさんのロゴを使いたい方は、ふぇぶさんのツィートからダウンロードして使用をよろしくお願いします。

右クリックでダウンロードするのは推奨としないようにする

これは仕様変更となります。おはララジェネレータ自体にも書かないといけないですね。説明文。

終わりに

Chromeの仕様に振り回されていた数時間でした。ご迷惑をおかけしてしまいました皆様には心からお詫びを申し上げます。
今後ともご指摘などよろしくお願いします。


スポンサーリンク