29 lines
687 B
Swift
29 lines
687 B
Swift
import Foundation
|
|
import UIKit
|
|
|
|
// MARK: - 分页接口定义
|
|
|
|
struct RDEPUBPageBreakDecision {
|
|
var range: NSRange
|
|
var reason: RDEPUBTextPageBreakReason
|
|
var diagnostics: [String]
|
|
}
|
|
|
|
protocol RDEPUBChapterPageCounting {
|
|
func pageRanges(
|
|
for attributedString: NSAttributedString,
|
|
pageSize: CGSize,
|
|
config: RDEPUBTextLayoutConfig,
|
|
fragmentOffsets: [String: Int]
|
|
) -> [RDEPUBPageBreakDecision]
|
|
}
|
|
|
|
protocol RDEPUBPageFrameBuilding {
|
|
func makeFrames(
|
|
attributedString: NSAttributedString,
|
|
pageSize: CGSize,
|
|
config: RDEPUBTextLayoutConfig,
|
|
fragmentOffsets: [String: Int]
|
|
) -> [RDEPUBTextLayoutFrame]
|
|
}
|