1. 제품
  2.   스프레드시트
  3.   Swift
  4.   Objects2XLSX
 
  

무료 Swift 라이브러리를 통해 Swift 객체를 Excel 파일로 내보내기

소프트웨어 개발자가 Swift 객체를 맞춤 스타일링이 적용된 전문 Excel (.xlsx) 파일로 변환할 수 있도록 하는 오픈 소스 Swift 라이브러리.

Objects2XLSX란 무엇인가요?

현대 iOS, macOS 및 서버 측 Swift 애플리케이션은 종종 구조화된 데이터를 Microsoft Excel 스프레드시트로 내보내야 합니다. 판매 보고서, 재고 목록, 재무 제표 또는 분석 대시보드를 생성하든, 전문적인 Excel 파일을 수동으로 만드는 일은 금세 복잡해질 수 있습니다. Objects2XLSX는 이 문제를 해결하기 위해 설계된 오픈 소스 Swift 라이브러리입니다. 깨끗하고 타입 안전하며 선언적인 API를 사용해 Swift 객체를 직접 Excel (.xlsx) 워크북으로 변환할 수 있습니다. 행과 열을 수동으로 작성하는 대신, 개발자는 Swift 모델이 스프레드시트 열에 어떻게 매핑되는지를 정의하고 나머지는 라이브러리가 처리하도록 합니다.

이 라이브러리는 전문적인 서식 지정, 다중 워크시트, 진행 상황 보고 및 다양한 Swift 데이터 유형을 지원하여 보고서 생성 및 비즈니스 애플리케이션에 탁월한 솔루션이 됩니다. 프로젝트 문서에 따르면 Objects2XLSX는 타입 안전성, 스타일링, 다중 워크시트 및 고성능 Excel 생성을 중점으로 합니다. Objects2XLSX는 전통적으로 Excel 생성을 위해 필요했던 많은 보일러플레이트 코드를 제거합니다. 셀을 수동으로 생성하고, 워크시트를 서식 지정하며, 데이터 변환을 관리하는 대신 개발자는 Swift 객체와 직접 작업합니다. 일반적인 사용 사례로는 고객 레코드 내보내기, 재무 보고서 작성, 재고 관리, 직원 데이터 내보내기, 비즈니스 분석, 판매 보고, 교육 성적 시스템 및 관리 대시보드가 있습니다.

Previous Next

Objects2XLSX 시작하기

Objects2XLSX를 설치하는 권장 방법은 Swift Package Manager(SPM) 또는 CocoaPods를 사용하는 것입니다. 원활한 설치를 위해 다음 명령을 사용하십시오.

Swift 패키지 관리자를 통해 Objects2XLSX 설치

  // Add Objects2XLSX to your Package.swift dependencies:

dependencies: [ .package(url: "https://github.com/fatbobman/Objects2XLSX.git", from: "1.3.0") ]

// Import the package
import Objects2XLSX

GitHub를 통해 Objects2XLSX 설치:

 git clone https://github.com/fatbobman/Objects2XLSX.git

직접 GitHub에서 다운로드할 수 있습니다.

Swift를 통한 선언형 워크북 구성

다중 탭 스프레드시트를 구축하는 것은 과거에 중첩된 단계별 로직 스크립트를 필요로 했으며, 이는 확장하거나 리팩터링하기 어려웠습니다. Objects2XLSX는 현대 도메인 특화 언어(DSL)를 모방한 선언적 구문 레이어를 사용합니다. 이를 통해 엔지니어는 워크북 래퍼 내부에 어떤 시트, 열 및 구조적 관계가 존재해야 하는지를 깔끔하고 시각적인 계층 구조로 정확히 명시할 수 있습니다. 이러한 구성은 장기적인 코드베이스 유지보수를 크게 최적화하고 협업 코드 리뷰를 단순화합니다.

Swift API를 사용한 선언형 워크북 구성을 수행하는 방법은?

import Objects2XLSX
import Foundation

struct UserAccount: Sendable { let username: String; let rank: String }
struct LogEntry: Sendable { let timestamp: Date; let action: String }

func generateSystemWorkbook(users: [UserAccount], logs: [LogEntry]) -> Workbook {
    // Declarative assembly definition organizing multi-sheet data structures
    let workbook = Workbook(
        sheets: [
            Sheet(title: "Active Users", columns: [
                Column(header: "User Profile ID", keyPath: \.username),
                Column(header: "Access Group", keyPath: \.rank)
            ]).addRows(users),
            
            Sheet(title: "Security Audits", columns: [
                Column(header: "Event Time", keyPath: \.timestamp),
                Column(header: "Operation Details", keyPath: \.action)
            ]).addRows(logs)
        ]
    )
    return workbook
}

Swift를 사용한 전문적인 Excel 스타일 적용

전문 보고서는 단순한 원시 데이터 그 이상을 필요로 합니다. 오픈 소스 라이브러리 Objects2XLSX는 광범위한 스타일링 기능을 제공하여 개발자가 글꼴, 색상, 테두리, 정렬 및 셀 모양을 맞춤 설정할 수 있게 합니다. 이를 통해 Excel을 별도로 열어 수동으로 서식을 지정하지 않아도 비즈니스에 바로 사용할 수 있는 스프레드시트를 손쉽게 생성할 수 있습니다. 스타일링 시스템은 프레젠테이션, 보고서 및 기업 워크플로에 적합한 세련된 워크북을 만들도록 설계되었습니다.

Swift 라이브러리를 사용하여 맞춤 스타일 적용하기?

import Objects2XLSX
import CoreGraphics

// Define customized visual presets matching enterprise documentation needs
let boldHeaderStyle = Style()
    .font(.system(size: 11, weight: .bold))
    .alignment(.center)
    .background(.color(red: 0.12, green: 0.53, blue: 0.90)) // Corporate Blue

let currencyColumnStyle = Style()
    .numberFormat("$#,##0.00")
    .alignment(.right)

let customizedColumn = Column(
    header: "Gross Revenue", 
    keyPath: \FinancialRow.revenue,
    headerStyle: boldHeaderStyle,
    cellStyle: currencyColumnStyle,
    width: 22.0
)

struct FinancialRow: Sendable { let revenue: Double }

Swift를 사용한 전문적인 Excel 스타일 적용

전문 보고서는 원시 데이터만으로는 충분하지 않습니다. 오픈 소스 라이브러리 Objects2XLSX는 광범위한 스타일링 기능을 제공하여 개발자가 글꼴, 색상, 테두리, 정렬 및 셀 모양을 사용자 정의할 수 있습니다. 이를 통해 Excel을 별도로 열어 수동으로 서식을 지정하지 않고도 비즈니스에 바로 사용할 수 있는 스프레드시트를 쉽게 생성할 수 있습니다. 스타일링 시스템은 프레젠테이션, 보고 및 기업 워크플로에 적합한 깔끔한 워크북을 만들도록 설계되었습니다.

Swift 라이브러리를 사용하여 맞춤 스타일 적용하기?

import Objects2XLSX
import CoreGraphics

// Define customized visual presets matching enterprise documentation needs
let boldHeaderStyle = Style()
    .font(.system(size: 11, weight: .bold))
    .alignment(.center)
    .background(.color(red: 0.12, green: 0.53, blue: 0.90)) // Corporate Blue

let currencyColumnStyle = Style()
    .numberFormat("$#,##0.00")
    .alignment(.right)

let customizedColumn = Column(
    header: "Gross Revenue", 
    keyPath: \FinancialRow.revenue,
    headerStyle: boldHeaderStyle,
    cellStyle: currencyColumnStyle,
    width: 22.0
)

struct FinancialRow: Sendable { let revenue: Double }

대규모 내보내기를 위한 진행 상황 추적

수천 개의 레코드를 포함하는 Excel 워크북을 생성하는 데는 눈에 띄는 시간이 걸릴 수 있습니다. Objects2XLSX는 실시간으로 내보내기 작업을 모니터링할 수 있는 진행 상황 추적 기능을 포함하고 있습니다. 이 기능은 사용자가 긴 보고서 생성 과정에서 시각적 피드백을 기대하는 데스크톱 애플리케이션 및 기업 시스템에서 특히 유용합니다.

 한국인