Help us shape the future of Go! Take the 2026 Go Developer Survey

render

package
v0.1.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 30, 2026 License: Apache-2.0 Imports: 35 Imported by: 0

Documentation

Overview

Package render 将解析后的 OFD 文档渲染为图形内容。

Index

Constants

View Source
const (
	TextSourcePage       = content.SourcePage
	TextSourceTemplate   = content.SourceTemplate
	TextSourceAnnotation = content.SourceAnnotation
	TextSourceWatermark  = content.SourceWatermark
	TextSourceSeal       = content.SourceSeal
)
View Source
const (
	FontRegular    = drawing.FontRegular
	FontThin       = drawing.FontThin
	FontExtraLight = drawing.FontExtraLight
	FontLight      = drawing.FontLight
	FontMedium     = drawing.FontMedium
	FontSemiBold   = drawing.FontSemiBold
	FontBold       = drawing.FontBold
	FontExtraBold  = drawing.FontExtraBold
	FontBlack      = drawing.FontBlack
	FontItalic     = drawing.FontItalic
)

字重常量转发,便于本包与调用方继续使用 render.FontRegular 等。

View Source
const (
	DestFit = drawing.DestFit
	DestXYZ = drawing.DestXYZ
)

目的地类型别名,供大纲与跳转目标使用。

View Source
const BackendCanvas = drawing.BackendCanvas

BackendCanvas 是内置的 tdewolff/canvas 光栅后端名。canvas 实现位于 internal/render/backends/canvas,需空白导入该包注册后方可使用。

Variables

View Source
var (
	RegisterBackend    = drawing.RegisterBackend
	RegisteredBackends = drawing.RegisteredBackends
)

RegisterBackend / RegisteredBackends 转发到 drawing 包的注册表。插件包在 自己的 init() 里注册,例:

import _ "github.com/zc310/ofd/internal/render/backends/canvas"  // 内置 canvas

只有显式导入后端的二进制才会包含对应实现。

Functions

func FallbackFontData added in v0.1.2

func FallbackFontData(family string) ([]byte, bool)

FallbackFontData 返回字体族的首个来源,字节只读共享。

func RegisterAlphaMaskSurfaceFactory added in v0.1.6

func RegisterAlphaMaskSurfaceFactory(fn func(width, height float64, resolution geom.Resolution) AlphaMaskSurface)

RegisterAlphaMaskSurfaceFactory 注册单通道裁剪掩码表面的工厂。

func RegisterFallbackFont added in v0.1.2

func RegisterFallbackFont(data []byte, family string, style FontStyle) error

RegisterFallbackFont 注册进程内的回退字体。

func RegisterFallbackFontFactory added in v0.1.3

func RegisterFallbackFontFactory(register func(data []byte, family string, style FontStyle) error, data func(family string) ([]byte, bool))

RegisterFallbackFontFactory 登记回退字体的全局注册和来源查询实现。

func RegisterFallbackFontUnregisterer added in v0.1.5

func RegisterFallbackFontUnregisterer(unregisterer func(family string) error)

RegisterFallbackFontUnregisterer 登记字体注销实现。

func RegisterFontEngineFactory added in v0.1.3

func RegisterFontEngineFactory(fn func(doc *parser.Document) FontEngine)

RegisterFontEngineFactory 将字体引擎工厂登记到 drawing。

func RegisterOffscreenSurfaceFactory added in v0.1.3

func RegisterOffscreenSurfaceFactory(fn func(width, height float64, resolution geom.Resolution) OffscreenSurface)

RegisterOffscreenSurfaceFactory 注册离屏表面工厂,供 canvas 后端注册或测试注入。

func RegisterPDFDocumentFactory added in v0.1.3

func RegisterPDFDocumentFactory(fn func(w io.Writer, options PDFOptions) (PDFDocument, error))

RegisterPDFDocumentFactory 注册 PDF 文档写入器,供 canvas 后端注册或测试注入。

func RegisterSVGSceneFactory added in v0.1.3

func RegisterSVGSceneFactory(fn func(data []byte) (SVGScene, error))

RegisterSVGSceneFactory 注册 SVG 场景解析器,供 canvas 后端注册或测试注入。

func RegisterVectorSurfaceFactory added in v0.1.3

func RegisterVectorSurfaceFactory(fn func(width, height float64, draw func(DrawContext)) VectorSurface)

RegisterVectorSurfaceFactory 注册矢量表面工厂,供 canvas 后端注册或测试注入。

func RegisteredFallbackFamilies added in v0.1.5

func RegisteredFallbackFamilies() []string

RegisteredFallbackFamilies 返回已注册的回退字体族,按注册顺序排列。

func UnregisterFallbackFont added in v0.1.5

func UnregisterFallbackFont(family string) error

UnregisterFallbackFont 声明字体族不再需要,在最后一个文档释放后回收资源。

Types

type AlphaMaskSurface added in v0.1.6

type AlphaMaskSurface = drawing.AlphaMaskSurface

AlphaMaskSurface 直接把实色路径栅格化到单通道覆盖率图像。

type Backend added in v0.1.3

type Backend = drawing.Backend

Backend 是后端契约的别名:插件后端通过 drawing 共享契约, 通过 geom 共享几何类型。

func NewBackend added in v0.1.3

func NewBackend(name string, width, height float64, resolution geom.Resolution) (Backend, error)

NewBackend 创建页面栅格化后端。

name 为后端标识;各后端(含内置的 BackendCanvas)都需先空白导入对应插件 包来注册(见 RegisterBackend)。width/height 是页面物理尺寸(mm), resolution 是输出分辨率(geom.DPI / geom.DPMM)。

type BackendFactory added in v0.1.3

type BackendFactory = drawing.BackendFactory

BackendFactory 是 drawing.BackendFactory 的别名:创建后端实例,由各后端 插件包通过 RegisterBackend 注册。width/height 为页面物理尺寸(mm), resolution 为输出分辨率(geom.Resolution,与绘制库无关)。

type CTColor

type CTColor = drawing.CTColor

CTColor 是解析后的颜色画笔,与后端共享 paint.Color。

type DestType added in v0.1.5

type DestType = drawing.DestType

矢量输出契约定义在 drawing 包,render 通过别名保持既有调用点可用。

type Diagnostic added in v0.1.7

type Diagnostic = renderstate.Diagnostic

Diagnostic 是一次绘制中的可恢复问题;同一原因、对象和资源会合并计数。

type Document

type Document struct {
	*parser.Document
	// contains filtered or unexported fields
}

func NewDocument

func NewDocument(background color.Color, doc *parser.Document) *Document

func NewDocumentWithDPI added in v0.1.1

func NewDocumentWithDPI(background color.Color, doc *parser.Document, dpi geom.Resolution) *Document

NewDocumentWithDPI 创建带有输出分辨率的渲染文档。 dpi 用于复合图元等内部离屏栅格化,不改变页面的物理尺寸。

func (*Document) Annot

func (p *Document) Annot(ctx DrawContext, annot *models.Annot, pb models.StBox)

func (*Document) Background added in v0.1.4

func (p *Document) Background() color.Color

Background 返回文档渲染时使用的背景色。调用方可以据此判断能否复用已有的 渲染文档,避免为不同背景重复构建字体和图片缓存。

func (*Document) Close added in v0.1.4

func (p *Document) Close()

Close 释放文档持有的渲染期资源,最重要的是字体。

字体是这里最重的资源:一个 CJK 字体的轮廓约 50 MB,远大于文档本身。不显式 释放时,包级字体缓存会一直持有它,浏览多个文档的会话里这些内存会累积。

幂等,且关闭后不应再使用该文档。

func (*Document) Composite added in v0.0.5

func (p *Document) Composite(ctx DrawContext, object models.CompositeObject, dp *models.DrawParam, pb models.StBox)

Composite 绘制复合图元(CompositeObject)。

CompositeGraphicUnit 的内容位于自身的 [0,Width]x[0,Height] 坐标系中, 先渲染完整单元,再使用 CompositeObject 的 Boundary 和 CTM 映射到页面, 保留单元内部坐标,不根据透明像素重新裁剪内容。

func (*Document) Draw

func (p *Document) Draw(ctx DrawContext, page *parser.Page) error

Draw 将页面绘制到上下文;渲染文档已关闭时返回错误。

func (*Document) DrawWithReport added in v0.1.7

func (p *Document) DrawWithReport(ctx DrawContext, page *parser.Page) (Report, error)

DrawWithReport 绘制并返回有界诊断报告;报告只属于本次调用。

func (*Document) FallbackFontFamily added in v0.0.9

func (p *Document) FallbackFontFamily(id models.StRefID) string

FallbackFontFamily 返回为文档字体选择的外部字体族。

func (*Document) HasLoadedEmbeddedFont added in v0.0.9

func (p *Document) HasLoadedEmbeddedFont(id models.StRefID) bool

HasLoadedEmbeddedFont 判断文档字体是否可以作为内嵌字体族提供给浏览器。

func (*Document) Image

func (p *Document) Image(ctx DrawContext, object models.ImageObject, dp *models.DrawParam, pb models.StBox)

func (*Document) Layer

func (p *Document) Layer(ctx DrawContext, layer *models.Layer, pb models.StBox)

func (*Document) NewView added in v0.1.5

func (p *Document) NewView(background color.Color, dpi geom.Resolution) (*Document, error)

NewView 创建独立的 DPI/背景视图,复用同一文档的字体解析、映射和整形缓存。 每个视图都需 Close;最后一个视图关闭时才释放共享字体。 任一视图调用 UseFallbackFont/RemoveFallbackFont 都会更新共享字体引擎,影响所有 视图;各 Document 的 fallbacks 列表从创建时复制,之后仅由本视图的方法更新, 不随其他视图同步,不能将其当作共享字体引擎的实时快照。

func (*Document) Outlines added in v0.1.5

func (p *Document) Outlines(resolve PageLinkResolver) []drawing.PageOutline

Outlines 返回文档大纲的扁平条目序列,目标页解析与 PageLinks 共用同一契约。

func (*Document) Page

func (p *Document) Page(page *parser.Page) (VectorSurface, error)

func (*Document) PageContent

func (p *Document) PageContent(ctx DrawContext, page *parser.Page, seal bool)
func (p *Document) PageExternalLinks(page *parser.Page) []drawing.PageLink

PageExternalLinks 只返回外部链接热区。

func (p *Document) PageLinks(page *parser.Page, resolve PageLinkResolver) []drawing.PageLink

PageLinks 返回页面链接热区,resolve 为 nil 时仅导出外部链接。 页面为空或加载失败时返回 nil;需要保留错误时使用 PageLinksWithVisibilityE。

func (*Document) PageLinksWithVisibility added in v0.1.5

func (p *Document) PageLinksWithVisibility(page *parser.Page, resolve PageLinkResolver, visibility PageVisibility) []drawing.PageLink

PageLinksWithVisibility 排除隐藏正文图层和模板中的链接,保留批注链接。

func (*Document) PageLinksWithVisibilityE added in v0.1.6

func (p *Document) PageLinksWithVisibilityE(page *parser.Page, resolve PageLinkResolver, visibility PageVisibility) ([]drawing.PageLink, error)

PageLinksWithVisibilityE 排除隐藏项并保留页面、模板和批注加载错误。

func (*Document) PageWithReport added in v0.1.7

func (p *Document) PageWithReport(page *parser.Page, visibility PageVisibility) (VectorSurface, Report, error)

PageWithReport 创建矢量页面并返回绘制诊断,不调用用户回调或持有共享报告。

func (*Document) PageWithVisibility added in v0.1.5

func (p *Document) PageWithVisibility(page *parser.Page, visibility PageVisibility) (VectorSurface, error)

PageWithVisibility 过滤目标页正文图层及模板引用,保留注解和签章。 过滤状态属于本次绘制,不修改共享页面或文档渲染上下文。 渲染文档已关闭时返回错误。

func (*Document) Path

func (p *Document) Path(ctx DrawContext, object models.PathObject, dp *models.DrawParam, pb models.StBox)

func (*Document) RasterizePage added in v0.1.3

func (p *Document) RasterizePage(page *parser.Page, backendName string, resolution geom.Resolution) (*image.RGBA, error)

RasterizePage 把指定页面栅格化为 RGBA 图像。backendName 选用渲染后端 (BackendCanvas 需空白导入 internal/render/backends/canvas;其它后端见 drawing.Backend*,需导入对应插件包);resolution 决定输出图片的像素密度。 渲染文档已关闭时返回错误。

func (*Document) RasterizePageWithReport added in v0.1.7

func (p *Document) RasterizePageWithReport(page *parser.Page, backendName string, resolution geom.Resolution) (*image.RGBA, Report, error)

RasterizePageWithReport 返回页面位图和本次绘制的资源用量、可恢复诊断。

func (*Document) RemoveFallbackFont added in v0.1.3

func (p *Document) RemoveFallbackFont(family string)

RemoveFallbackFont 取消先前通过 UseFallbackFont 登记的回退字体族,使缺失字体 恢复为内嵌或默认字体。

func (*Document) Seal

func (p *Document) Seal(ctx DrawContext, info *parser.SealInfo, pb models.StBox) error

func (*Document) Template

func (p *Document) Template(ctx DrawContext, template models.Template, pb models.StBox)

func (*Document) TemplateForeground added in v0.1.5

func (p *Document) TemplateForeground(template models.Template) bool

TemplateForeground 按页面引用、模板声明、默认 Background 的顺序确定叠放位置。

func (*Document) Text

func (p *Document) Text(ctx DrawContext, object models.TextObject, dp *models.DrawParam, pb models.StBox)

func (*Document) TextLayouts added in v0.0.9

func (p *Document) TextLayouts(page *parser.Page) []TextLayout

TextLayouts 返回页面文字的字符级布局。字符步进使用渲染器的字体度量、 DeltaX/DeltaY、ReadDirection 和 CTM 基础计算,避免网页字体度量造成高亮偏移。 按背景模板、正文、前景模板的绘制顺序返回,与 TextValues 的 run 索引一致。

func (*Document) TextLayoutsForRuns added in v0.1.4

func (p *Document) TextLayoutsForRuns(page *parser.Page, runIndices []int) []TextLayout

TextLayoutsForRuns 返回指定 run 的字符级布局,结果按页面绘制顺序排列。 run 索引与 TextValues 返回的顺序一致。

func (*Document) TextLayoutsForRunsWithOptionsE added in v0.1.7

func (p *Document) TextLayoutsForRunsWithOptionsE(page *parser.Page, runIndices []int, visibility PageVisibility, options TextOptions) ([]TextLayout, error)

TextLayoutsForRunsWithOptionsE 的 run 索引与相同选项的 TextValuesWithOptionsE 一致。

func (*Document) TextLayoutsForRunsWithVisibility added in v0.1.5

func (p *Document) TextLayoutsForRunsWithVisibility(page *parser.Page, runIndices []int, visibility PageVisibility) []TextLayout

TextLayoutsForRunsWithVisibility 的 run 索引与过滤后的 TextValues 保持一致。

func (*Document) TextLayoutsForRunsWithVisibilityE added in v0.1.6

func (p *Document) TextLayoutsForRunsWithVisibilityE(page *parser.Page, runIndices []int, visibility PageVisibility) ([]TextLayout, error)

TextLayoutsForRunsWithVisibilityE 返回指定 run 的过滤后布局,并保留加载错误。

func (*Document) TextLayoutsWithOptionsE added in v0.1.7

func (p *Document) TextLayoutsWithOptionsE(page *parser.Page, visibility PageVisibility, options TextOptions) ([]TextLayout, error)

TextLayoutsWithOptionsE 按同一来源策略返回文字布局,保留资源加载错误。

func (*Document) TextLayoutsWithVisibility added in v0.1.5

func (p *Document) TextLayoutsWithVisibility(page *parser.Page, visibility PageVisibility) []TextLayout

TextLayoutsWithVisibility 返回过滤正文图层和模板后的布局。

func (*Document) TextLayoutsWithVisibilityE added in v0.1.6

func (p *Document) TextLayoutsWithVisibilityE(page *parser.Page, visibility PageVisibility) ([]TextLayout, error)

TextLayoutsWithVisibilityE 返回过滤后的文字布局,并保留页面或模板加载错误。

func (*Document) TextValues added in v0.1.4

func (p *Document) TextValues(page *parser.Page) []string

TextValues 返回页面中可见的非空 TextCode 文本,顺序与 TextLayouts 一致。 搜索等只需读取文字内容的调用方可避免构建字符级几何信息。

func (*Document) TextValuesWithOptionsE added in v0.1.7

func (p *Document) TextValuesWithOptionsE(page *parser.Page, visibility PageVisibility, options TextOptions) ([]string, error)

TextValuesWithOptionsE 与布局共用来源、遍历顺序和复合对象展开规则。

func (*Document) TextValuesWithVisibility added in v0.1.5

func (p *Document) TextValuesWithVisibility(page *parser.Page, visibility PageVisibility) []string

TextValuesWithVisibility 返回过滤正文图层和模板后的文字,供搜索索引使用。

func (*Document) TextValuesWithVisibilityE added in v0.1.6

func (p *Document) TextValuesWithVisibilityE(page *parser.Page, visibility PageVisibility) ([]string, error)

TextValuesWithVisibilityE 返回过滤后的文字值,并保留页面或模板加载错误。

func (*Document) UseFallbackFont added in v0.1.2

func (p *Document) UseFallbackFont(family string) error

UseFallbackFont 使当前文档缺失字体时使用已全局注册的回退字体族。

type DrawContext added in v0.1.3

type DrawContext = drawing.DrawContext

DrawContext 是 drawing.DrawContext 的别名,保持本包既有调用点可用。契约 定义在 drawing 包,后端插件通过 drawing/geom 共享契约与几何类型。

type FontEngine added in v0.1.3

type FontEngine = drawing.FontEngine

字体相关契约定义在 drawing 包,render 通过别名保持既有调用点可用。

func NewFontEngine added in v0.1.3

func NewFontEngine(doc *parser.Document) FontEngine

NewFontEngine 按已注册工厂创建字体引擎,未注册时返回 nil。

type FontFace added in v0.1.3

type FontFace = drawing.FontFace

字体相关契约定义在 drawing 包,render 通过别名保持既有调用点可用。

type FontFamily added in v0.1.3

type FontFamily = drawing.FontFamily

字体相关契约定义在 drawing 包,render 通过别名保持既有调用点可用。

type FontStyle added in v0.1.3

type FontStyle = drawing.FontStyle

字体相关契约定义在 drawing 包,render 通过别名保持既有调用点可用。

type GlyphLayout added in v0.0.9

type GlyphLayout = textlayout.Character

GlyphLayout 描述一个文字字符在页面上的近似区域。坐标单位为毫米, 使用页面左上角作为原点。

type LinkTarget added in v0.1.5

type LinkTarget = drawing.LinkTarget

矢量输出契约定义在 drawing 包,render 通过别名保持既有调用点可用。

type LinkTargetRef added in v0.1.5

type LinkTargetRef = navigation.PageRef

LinkTargetRef 是内部跳转目标在输出文档中的位置。

type OffscreenSurface added in v0.1.3

type OffscreenSurface = drawing.OffscreenSurface

OffscreenSurface 是离屏栅格表面:绘制完成后取回 RGBA。用于网格渐变、复合 单元、图片掩码等需要先在独立画布上绘制再贴回的场景。

type PDFDocument added in v0.1.3

type PDFDocument = drawing.PDFDocument

矢量输出契约定义在 drawing 包,render 通过别名保持既有调用点可用。

func NewPDFDocument added in v0.1.3

func NewPDFDocument(w io.Writer, options PDFOptions) (PDFDocument, error)

NewPDFDocument 创建 PDF 文档;未注册写入器时返回错误。

type PDFOptions added in v0.1.3

type PDFOptions = drawing.PDFOptions

矢量输出契约定义在 drawing 包,render 通过别名保持既有调用点可用。

type PageLink = drawing.PageLink

矢量输出契约定义在 drawing 包,render 通过别名保持既有调用点可用。

type PageLinkResolver added in v0.1.5

type PageLinkResolver = navigation.PageResolver

PageLinkResolver 将 OFD 页面 ID 映射为输出页序和页面高度。

type PageOutline added in v0.1.5

type PageOutline = drawing.PageOutline

矢量输出契约定义在 drawing 包,render 通过别名保持既有调用点可用。

type PageVisibility added in v0.1.5

type PageVisibility = content.Visibility

PageVisibility 是一次页面输出的过滤设置;正文层与模板引用分别标识,避免 ID 混淆。 同一模板在其他页面的引用不受影响。

type Report added in v0.1.7

type Report = renderstate.Report

Report 是单次绘制的独立快照。

type SVGScene added in v0.1.3

type SVGScene = drawing.SVGScene

SVGScene 是与后端共享的 SVG 场景契约。

type Stats added in v0.1.7

type Stats = renderstate.Stats

Stats 统计绘制遍历和计入预算的工作,离屏重画重复计数。

type TextLayout added in v0.0.9

type TextLayout = textlayout.Layout

TextLayout 描述一个 TextCode 及其字符级几何信息。

type TextOptions added in v0.1.7

type TextOptions = content.Options

TextOptions 控制附加文字来源。正文、模板及其复合对象始终收集。 印章只收集 OFD 子文档里的真实文字,不对图片或轮廓执行 OCR。

type TextRun added in v0.1.3

type TextRun = drawing.TextRun

字体相关契约定义在 drawing 包,render 通过别名保持既有调用点可用。

type TextSource added in v0.1.7

type TextSource = content.Source

TextSource 标记文字来源,不把底纹中的装饰文字作为正文收集。

type VectorSurface added in v0.1.3

type VectorSurface = drawing.VectorSurface

矢量输出契约定义在 drawing 包,render 通过别名保持既有调用点可用。

func NewVectorSurface added in v0.1.5

func NewVectorSurface(width, height float64, draw func(DrawContext)) (VectorSurface, error)

NewVectorSurface 创建一张宽高(毫米)给定的矢量表面,并在创建时回调一次绘制。

与 Document.Page 的区别是尺寸自定:拼版(N-up)需要的是一张比源页大的纸, 再把若干源页按变换画进去。draw 为空时只得到一张空白纸。

Directories

Path Synopsis
backends
canvas
Package canvas 提供 tdewolff/canvas 的 render 后端实现:DrawContext (canvasBackend)、矢量表面与 PDF 写入器(VectorSurface/PDFDocument)、 SVG 场景、离屏栅格表面、内置栅格后端(BackendCanvas),以及默认字体引擎 (由 canvasfont 包注册)。
Package canvas 提供 tdewolff/canvas 的 render 后端实现:DrawContext (canvasBackend)、矢量表面与 PDF 写入器(VectorSurface/PDFDocument)、 SVG 场景、离屏栅格表面、内置栅格后端(BackendCanvas),以及默认字体引擎 (由 canvasfont 包注册)。
canvasconv
Package canvasconv 为 canvas 绘制后端和字体引擎共享 OFD 画笔与渐变适配。
Package canvasconv 为 canvas 绘制后端和字体引擎共享 OFD 画笔与渐变适配。
canvasfont
Package canvasfont 提供基于 canvas 的字体引擎,管理文档字体、字形映射、 回退字体及有界整形缓存。
Package canvasfont 提供基于 canvas 的字体引擎,管理文档字体、字形映射、 回退字体及有界整形缓存。
ftgg
Package ftgg 提供基于 FloatTech/gg 的页面栅格化后端(fogleman API + freetype/raster),通过空白导入注册到 internal/render 的注册表(Go image 包风格):
Package ftgg 提供基于 FloatTech/gg 的页面栅格化后端(fogleman API + freetype/raster),通过空白导入注册到 internal/render 的注册表(Go image 包风格):
rastercore
Package rastercore 提供可切换栅格后端共用的渲染上下文状态机。
Package rastercore 提供可切换栅格后端共用的渲染上下文状态机。
rasterstate
Package rasterstate 提供栅格后端 Push/Pop 时需要镜像保存/恢复的样式 状态容器。
Package rasterstate 提供栅格后端 Push/Pop 时需要镜像保存/恢复的样式 状态容器。
Package content 遍历 OFD 页面、模板、批注和复合图元,并传递统一的坐标与裁剪。
Package content 遍历 OFD 页面、模板、批注和复合图元,并传递统一的坐标与裁剪。
Package drawing 定义绘制后端契约、注册表,以及 render 核心与各实现包共享的公共契约类型(字体、矢量输出、SVG 场景等)。
Package drawing 定义绘制后端契约、注册表,以及 render 核心与各实现包共享的公共契约类型(字体、矢量输出、SVG 场景等)。
Package geom 提供渲染核心与各后端共用的几何类型及OFD绘制规则。
Package geom 提供渲染核心与各后端共用的几何类型及OFD绘制规则。
Package imageasset 管理渲染期图片和 SVG 场景的加载、懒解码与有界缓存。
Package imageasset 管理渲染期图片和 SVG 场景的加载、懒解码与有界缓存。
Package imageops 提供渲染期的纯图片像素运算:透明度、掩码合成、内容边界、裁图及印章白底透明化。
Package imageops 提供渲染期的纯图片像素运算:透明度、掩码合成、内容边界、裁图及印章白底透明化。
layout
composite
Package composite 计算复合图元的兼容内容范围、保守墨迹边界与重采样计划。
Package composite 计算复合图元的兼容内容范围、保守墨迹边界与重采样计划。
image
Package image 计算图片放置矩阵、边框和局部裁剪,不解码资源或执行绘制。
Package image 计算图片放置矩阵、边框和局部裁剪,不解码资源或执行绘制。
pattern
Package pattern 按 OFD 底纹属性计算平铺范围及图块变换。
Package pattern 按 OFD 底纹属性计算平铺范围及图块变换。
seal
Package seal 计算印章裁剪框与源图像素区域,不加载印章或执行绘制。
Package seal 计算印章裁剪框与源图像素区域,不加载印章或执行绘制。
text
Package text 提供 OFD 文字绘制与文字提取共用的字形映射和布局计算。
Package text 提供 OFD 文字绘制与文字提取共用的字形映射和布局计算。
Package navigation 将 OFD 链接动作、跳转目标、书签和大纲转换为输出契约。
Package navigation 将 OFD 链接动作、跳转目标、书签和大纲转换为输出契约。
Package paint 解析 OFD 绘制样式、颜色空间与着色渐变,并管理文档级颜色缓存。
Package paint 解析 OFD 绘制样式、颜色空间与着色渐变,并管理文档级颜色缓存。
Package pathbuild 将 OFD 路径命令及对象坐标转换为只读绘制路径。
Package pathbuild 将 OFD 路径命令及对象坐标转换为只读绘制路径。
Package renderstate 管理单次绘制的资源预算、诊断聚合与报告快照。
Package renderstate 管理单次绘制的资源预算、诊断聚合与报告快照。
Package testscene 提供后端一致性测试共用的“页面场景”与配套图元/度量: 同一段 DrawContext 绘制命令可依次作用到不同光栅后端,用于逐像素对照 与速度测试。
Package testscene 提供后端一致性测试共用的“页面场景”与配套图元/度量: 同一段 DrawContext 绘制命令可依次作用到不同光栅后端,用于逐像素对照 与速度测试。

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL