- Open Reddit's avatar editor
- Edit your avatar (include Premium parts)
- Run this code at browser's console.
Change the variable "scale" to get different size image.
Change the variable "scale" to get different size image.
export default { | |
install (Vue) { | |
Vue.mixin({ | |
created: function () { | |
if (this.$options.$consts) { | |
Object.entries(this.$options.$consts) | |
.forEach(([key, value]) => { | |
Object.defineProperty(this, key, { | |
value, | |
writable: false |
class Bresenham { | |
static plot(x0, y0, x1, y1) { | |
let dots = []; | |
let dx = Math.abs(x1 - x0); | |
let dy = Math.abs(y1 - y0); | |
let sx = (x0 < x1) ? 1 : -1; | |
let sy = (y0 < y1) ? 1 : -1; | |
let err = dx - dy; |
class XiaolinWu { | |
static integerPart(v) { | |
let isNeg = (v < 0) ? -1 : 1; | |
let abs = Math.abs(v); | |
let integerPart = Math.floor(abs); | |
return integerPart * isNeg; | |
} |
function tablify($data, $columns) | |
{ | |
$result = []; | |
// 收集各欄位的最大寬度 | |
$maxWith = []; | |
foreach ($columns as $column) { | |
$maxWith[$column] = mb_strwidth($column); |
(function () { | |
var d = document; | |
var w = window; | |
var cont = w.____ytsnap || init(); | |
var v = d.querySelector('video'); | |
if(v.readyState!=4) return; | |
var c = d.createElement('canvas'); | |
var vw = v.videoWidth, vh = v.videoHeight; | |
var thunmbnail_height = 60; |
<?php | |
function shortNumber($number, $decimal = 2) | |
{ | |
$suffixes = [ 4 => '', 7 => 'K', 10 => 'M', 13 => 'B', 16 => 'T']; | |
$absNumber = abs($number); | |
$sign = ($number < 0) ? '-' : ''; | |
$magnitude = strlen(floor($absNumber)); // This is dirty, but it gets job done. |
Demo: http://www.p01.org/jsconf_asia_2015/ |