みかづきブログ その3

本ブログは更新を終了しました。通算140万ユーザーの方に観覧頂くことができました。長い間、ありがとうございました。

👆

引越し先はこちらです!

2016-01-01から1年間の記事一覧

npmでglobalにいれたモジュールの一覧を確認する

npm ls -g --depth=0これでOKです。

Node.jsでシリアル通信する際にArduinoがつながっているポートを自動的に探し、繋ぎ、繋いだ際のコールバックを設定する

www.npmjs.com Node.js var SerialPort = require("serialport"), serialPort; SerialPort.list(function(err, ports) { ports.forEach(function(port) { if (port.manufacturer && /arduino/.test(port.manufacturer.toLowerCase())) { serialPort = new Se…

border-image + drop-shadow でおしゃれな枠線を実装する

CSS

デザイナーから、大きさが可変のイメージをおしゃれな枠線で囲んだデザインが上がってきたので、border-image + drop-shadow で実装することにしました。 border-imageの実装 このような9分割できる素材を用意しましょう。 (ぼかしはCSSでいれようと思って…

SublimeText2でスニペットを登録・編集する

Mac

Macであれば、 ~/Library/Application\ Support/Sublime\ Text\ 2/Packages/Userに、#{スニペット名}.sublime-snippet というファイル名で保存されています。なので、ターミナルで、 open ~/Library/Application\ Support/Sublime\ Text\ 2/Packages/Userを…

改めてiOSのSafariが表示できる画像サイズ(リソース制限)を確認する

iOS

自分の記憶が確かなら、昔は こちらのページ にSafariに表示することのできる画像の大きさの制限について書いてあった気がするのですが、ひさしぶりに見返したら見当たらなくなってます。developer.apple.comjpgは32メガピクセルまで、png、gifは5メガピクセ…

JSXをつかってPhotoShopを自動化する

以前からJavaScriptをつかってPhotoShopを自動化できることは知っていましたが、実際にやってみたことはありませんでした。 が。本日突如発生した「すべてのレイヤーの大きさの違う画像に対して上だけトリミングしたい」という作業がめんどくさ過ぎたため、J…

JavaScriptをつかってブラウザでカメラからQRコードをデコードする

以前、 URLをQRコードにするモック はつくったのですが、今回はその逆です。kimizuka.hatenablog.comこちらのライブラリ を使用させていただきました。github.com DEMO https://kimizuka.github.io/qr-web/ ※ PCのモダンブラウザでアクセスしてください。カ…

iPhoneのSafariでダブルタップを無効にする(iOS10でもどうしてもuser-scalable=noを有効にしたい場合とか)

iPhoneのSafariで表示されているページをダブルタップをするとページが拡大します。 metaタグでページの拡大を止めている場合はページがスクロールします。http://jsrun.it/kimmy/AJce ※ iPhoneで見てくださいダブルタップによるページの拡大を止めつつ、ペ…

iPhone の mobile Safari で video を再生し終わった後にビデオプレーヤを閉じ、mobile Safari に戻す方法

iPhoneでは videoタグのplayを叩くと、ビデオプレイヤーが立ち上がりビデオが再生されます。昔の僕は、なんとかSafari内で再生できないものかと インラインで再生する方法 を探りましたが、最近は考え方が変わり、ビデオを再生し終わった後にSafariに戻って…

Express と socket.io でローカルにリアルタイム通信をするサーバをたてる

最小限だとこんな感じじゃないでしょうか。 ディレクトリ構成 package.json { "name": "app", "version": "1.0.0", "description": "", "main": "app.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [], "author"…

Node.js + Arduino でサーボモータを制御する

kimizuka.hatenablog.com以前 は duino というパッケージをつかっていましたが、サーボモータを制御しようとしたら何故かうまくいかなかったので、 johnny-five というパッケージに切り替えました。github.comgithub.com JavaScript var five = require("joh…

Expressをつかってスタティックなサーバをたてる

JavaScript var express = require("express"), app = require("express")(), http = require("http").Server(app); app.use("/", express.static(__dirname + "/public")); http.listen(3000, "0.0.0.0"); とりあえずこれでpublicをルートとしたstaticなサ…

ElectronをつかってWebサーバをたてる際は絶対パスで指定しないとアプリ化したときに動かなくなる

kimizuka.hatenablog.com以前つくったアプリ ですが、コマンドラインから実行する分には問題なかったのですが、アプリ化すると動かなくなってしまい困ってました。結果として、パスを絶対パスにすることによって動くようになり、 アドレスを追加することによ…

Web Audio API の基本の基 その6 (filterをつかって音をフィルタリングする)

今回はfilterをつかってオーディオをフィルタリングしてみました。 前回のビジュアライズのコードを残しておいたので、比較してみるとわかりやすいです。 ローパスフィルタをかけてみたので低音が強調されています。 JavaScript (function(win, doc) { "use …

Web Audio API の基本の基 その5 (analyserをつかってオーディオを解析しビジュアライズする)

今回はanalyserをつかってオーディオを解析し、Canvasにビジュアライズしてみました。 JavaScript (function(win, doc) { "use strict"; var canvas = doc.getElementById("canvas"), ctx = canvas.getContext("2d"), request = new XMLHttpRequest(), audio…

ArduinoからPOSTでデータを送信してNode.jsで受け取る

Mac

arduino、ルーター、PCを上記のように繋いで、ArduinoのA0ピンの値をサーバにPOSTしサーバ側で値を読み取るサンプルです。 arduino #include <SPI.h> #include <Ethernet2.h> // シールドのMACアドレス byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED // ここをEthernet Shi</ethernet2.h></spi.h>…

Safariのページをアプリ化してホーム画面に登録した際、URLバーを非表示にするとキャッシュがめっちゃ強くなる

結論から書くと、めっちゃキャッシュが強くなります。 URLにクエリをつけたりハッシュをつけたりしてもキャッシュがクリアされません。 なんならホーム画面から削除して登録しなおしても、Safariのキャッシュ削除してもキャッシュが消えませんでした。 キャ…

iTunesをつかってmp4の音声をmp3にする

Mac

1. mp4の拡張子をm4aに変更 2. m4aファイルをiTunesに取り込む 3. iTunesに取り込んだm4aファイルを選択し、 ファイル > 変換 > mp3 バージョンを作成 を選択 kimizuka.hatenablog.com 以上です。楽勝ですね。

iOS9.0でapple-mobile-web-app-status-bar-styleが効かない!

ホーム画面に登録したウェブページのステータスバーの色を変更しようと、 <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"> と指定しても効かずに、「何故だ!?」と思っていましたが、iOS9.3にアップデートしたら効くようになりました。</meta>

いまさらながらArray.prototype.mapの引数を調べる

var arr = [0, 1, 2].map(function(num) { return num * 2; }); console.log(arr); // => [0, 2, 4] 的な感じで、配列の要素にループでアクセスして、 結果を新たな配列として返すmap関数の引数について調べました。いまさらですが。 mapに渡す引数 第一引数…

Ethernet Shield2(イーサネットシールド2)をつかってArduinoをWebサーバにする

Mac

www.switch-science.com Arduino イーサネットシールド2スイッチサイエンスAmazon 0. PC・ルーター・ArduinoをLANでつなぎます こんな感じのイメージです。 1. Arduinoのインストール or アップデートします www.arduino.org1.7.2以降のArduino IDEを入手し…

Web Audio API の基本の基 その4 (ChannelSplitterNodeをつかってチャンネルを分ける)

今回は ChannelSplitterNode をつかって入力を分けてみます。 具体的にはLとRに分解し、左右を入れ替えて再生してみましょう。この音( http://jsrun.it/assets/a/0/D/c/a0Dco.mp3 )をLRで分解し、左右を入れ替えて再度くっつけます。 JavaScript "use stri…

Web Audio API の基本の基 その3 (ChannelMergerをつかってL・Rから別の音を再生する)

今回は ChannelMerger をつかってL・Rから別の音を再生します。 この音( http://jsrun.it/assets/G/9/D/7/G9D75.mp3 )とこの音( http://jsrun.it/assets/W/Z/8/F/WZ8Fo.mp3 ) をLRから出力してみましょう。 JavaScript "use strict"; var audioCtx = new…

Web Audio API の基本の基 その2 (gainをつかって音量を変更する)

kimizuka.hatenablog.com前回 は単純に source と destination を繋いだだけでしたが、 今回は途中にgainを挟んでボリュームを変更してみます。 JavaScript var request = new XMLHttpRequest(), audioCtx = new AudioContext(), gain = audioCtx.createGain…

Web Audio API の基本の基

いままでもいくつかWeb Audio APIの記事を描いてきましたが、kimizuka.hatenablog.com kimizuka.hatenablog.com kimizuka.hatenablog.com基本的なところがわかっていなかったため、Web Audio APIこちら を読みなおしてみました。結果、最終的に destination …

花火大会で突然QRコード型の花火が上がったらおもしろいなとおもいました。

いままでiTunesの「mp3バージョンを作成」をつかってファイル形式を変換していたのに、右クリックしても「mp3バージョンを作成」が表示されなくなって困っている人へ

ファイル > 変換 の中に移動したようです。support.apple.com

ElectronでアプリをMac用に書き出すとき。そして書きだしたアプリを消すとき。

書き出すとき npm install electron-packagerで packaer をインストールして、 electron-packager . app --platform=darwin --arch=x64でアプリ化できます。(ストア用のアプリではなく、Mac用のアプリです) 引数は順番に、 electron-packager #{パッケージ…

ElectronでjQueryをつかっているサイトを読み込んだ際に「Uncaught ReferenceError: $ is not defined」というエラーが出るのを解決する

支障がなければ、 nodeIntegration を false にして nodeモジュールをつかわない設定にしてしまうのが手っ取り早いです。 main.js "use strict"; var electron = require("electron"), app = electron.app, BrowserWindow = electron.BrowserWindow, mainWin…

Electronをつかってウェブカメラで写真を撮るデスクトップアプリをつくろう。(遠隔でシャッターを切れるバージョン)

kimizuka.hatenablog.com kimizuka.hatenablog.com kimizuka.hatenablog.com kimizuka.hatenablog.com 前回 のつづきです。 予告通り、遠隔でシャッターを切れるように編集します。まずディレクトリ構成を前回から大きく変更しました。まず、前回の index.ht…