14 lines
		
	
	
		
			596 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			14 lines
		
	
	
		
			596 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | /* based on the `coarse` project README */ | ||
|  | const fs = require('fs'); | ||
|  | const coarse = require('coarse'); | ||
|  |   | ||
|  | const svg = fs.readFileSync(process.argv[2], "utf8"); | ||
|  | let roughened = coarse(svg); | ||
|  | const viewbox = roughened.match(/viewBox="(.*?)"/)[1].split(/\s+/); | ||
|  | const v = viewbox.map(x => parseFloat(x)); | ||
|  | v[0] -= 40; v[1] += 40; v[2] += 80; v[3] += 80; | ||
|  | roughened = roughened.replace(/<title>G<\/title>/, `$&<polygon fill="white" stroke="" points="${v[0]},${v[1]} ${v[0]},${v[1]-v[3]} ${v[0]+v[2]},${v[1]-v[3]} ${v[0]+v[2]},${v[1]} ${v[0]},${v[1]}"/>`); | ||
|  |   | ||
|  | fs.writeFileSync(process.argv[3], roughened); | ||
|  | 
 |