諦めないために諦める
いかんせん技術力が低いんで、何かアプリを作るときは諦めの連続なんですよ。
アプリのリリースを諦めないために、目先の機能を諦めるって状態ですね。
これが私の常でございます。
こないだもあれ作ろうとして、諦めたんですよ。ガテン系の知り合いたちに向けた請求書アプリ。
このときは、やろうとしてたメインのことが出来なくて、一旦リリース自体諦めてしまいました。
ただ、結果から言えば出来たんですよ。まだβ版みたいな感じなんですが、ストアにあります。
ホーリーの請求書サービス - Apps on Google Play
知り合い以外がダウンロードしないようにと、スクショも適当だし、アプリタイトルも非常に適当なんですが、とりあえず動いてますよ。いい感じに動いてくれてます。
多分、今月末くらいにデザイン整えて「見れる状態」にするんじゃないでしょうか。
(今見たら、なぜだか知らない人がレビュー書いてくれてますけど。。)
んで、これはアプリから請求書の項目を入力して、その後ブラウザにPDFを出力するってものなんです。
アプリの画面がありまして、ここに適当に入力していきます。
すると、適当なURLが作成されるので、それを相手に送るって感じですね。
https://gevvoihorry.com/horry_excel/invoice.php?date=202009&number=2&photo=420200803041939
これをクリックすると、ブラウザにPDFが出力されてるんですよ。
なので、適当に保存したり、印刷したりすることが出来ます。
===
このアプリなんですけど、とりあえず周りの人たちには好評なんですよ。
てかこれ作ったおかげで、毎月もらってた手書きの請求書がゼロになりましたw
世間一般の請求書アプリを触ってないので、事情に疎いんですが、みんなこんな感じでURLを送る方式なんでしょうか?
PDFファイル自体をスマホに保存するってやり方は、ちょっと鈍臭いですよね。
まあよく分かりませんが、動いてるのでOKとしておきましょう。
んで、この請求書アプリなんですが、最初はブラウザ上に請求書を表示するところで行き詰まったんですよ。
「TCPDF」なるものを使えば、ブラウザ上にPDFを出力できるって分かってたんで、適当なテーブルレイアウトを組もうと思ってたんですが、そこで挫折しました。
PHPでPDFを作成する定番ライブラリ【TCPDF】を使ってみた | 株式会社ブリッツゲート
TCPDFって使えるCSSが限定されてるんですよね。ただでさえ僕のCSSスキルは低いので、ここで挫折しましたよ。
「もう知らん。てか請求書アプリなんて、この世に沢山あるんだから、俺が作る必要ないだろ」と思いふて寝してたんですけど、やっぱり諦められないんですよね。
別に誰がどんなアプリで請求書書いてもいいですけど、自分の周りの人たちには、自分が作ったアプリで書いてもらいたいじゃないですかw
えー、そんなわけで、あれこれ考えた結果、画像を表示することにしました。
アプリ内で請求書をスクショ→サーバーへ転送→ブラウザ上で画像をPDF出力
まあこんな流れですね。
慣れ親しんだUnityで作ったわけですけど、Unityなら請求書レイアウト組むのも簡単。
なので、ここで適当にスクショして、それをブラウザで表示することにした次第です。
画像をサーバーに転送したりとか、やったことなかったんですけど、このへんの記事を参考に、あれこれ実装させていただきました。
Unityで画像をPOSTし,PHPでサーバに保存する - Qiita
uGUI webサーバーから画像をダウンロードして表示 - Qiita
印鑑の画像も登録出来るんですけど、それはこちらの記事を参考にして、カメラロールから取得したって感じですね。
【Unity】iOS / Android においてカメラロールから画像を読み込むことができる「unimgpicker」紹介 - コガネブログ
これら3つともそうなんですけど、普通にコピペするとエラー(警告)が出るんですよ。WWWは非対応になるよって。
なので、UnityWebRequestに書き換えつつ、実装してみました。
またスクショも指定範囲のみを撮りたかったので、こちらの記事を参考に、あれこれやってみた次第です。
[Unity] 指定した範囲を切り抜いたスクショを保存する - Qiita
えー、そんなわけで出来ましたよ。テーブルレイアウトを組むのを諦めて、スクショで対応した結果、僕の請求書アプリは完成しました。
いつもこんな感じなんですけど、目の前の作りたいもののために、細かい機能はあれこれ諦めるのが常です。
みんな大なり小なりそうでしょうけど、僕は頻繁にありますね。
諦めないために諦めるってことです。
P.S.
今日書いた「ホーリーの請求書カレンダー」なんですけど、これその名の通りカレンダーもあるんですよ。
てか周りからの要望でカレンダーアプリに変身してしまいましたw
リサーチの結果、仕事仲間の大半がグーグルカレンダーを使ってないことが判明したので、このアプリをメインカレンダーにしてもらって、請求書を自動作成するようにしてみました。
適当に予定を書き込むわけですよ。
んで、カレンダーの下にある「請求書作成ボタン」を押すと。
なんと一瞬で請求書が出来る優れものですw
この機能を実装した結果、僕の周りからは「請求書を書く行為」そのものが消滅した次第です。
まあ僕はカレンダー使ってないんですけどね。グーグルカレンダー使ってますw
P.S.2
そいや書きわすれましたけど、Unityでスクショ撮ると、フォントがぼやけるんですよ。
これ普通のtextだから起きる現象で、textMeshProに変えれば大丈夫なんですけど、今度は日本語が使えなくなるんですよね。
text使う→フォントぼやける→textMeshPro使う→日本語対応してない
まあこんな流れで困りましたよ。普段textMeshProは一切使ってないので、戸惑いました。
なので、こちらの記事を参考に常用漢字を登録してみた次第です。
UnityのText Mesh Proでほぼ全ての日本語を表示させる - Qiita
textMeshPro、あれこれ便利なだけに早く日本語対応してほしいですね。