๐
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public GameObject makeBackground(GameObject canvasObject) { | |
GameObject backgroundObject = new GameObject("Background"); | |
backgroundObject.AddComponent<CanvasRenderer>(); | |
Image image = backgroundObject.AddComponent<Image>(); | |
image.color = Color.green; | |
backgroundObject.transform.SetParent(canvasObject.transform, false); | |
return backgroundObject; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public GameObject makeCanvas() { | |
GameObject canvasObject= new GameObject("Canvas"); | |
Canvas canvas = canvasObject.AddComponent<Canvas>(); | |
canvas.renderMode = RenderMode.WorldSpace; | |
CanvasScaler scaler = canvasObject.AddComponent<CanvasScaler>(); | |
scaler.scaleFactor = 10.0f; | |
scaler.dynamicPixelsPerUnit = 10.0f; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public GameObject makeCanvas() { | |
GameObject canvasObject= new GameObject("Canvas"); | |
Canvas canvas = canvasObject.AddComponent<Canvas>(); | |
canvas.renderMode = RenderMode.WorldSpace; | |
CanvasScaler scaler = canvasObject.AddComponent<CanvasScaler>(); | |
scaler.scaleFactor = 10.0f; | |
scaler.dynamicPixelsPerUnit = 10.0f; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class Sugar { | |
public GameObject makeEventSystem() { | |
GameObject systemEventObject = new GameObject("EventSystem"); | |
EventSystem system = systemEventObject.AddComponent<EventSystem>(); | |
system.sendNavigationEvents = true; | |
StandaloneInputModule module = systemEventObject.AddComponent<StandaloneInputModule>(); | |
module.horizontalAxis = "Horizontal"; | |
module.verticalAxis = "Vertical"; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
private func parseNumber(text: String) -> Int? { | |
let acceptedLetters = Array(0...9).map(String.init) + ["-"] | |
let characters = text | |
.replacingOccurrences(of: "\n", with: "") | |
.replacingOccurrences(of: "o", with: "0") | |
.filter({ acceptedLetters.contains(String($0)) }) | |
return Int(String(characters)) | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let tesseract = G8Tesseract(language: "eng")! | |
tesseract.engineMode = .tesseractCubeCombined | |
tesseract.pageSegmentationMode = .singleBlock | |
private func handleWithTesseract(image: UIImage) { | |
tesseract.image = image.g8_blackAndWhite() | |
tesseract.recognize() | |
let text = tesseract.recognizedText ?? "" | |
delegate?.ocrService(self, didDetect: text) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let instance = SwiftOCR() | |
private func handleWithSwiftOCR(image: UIImage) { | |
instance.recognize(image, { string in | |
DispatchQueue.main.async { | |
self.delegate?.ocrService(self, didDetect: string) | |
} | |
}) | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var transform = CGAffineTransform.identity | |
transform = transform.scaledBy(x: image.size.width, y: -image.size.height) | |
transform = transform.translatedBy(x: 0, y: -1) | |
let rect = result.boundingBox.applying(transform) | |
let scaleUp: CGFloat = 0.2 | |
let biggerRect = rect.insetBy( | |
dx: -rect.size.width * scaleUp, | |
dy: -rect.size.height * scaleUp | |
) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
fileprivate func boundingBox(forRegionOfInterest: CGRect, withinImageBounds bounds: CGRect) -> CGRect { | |
let imageWidth = bounds.width | |
let imageHeight = bounds.height | |
// Begin with input rect. | |
var rect = forRegionOfInterest | |
// Reposition origin. | |
rect.origin.x *= imageWidth |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
return UIGraphicsImageRenderer(size: bounds.size).image { rendererContext in | |
let context = rendererContext.cgContext | |
if orientation == .right || orientation == .left { | |
context.scaleBy(x: -scaleRatio, y: scaleRatio) | |
context.translateBy(x: -height, y: 0) | |
} else { | |
context.scaleBy(x: scaleRatio, y: -scaleRatio) | |
context.translateBy(x: 0, y: -height) | |
} |