先日公開したWebツール集「Yapps」に、今後どんなものを追加していきたいかをここにメモしておきたいと思います。え、冬至関係ないって?こまけえこたぁいいんだよ!
音声系
Yapps Player
Webブラウザ上で動くプレイヤー。mp3形式などに対応し、再生リストも作成可能。
Local StorageにローカルのファイルパスのリストをJSON形式で保存すれば、再生するたびにいちいちファイルを開いたりしなくても、すぐに再生を始められて便利かなーという構想です。
音声認識
マイクから声を拾って文章化する機能。既にAPI化されているようなので、それを利用していつか実装してみたいなと。まだ対応ブラウザが少ないみたいですが…
Speech Recognition API
ドキュメント系
ファイル名テンプレート
学校に提出するレポートファイルや会社の活動報告書など、世の中にはファイル名のフォーマットが定まっている文書ファイルが多数存在します。例えば、
1組23番_山田太郎_1222_第3回数学レポート課題.pdf
なんてフォーマットがあったとします。「1222」が日付、「第3回」が授業回数とすると、レポートを提出するたびにファイル名の変更作業が必要です(MS Officeならテンプレート作ればOK!というツッコミは置いといて)。
この機能では、予めファイル名のフォーマットを登録しておき、名前を変更したい対象のファイルをドラッグ&ドロップして、変更が必要な部分(日付や授業回数など)だけをブラウザ上で入力してダウンロードボタンを押せば、フォーマット通りのファイル名が適用されダウンロードされます。
変更が必要な部分は変数として、<変数名>
で指定します。例えば上記の例なら、
1組23番_山田太郎_<日付>_第<回数>回数学レポート課題.pdf
と登録します。登録したフォーマットはLocal Storageに保存されます。
テキストエディタ
簡易なテキストエディタです。ファイルを開く・ダウンロードする他に、既存の「メモ帳」アプリに転送することもできるようにしたいと思っています。プレーンテキストのみ対応です。
文章変換系
全角・半角判定
フォントによっては、全角と半角が見分けがつかない場合があります。全角・半角判定では、入力された文章に対して全角の部分と半角の部分を色分けしてマーキングすることで、全角部分と半角部分を分かりやすく判別できるようにします。
MarkDown改行挿入
プレーンテキストの改行をMarkDownの改行「<space><space><shift+Enter>」に変換します。
htmlのタグを除去
入力されたhtmlのコードからhtmlタグを除去し、プレーンテキストに変換します。
画像系
画像から文字認識
調べたらJavaScriptのAPIで文字認識ができるらしいので、それをYappsに実装します。「画像から文字認識」なんて難しそうな字面ですが、処理はAPIに丸投げしてしまいます。
スポイト
画像ファイル上でクリックした点の色を取得します。形式はRGB、HEX(Webカラー)などなど。取得した色はボタン操作ひとつでクリップボードにコピーできるようにしたいと思っています。
画像モノクロ化
その名の通り、画像をモノクロ化、すなわりグレースケール変換します。
2値化
入力画像を2値化します。しきい値は調整できるようにします。
エッジ検出
エッジ検出にもいくつかのフィルタ(ソーベルフィルタやラプラシアンフィルタ、4近傍or8近傍など)がありますが、複数の選択肢の中から選べるようにします。
画像への文字入力
画像上に文字を入力しダウンロードできるようにします。
画像認識
ゆくゆくはやってみたいけどなーって程度のもの。機械学習済みのデータを用意し、入力画像から人やモノを検出します。画像認識自体は既にやったことがあるのですが…正直、フロントエンド環境でどこまで実現できるかはわかりません。今のところ実現可能性は低いです。
ペイント
ブラウザ上でただ絵を描くだけでなく、スポイト、文字入力、図形の設置など、Windowsのペイントアプリ並みのことができたらなーと思ってます。これも画像認識と同様に「ゆくゆくはやってみたいけどなー」って程度のもので、「行けたら行く」みたいなノリです。上に書いた小規模ツール群の集大成みたいなところがあるので、作るとしたらYappsとは独立したサイトに作るかもしれません。