본문 바로가기

전체 글65

CIImage, CGImage, UIImage 변환 및 개념 정리 코딩을 하다보면 자주 마주하게 되는 이미지는 아마도 UIImage와 CGImage인 것 같습니다. 일단 이미지를 넣은 다음에 Xcode 가라사대 삑 이거 이대로 넣으면 안 되고 cgImage로 바꿔줘야해 하면 .cgImage만 후다닥 추가하던 저는 이번에 조금 더 개념을 확실하게 알아볼 수 있었습니다. 다른 포스팅에도 적었던 Mantis 라이브러리를 쓰면서 생겨난 궁금증에서 비롯된 것이었는데요. 사진을 찍거나/앨범에서 가져오거나 둘 중 한 가지의 방법으로 사진을 처리하고자 할 때 이상하게도 후자는 잘 되는데 전자는 똑같은 코드로 진행이 되지 않는 것이였어요. 넣어준 것은 uiImage로 둘 다 동일했는데 말이예요. 그래서 원작자에게 질문을 던졌습니다. 저의 단순한 추측으로는 해상도가 달라서 그런가? 싶었.. 2022. 12. 28.
DateFormatter 활용해보기 let dateFormatter = DateFormatter() dateFormatter.dateFormat = "yyyy-MM-dd, a h:mm" let date = dateFormatter.date(from: authHistory.regDtString) dateFormatter.dateFormat = "yyyy-MM-dd" let stringDate = dateFormatter.string(from: date ?? Date()) DateFormatter를 사용하기 위해서 멀쩡한 String형을 Date형으로 만들었다가 다시 내가 원하는 양식의 String형으로 바꿔치기 하는 코드... 크게 설명할 부분도 없고, 직관적으로 이해할 수 있는 내용인 것 같습니다.. dateFormatter.date는 S.. 2022. 12. 27.
[사진]촬영 후 바로 아이폰 앨범에 저장하기 func saveImage(image : UIImage) { let data = image.jpegData(compressionQuality: 0.9)! PHPhotoLibrary.requestAuthorization { [unowned self] status in if status == .authorized { PHPhotoLibrary.shared().performChanges({ let creationRequest = PHAssetCreationRequest.forAsset() creationRequest.addResource(with: .photo, data: data, options: nil) }, completionHandler: { success, error in if success { pr.. 2022. 12. 27.
2022년을 마무리하며 어설픈 개발 1년차 회고 어떤 일이든 못 하면 하기 싫고, 어렵고, 지칩니다. 제가 올해 들어 아주 잠깐 테니스를 취미로 가져보고자 레슨을 다녔는데요, 저는 즐겁게 오래 할 운동이라고 생각해서 등록한건데 선생님이 자꾸만 저에게 폼이 안 예쁘고 스텝이 맞지 않고 등등 계속된 크리틱을 하셨어요. 물론 가르침을 받는 입장에서 그러한 점들을 수용하고 발전해나가는 것이 마땅하나 역설적으로 그러면서 저는 테니스가 재밌다, 하고 싶다는 동기가 사라졌고 레슨을 중단했습니다.(내년에 따뜻해지면 또 다닐지는 모르겠지만요) 생각해보니 처음에 개발이라는게 저에게 그랬던 것 같아요. 저는 국비교육학원에서 자바개발자양성코스를 다녔는데, 그 중에서 솔직하게 개발을 잘 하는 편은 아니였습니다. 당시 강사님이 저보고 지금 그 상태라면 취업하기 어렵다...라고.. 2022. 12. 27.
[권한]앨범 접근 권한 여부 확인하고 바로 후처리 @objc func pickImage(){ if albumAccess(){ chooseAlbumMethod() } else { let status = PHPhotoLibrary.authorizationStatus() if status == .notDetermined { PHPhotoLibrary.requestAuthorization{status in switch status { case .authorized, .limited : print("album access allowed") DispatchQueue.main.asyncAfter(deadline: .now() + 0.5){ self.chooseAlbumMethod() } case .denied, .restricted : print("album acc.. 2022. 12. 22.
sqlite3 select할때 한 줄만 주구장창 나온다면? func selectSiteData(clientName: String) -> [TrustedSiteData]{ //데이터 조회 let selectQuery = "select * from sitetable where clientname like '%\(clientName)%'" var statement: OpaquePointer? = nil var result: [TrustedSiteData] = [] if sqlite3_prepare_v2(self.db, selectQuery, -1, &statement, nil) == SQLITE_OK { while (sqlite3_step(statement) == SQLITE_ROW){ let result1 = Int(sqlite3_column_int(statemen.. 2022. 12. 22.