Skip to content

editorGlobalsAbstractSvgStylizer

Class: AbstractSvgStylizer

Hierarchy

  • AbstractSvgStylizer

BookletSvgStylizer

Index

Properties

Methods

Properties

Protected Readonly pageMaterialMap

pageMaterialMap: Map‹SvgBuilder‹›, IPlateMaterial = new Map()

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:45


Protected Readonly pageSizeChangedMap

pageSizeChangedMap: Map‹SvgBuilder‹›, boolean› = new Map()

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:44


Protected Readonly pageSizeMap

pageSizeMap: Map‹SvgBuilder, IDimensions2› = new Map()

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:43


Protected Readonly plateCutlines

plateCutlines: Map‹Plate‹›, XMLElement‹›[]› = new Map()

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:42


Protected Readonly plateCutouts

plateCutouts: Map‹Plate‹›, XMLElement‹›[]› = new Map()

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:40


Protected Readonly plateIdMap

plateIdMap: Map‹Plate‹›, XMLElement‹›› = new Map()

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:37


Protected Readonly plateImageEngravings

plateImageEngravings: Map‹Plate‹›, XMLElement‹›[]› = new Map()

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:41


Protected Readonly plateJointIdMap

plateJointIdMap: Map‹Plate‹›, XMLElement‹›[]› = new Map()

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:38


Protected Readonly platePageMap

platePageMap: Map‹Plate‹›, SvgBuilder‹›› = new Map()

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:35


Protected Readonly plateSVGEngravings

plateSVGEngravings: Map‹Plate‹›, XMLElement‹›[]› = new Map()

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:39


Protected Readonly plateSvgMap

plateSvgMap: Map‹Plate‹›, XMLElement‹›› = new Map()

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:36


Static Protected Readonly CutlineClass

CutlineClass: "cutline" = "cutline"

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:25


Static Protected Readonly CutoutClass

CutoutClass: "cutout" = "cutout"

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:26


Static Protected Readonly EngravingImageClass

EngravingImageClass: "engravingIMG" = "engravingIMG"

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:28


Static Protected Readonly EngravingSVGClass

EngravingSVGClass: "engravingSVG" = "engravingSVG"

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:27


Static Protected Readonly FoamCoreCreaseClass

FoamCoreCreaseClass: "foamCoreCrease" = "foamCoreCrease"

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:32


Static Protected Readonly FoamCoreFoamCutClass

FoamCoreFoamCutClass: "foamCoreFoamCut" = "foamCoreFoamCut"

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:31


Static Protected Readonly GroupIDClass

GroupIDClass: "groupId" = "groupId"

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:29


Static Protected Readonly JointIDClass

JointIDClass: "jointId" = "jointId"

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:30


Static Protected Readonly PlateClass

PlateClass: "plate" = "plate"

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:24

Methods

Protected Abstract _addPageBackground

_addPageBackground(page: SvgBuilder, pageSize: IDimensions2, material?: IMaterial): Promise‹void›

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:266

Parameters:

Name Type
page SvgBuilder
pageSize IDimensions2
material? IMaterial

Returns: Promise‹void›


Protected _createImageNodeFromArrayBuffer

_createImageNodeFromArrayBuffer(svgBuilder: SvgBuilder, parent: IXmlElement, arrayBuffer: ArrayBuffer, size: Vector2, format: string): XMLElement

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:294

Parameters:

Name Type Default
svgBuilder SvgBuilder -
parent IXmlElement -
arrayBuffer ArrayBuffer -
size Vector2 -
format string "jpg"

Returns: XMLElement


Protected Abstract _createText

_createText(page: SvgBuilder, parent: any, fullText: string, fontsize: number, centerText?: boolean, Font?: any): XMLElement

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:267

Parameters:

Name Type
page SvgBuilder
parent any
fullText string
fontsize number
centerText? boolean
Font? any

Returns: XMLElement


Protected Abstract _setCutlineStyle

_setCutlineStyle(page: SvgBuilder): any

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:278

Parameters:

Name Type
page SvgBuilder

Returns: any


Protected Abstract _setEngravingStyle

_setEngravingStyle(page: SvgBuilder): any

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:277

Parameters:

Name Type
page SvgBuilder

Returns: any


Protected Abstract _setFoamCoreFoamCreaseStyle

_setFoamCoreFoamCreaseStyle(page: SvgBuilder): any

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:282

Parameters:

Name Type
page SvgBuilder

Returns: any


Protected Abstract _setFoamCoreFoamCutStyle

_setFoamCoreFoamCutStyle(page: SvgBuilder): any

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:281

Parameters:

Name Type
page SvgBuilder

Returns: any


Protected Abstract _setIdStyle

_setIdStyle(page: SvgBuilder): any

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:279

Parameters:

Name Type
page SvgBuilder

Returns: any


Protected Abstract _setJointIdStyle

_setJointIdStyle(page: SvgBuilder): any

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:280

Parameters:

Name Type
page SvgBuilder

Returns: any


Protected Abstract _setPlateStyle

_setPlateStyle(page: SvgBuilder): any

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:276

Parameters:

Name Type
page SvgBuilder

Returns: any


Protected _setupStyles

_setupStyles(svgBuilder: SvgBuilder): void

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:284

Parameters:

Name Type
svgBuilder SvgBuilder

Returns: void


addAdditionalCut

addAdditionalCut(outline: XMLElement, page: SvgBuilder): void

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:165

Adds an path as cutline.

Parameters:

Name Type Description
outline XMLElement The XMLElement path.
page SvgBuilder The page where this outline should be placed

Returns: void


addCutline

addCutline(plate: Plate, cutline: XMLElement): void

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:109

Parameters:

Name Type
plate Plate
cutline XMLElement

Returns: void


addCutout

addCutout(plate: Plate, engraving: XMLElement): void

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:152

Parameters:

Name Type
plate Plate
engraving XMLElement

Returns: void


addFoamCoreCrease

addFoamCoreCrease(creaseLine: XMLElement, page: SvgBuilder): void

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:185

Adds the passed line as crease.

Parameters:

Name Type Description
creaseLine XMLElement The svg line representing the crease.
page SvgBuilder The page where this crease should be placed

Returns: void


addFoamCoreFoamCut

addFoamCoreFoamCut(plate: Plate, outline: XMLElement): void

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:175

Adds the passed plate as foam cut.

Parameters:

Name Type Description
plate Plate The plate object
outline XMLElement The XMLElement representation of the outline border path.

Returns: void


addFoamCutline

addFoamCutline(plate: Plate, cutline: XMLElement): void

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:123

Adds a cutline (as part of a bending) that should be cut through the foam only.

Parameters:

Name Type Description
plate Plate the plate the cutline belongs to
cutline XMLElement the cutline element to add

Returns: void


addImageEngraving

addImageEngraving(plate: Plate, engraving: XMLElement): void

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:132

Parameters:

Name Type
plate Plate
engraving XMLElement

Returns: void


addPlate

addPlate(plate: Plate, path: XMLElement): void

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:103

Adds a plate with its SVG node

Parameters:

Name Type Description
plate Plate The Plate object
path XMLElement The node that renders this plate

Returns: void


addSVGEngraving

addSVGEngraving(plate: Plate, engraving: XMLElement, isCutout: boolean): void

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:140

Parameters:

Name Type
plate Plate
engraving XMLElement
isCutout boolean

Returns: void


addSingleCutline

addSingleCutline(frameLine: XMLElement, page: SvgBuilder): void

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:195

Adds the passed line as a cutline that does not belong to any plate

Parameters:

Name Type Description
frameLine XMLElement The svg line representing the line
page SvgBuilder The page where this line should be placed

Returns: void


Abstract annotateGroupId

annotateGroupId(): boolean

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:49

Returns: boolean


createGroupID

createGroupID(group: PlateGroup, id: string, parent: any): XMLElement

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:225

Parameters:

Name Type
group PlateGroup
id string
parent any

Returns: XMLElement


createJointID

createJointID(plate: Plate, id: string, parent: any): XMLElement

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:235

Parameters:

Name Type
plate Plate
id string
parent any

Returns: XMLElement


createSymbolicLink(group: PlateGroup, id: string, parent: any, isReceiving: boolean): XMLElement

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:246

Parameters:

Name Type
group PlateGroup
id string
parent any
isReceiving boolean

Returns: XMLElement


Abstract forceIds

forceIds(): boolean

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:59

Subclasses can decide to render ids, even if engraveNumbers is set to false. Used for the page overview and the booklet.

Returns: boolean


getSvgPages

getSvgPages(visiblePlates: Plate[]): ISvgPage[]

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:204

export the stylized svg pages

Parameters:

Name Type Default Description
visiblePlates Plate[] null export only pages that contain one of these plates. exports all pages if this is not given

Returns: ISvgPage[]


Abstract givingLinkSize

givingLinkSize(): number

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:53

Returns: number


Abstract hasTabs

hasTabs(): boolean

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:47

Returns: boolean


Abstract idFontSize

idFontSize(): number

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:50

Returns: number


Abstract jointIdFontSize

jointIdFontSize(): number

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:51

Returns: number


Abstract preProcessImage

preProcessImage(context: CanvasRenderingContext2D, width: number, height: number, svgBuilder: SvgBuilder): any

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:62

Parameters:

Name Type
context CanvasRenderingContext2D
width number
height number
svgBuilder SvgBuilder

Returns: any


Abstract receivingLinkSize

receivingLinkSize(): number

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:52

Returns: number


registerPlate

registerPlate(page: SvgBuilder, plate: Plate): void

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:94

Registers a plate to a page

Parameters:

Name Type Description
page SvgBuilder The builder of the page the plate is on
plate Plate The Plate object

Returns: void


Abstract rendersHoles

rendersHoles(): boolean

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:48

Returns: boolean


Abstract restyleSvgString

restyleSvgString(svgString: string, isCutout: boolean): Promise‹string›

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:61

Parameters:

Name Type
svgString string
isCutout boolean

Returns: Promise‹string›


setPageSize

setPageSize(page: SvgBuilder, width: number, height: number): void

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:85

Parameters:

Name Type
page SvgBuilder
width number
height number

Returns: void


setupPage

setupPage(page: SvgBuilder, pageSize: IDimensions2, pageSizeChanged: boolean, material: IPlateMaterial): Promise‹void›

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:72

Registers the size and material of a page

Parameters:

Name Type Default
page SvgBuilder -
pageSize IDimensions2 -
pageSizeChanged boolean -
material IPlateMaterial { type: "poplar", thickness: 4 }

Returns: Promise‹void›