Apple Swift(iOS-CoreGraphics / QuartzCore)-832バイト
Apple iOSデバイス用にQuartzを使用して完全に図形を描きました。残念ながら、これは特別なサイズのマインドフルな言語ではないため、結果は非常に大きくなりますが、これは私が得ることができる限り小さいものです。
UIGraphicsBeginImageContext(CGSize(width:60,height:60));let c=UIGraphicsGetCurrentContext()!;UIColor.lightGray.setStroke();c.addRect(CGRect(x:0,y:0,width:60,height:60));c.move(to: CGPoint(x:20,y:0));c.addLine(to: CGPoint(x:20,y:60));c.move(to: CGPoint(x:40,y:0));c.addLine(to: CGPoint(x:40,y:60));c.move(to: CGPoint(x:0,y:20));c.addLine(to: CGPoint(x:60,y:20));c.move(to: CGPoint(x:0,y:40));c.addLine(to: CGPoint(x:60, y:40));c.strokePath();UIColor.black.setFill();c.addEllipse(in:CGRect(x:22,y:2,width:16,height:16));c.addEllipse(in:CGRect(x:42,y:22,width:16,height:16));c.addEllipse(in:CGRect(x:2,y:42,width:16,height:16));c.addEllipse(in:CGRect(x:22,y:42,width:16,height:16));c.addEllipse(in:CGRect(x:42,y:42,width:16,height:16));c.fillPath();let i=UIGraphicsGetImageFromCurrentImageContext();sub.addSubview(UIImageView(image:i))
興味がある人のためのより読みやすいバージョン:
UIGraphicsBeginImageContext(CGSize(width: 60, height: 60))
let c = UIGraphicsGetCurrentContext()!
UIColor.lightGray.setStroke()
c.addRect(CGRect(x: 0, y: 0, width: 60, height: 60))
c.move(to: CGPoint(x: 20, y: 0))
c.addLine(to: CGPoint(x: 20, y: 60))
c.move(to: CGPoint(x: 40, y: 0))
c.addLine(to: CGPoint(x: 40, y: 60))
c.move(to: CGPoint(x: 0, y: 20))
c.addLine(to: CGPoint(x: 60, y: 20))
c.move(to: CGPoint(x: 0, y: 40))
c.addLine(to: CGPoint(x: 60, y: 40))
c.strokePath()
UIColor.black.setFill()
c.addEllipse(in: CGRect(x: 22, y: 2, width: 16, height: 16))
c.addEllipse(in: CGRect(x: 42, y: 22, width: 16, height: 16))
c.addEllipse(in: CGRect(x: 2, y: 42, width: 16, height: 16))
c.addEllipse(in: CGRect(x: 22, y: 42, width: 16, height: 16))
c.addEllipse(in: CGRect(x: 42, y: 42, width: 16, height: 16))
c.fillPath()
let i = UIGraphicsGetImageFromCurrentImageContext()
sub.addSubview(UIImageView(image: i))
iOSシミュレータで生成される出力は次のとおりです。