VMPrint API Reference - v1.0.0
    Preparing search index...

    Interface Context

    interface Context {
        addPage(): void;
        bezierCurveTo(
            cp1x: number,
            cp1y: number,
            cp2x: number,
            cp2y: number,
            x: number,
            y: number,
        ): this;
        dash(length: number, options?: { space: number }): this;
        end(): void;
        fill(rule?: "nonzero" | "evenodd"): this;
        fillAndStroke(fillColor?: string, strokeColor?: string): this;
        fillColor(color: string): this;
        font(family: string, size?: number): this;
        fontSize(size: number): this;
        getSize(): { height: number; width: number };
        image(
            source: string | Uint8Array<ArrayBufferLike>,
            x: number,
            y: number,
            options?: ContextImageOptions,
        ): this;
        lineTo(x: number, y: number): this;
        lineWidth(width: number): this;
        moveTo(x: number, y: number): this;
        opacity(opacity: number): this;
        pipe(stream: VmprintOutputStream): void;
        rect(x: number, y: number, w: number, h: number): this;
        registerFont(
            id: string,
            buffer: Uint8Array,
            options?: ContextFontRegistrationOptions,
        ): Promise<void>;
        restore(): void;
        rotate(angle: number, originX?: number, originY?: number): this;
        roundedRect(x: number, y: number, w: number, h: number, r: number): this;
        save(): void;
        showShapedGlyphs(
            fontId: string,
            fontSize: number,
            color: string,
            x: number,
            y: number,
            ascent: number,
            glyphs: ContextShapedGlyph[],
        ): this;
        stroke(): this;
        strokeColor(color: string): this;
        text(str: string, x: number, y: number, options?: ContextTextOptions): this;
        translate(x: number, y: number): this;
        undash(): this;
    }

    Implemented by

    Index

    Methods

    • Parameters

      • cp1x: number
      • cp1y: number
      • cp2x: number
      • cp2y: number
      • x: number
      • y: number

      Returns this

    • Parameters

      • length: number
      • Optionaloptions: { space: number }

      Returns this

    • Parameters

      • Optionalrule: "nonzero" | "evenodd"

      Returns this

    • Parameters

      • OptionalfillColor: string
      • OptionalstrokeColor: string

      Returns this

    • Parameters

      • color: string

      Returns this

    • Parameters

      • family: string
      • Optionalsize: number

      Returns this

    • Parameters

      • size: number

      Returns this

    • Returns { height: number; width: number }

    • Parameters

      • source: string | Uint8Array<ArrayBufferLike>
      • x: number
      • y: number
      • Optionaloptions: ContextImageOptions

      Returns this

    • Parameters

      • x: number
      • y: number

      Returns this

    • Parameters

      • width: number

      Returns this

    • Parameters

      • x: number
      • y: number

      Returns this

    • Parameters

      • opacity: number

      Returns this

    • Parameters

      • x: number
      • y: number
      • w: number
      • h: number

      Returns this

    • Parameters

      • angle: number
      • OptionaloriginX: number
      • OptionaloriginY: number

      Returns this

    • Parameters

      • x: number
      • y: number
      • w: number
      • h: number
      • r: number

      Returns this

    • Emit pre-shaped glyphs directly to the PDF stream using their fontkit glyph IDs. This bypasses PDFKit's text()/encode() path, which would re-run shaping and lose the contextual glyph substitutions (init/medi/fina/liga) computed at layout time. Required for correct rendering of Arabic and other RTL/CTL scripts.

      Parameters

      • fontId: string
      • fontSize: number
      • color: string
      • x: number
      • y: number
      • ascent: number
      • glyphs: ContextShapedGlyph[]

      Returns this

    • Parameters

      • color: string

      Returns this

    • Parameters

      • x: number
      • y: number

      Returns this