复活节日期
支持的 Swift 版本: Swift 4.1+
支持的平台: iOS 9.0+, macOS 10.9+, tvOS 10.0+, watchOS 3.0, Ubuntu 14+
简介
复活节日期 是针对 Date
类的扩展,用于计算复活节的日期,包括西方 (由罗马天主教教会和许多新教和福音派教会使用) 和东方 (由大多数东正教教会和古代东方教会使用)。
您还可以使用 复活节日期 找到东方和西方的五旬节、圣体节和圣灰星期三的日期。
历史简介
有时我需要找到某个基督教节日的日期。很久以前我为此创建了一个 Ruby gem: when_easter。现在我想到在 Swift 中创建类似的东西。
安装
CocoaPods
DateOfEaster与CocoaPods兼容。只需将以下内容添加到您的Podfile中
pod 'DateOfEaster'
SPM
DateOfEaster与Swift Package Manager兼容。请将以下内容添加到您的Package.swift
文件中
import PackageDescription
let package = Package(
[...]
dependencies: [
.Package(url: "https://github.com/Loyolny/DateOfEaster.git", majorVersion: versionNumber)
]
)
框架
您还可以将DateOfEaster构建为iOS、macOS、tvOS或watchOS的框架。构建后,将创建的.framework文件拖入您的Xcode项目。
手动
只需将DateOfEaster.swift
文件拖入您的项目
使用
找到西方复活节日期
import DateOfEaster
let westernEaster2015 = Date.westernEasterDate(year: 2015)
找到东方复活节日期
import DateOfEaster
let easter1983 = Date.easternEasterDate(year: 1983)
找到五旬节日期
import DateOfEaster
let lastYearsEasternPentecost = Date.easternPentecostDate(year: 2016)
查找本年度耶稣受难日日期
let year = Calendar.current.dateComponents([.year], from: Date()).year
let thisYearsCorpusChristi = Date.corpusChristiDate(year: year)
查找本年度大斋节日期
let year = Calendar.current.dateComponents([.year], from: Date()).year
let thisYearsCorpusChristi = Date.ashWednesdayDate(year: year)
注意事项
Date.easternEasterDate
和Date.westernEasterDate
返回Date
的可选值。东方和西方日期计算都存在一定的限制
- 西方日期必须为1583年或以后,因为之前没有格里历。
- 由于格里历和儒略历之间的时间差异在不断变化,东方日期必须在1900年到2199年之间。
否则,这两个函数将返回nil。
示例
在 DateOfEaster
项目中包含 iOS、macOS、tvOS 和 watchOS 框架。
# Clone the repository
$ https://github.com/Loyolny/DateOfEaster.git
# Enter the directory
$ cd DateOfEaster
# Install pod dependencies
$ pod Install
# Open the workspace file
$ open DateOfEaster.xcworkspace
沙箱
项目中包含沙箱,供您学习如何使用此库。只需构建 DateOfEaster iOS
目标并运行即可!
贡献
复活节日期计算算法均来自维基百科。
测试
DateOfEaster 包含了针对所有函数的测试套件。它们在 iOS、macOS 和 tvOS 的 Xcode 上进行了测试。在 macOS 和 Ubuntu 14 下使用 Swift 编译器也进行了测试。
许可
此项目采用 MIT 许可证发布。详情请参阅 LICENSE 文件。
作者
DateOfEaster 由 Michał Nierebiński 创建。