Skip to content

Instantly share code, notes, and snippets.

View hisasann's full-sized avatar
🔖
I aspire to become a bookseller.

Yoshiyuki Hisamatsu hisasann

🔖
I aspire to become a bookseller.
View GitHub Profile
@hisasann
hisasann / sha1.js
Created February 16, 2019 21:46
ファイルから sha1 のハッシュ値を計算するコード
'use strict'
const crypto = require('crypto');
const fs = require('fs');
const shasum = crypto.createHash('sha1');
const app_a = __dirname + '/path/to/file.txt';
fs.readFile(app_a, (err, data) => {
shasum.update(data);
console.log(app_a, shasum.digest('hex'));
@hisasann
hisasann / rgb2hsv.ts
Created October 24, 2018 07:22
RGBからHSVに変換するTypeScript
// https://lab.syncer.jp/Web/JavaScript/Snippet/66/
/**
* rgb から hsv に変換する
* @param {[number]} rgb
* @returns {[number]}
*/
const rgb2hsv = (rgb: [number, number, number]) => {
const r: number = rgb[0] / 255;
const g: number = rgb[1] / 255;
const b: number = rgb[2] / 255;
var ColorThief = require('color-thief-jimp');
var Jimp = require('jimp');
Jimp.read(imageFilepathOrUrl, (err, sourceImage) => {
if (err) {
console.error(err);
return;
}
var dominantColor = ColorThief.getColor(sourceImage);
const { registerFont, createCanvas, loadImage } = require('canvas');
const fs = require('fs')
registerFont('./fonts/sazanami/sazanami-gothic.ttf', {family: 'Sazanami Gothic'});
const canvas = createCanvas(500, 500);
const ctx = canvas.getContext('2d');
// Draw cat with lime helmet
loadImage('images/lemon-sour.jpg').then((image) => {
ctx.drawImage(image, 0, 0, 500, 500);
@hisasann
hisasann / buildspec.yml
Created October 21, 2018 23:12
AWS ECR に CodeBuild から push までするときの buildspec.yml
version: 0.2
env:
variables:
PJ_NAME: "aws-ecs-sample-app"
REPO_NAME: "ここに数字.dkr.ecr.ap-northeast-1.amazonaws.com/aws-ecs-sample-app"
phases:
install:
commands:

Stack

  • TypeScript: AltJS

    • webpack: Serverless Framework の TypeScript テンプレートで使用

    • node-canvas: 画像ジェネレーターの中核を担うサーバーサイド canvas

    • Jest: テストは Jest のみを使用

window.addEventListener('load', function(){
navigator.mediaDevices.getUserMedia({audio: false, video: true}).then((stream) => {
const video = document.createElement('video');
video.id = 'drag';
video.draggable=true;
document.body.appendChild(video);
video.src=window.URL.createObjectURL(stream);
video.style='position: absolute; left: 10px; top: 10px; max-width: 300px; max-height: 300px; border: 1vmin solid white; z-index:99999;';
video.play();

文字の幅確認

iOS

全角 - 6文字(湖湖湖湖湖湖) 半角英字 - 10文字(AAAAAAAAAA) 半角カタカナ - 12文字(ママママママママママママ)

Android

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace AttachConsoleSample
{
class Program
{
[DllImport("kernel32.dll")]
public static extern bool AttachConsole(uint dwProcessId);
[DllImport("kernel32.dll")]
public static extern bool FreeConsole();
private bool writeConsole( string msg ) {
if ( !AttachConsole( System.UInt32.MaxValue ) ) {
return false;