SkiaCanvas

class SkiaCanvas(canvas: Canvas)

PdfCanvas backed by a raw org.jetbrains.skia.Canvas (Skiko).

Same rendering engine Compose Multiplatform rides on for JVM Desktop and iOS — minus the Compose runtime. Pure-Skia means this adapter is the right choice for:

  • Server-side rasterization — PDF → PNG, headless thumbnail generation, CI pipelines.

  • CLI tools — anything that wants pixels without dragging in androidx.compose.runtime.

  • Smaller dependency footprint — Skiko alone is significantly less than Compose Multiplatform.

Pair with PdfPageRasterizer for the common "give me a ByteArray of a page's PNG" use case.

Constructors

Link copied to clipboard
constructor(canvas: Canvas)

Functions

Link copied to clipboard
open fun applySoftMask(kind: <Error class: unknown class>, maskBBox: <Error class: unknown class>, maskCtm: <Error class: unknown class>, render: () -> Unit, renderMask: (<Error class: unknown class>) -> Unit)
Link copied to clipboard
open fun beginPage(widthPt: Double, heightPt: Double, deviceCtm: <Error class: unknown class>)
Link copied to clipboard
open fun beginTransparencyGroup(bbox: <Error class: unknown class>, ctm: <Error class: unknown class>, isolated: Boolean, knockout: Boolean, alpha: Double, blendMode: <Error class: unknown class>)
Link copied to clipboard
open fun drawImage(image: <Error class: unknown class>, ctm: <Error class: unknown class>, alpha: Double)
Link copied to clipboard
open fun drawText(bytes: ByteArray, font: <Error class: unknown class>, fontSize: Double, textMatrix: <Error class: unknown class>, fillColor: <Error class: unknown class>, alpha: Double, blendMode: <Error class: unknown class>)
Link copied to clipboard
open fun endPage()
Link copied to clipboard
Link copied to clipboard
open fun fillPath(path: <Error class: unknown class>, ctm: <Error class: unknown class>, color: <Error class: unknown class>, evenOdd: Boolean, alpha: Double, blendMode: <Error class: unknown class>)
Link copied to clipboard
open fun fillShading(shading: <Error class: unknown class>, ctm: <Error class: unknown class>, clipPath: <Error class: unknown class>?, alpha: Double, blendMode: <Error class: unknown class>)
Link copied to clipboard
open fun popClip()
Link copied to clipboard
open fun pushClip(path: <Error class: unknown class>, ctm: <Error class: unknown class>, evenOdd: Boolean)
Link copied to clipboard
open fun strokePath(path: <Error class: unknown class>, ctm: <Error class: unknown class>, color: <Error class: unknown class>, lineWidth: Double, alpha: Double, blendMode: <Error class: unknown class>, dashArray: List<Double>?, dashPhase: Double)