Files
Reflect/Shared/Models/CenterTiledImage.swift
2022-02-13 13:34:41 -06:00

38 lines
1.0 KiB
Swift

//
// CenterTiledImage.swift
// Feels (iOS)
//
// Created by Trey Tartt on 2/13/22.
//
import SwiftUI
struct CenterTiledImage: View {
let imageName: String
let imageSize: CGSize
var body: some View {
GeometryReader { geoReader in
let horizontalTilesNeeded = ceil(geoReader.size.width / imageSize.width / 2) * 2 + 1
let verticalTilesNeeded = ceil(geoReader.size.height / imageSize.height / 2) * 2 + 1
Image(imageName)
.resizable(resizingMode: .tile)
.frame(
width: horizontalTilesNeeded * imageSize.width,
height: verticalTilesNeeded * imageSize.height
)
.position(x: geoReader.size.width * 0.5, y: geoReader.size.height * 0.5)
}
}
init?(imageName: String) {
guard let imageSize = UIImage(named: imageName)?.size else {
return nil
}
self.imageName = imageName
self.imageSize = imageSize
}
}