editor › Globals › AbstractSvgStylizer
Class: AbstractSvgStylizer
Hierarchy
- AbstractSvgStylizer
Index
Properties
- pageMaterialMap
- pageSizeChangedMap
- pageSizeMap
- plateCutlines
- plateCutouts
- plateIdMap
- plateImageEngravings
- plateJointIdMap
- platePageMap
- plateSVGEngravings
- plateSvgMap
- CutlineClass
- CutoutClass
- EngravingImageClass
- EngravingSVGClass
- FoamCoreCreaseClass
- FoamCoreFoamCutClass
- GroupIDClass
- JointIDClass
- PlateClass
Methods
- _addPageBackground
- _createImageNodeFromArrayBuffer
- _createText
- _setCutlineStyle
- _setEngravingStyle
- _setFoamCoreFoamCreaseStyle
- _setFoamCoreFoamCutStyle
- _setIdStyle
- _setJointIdStyle
- _setPlateStyle
- _setupStyles
- addAdditionalCut
- addCutline
- addCutout
- addFoamCoreCrease
- addFoamCoreFoamCut
- addFoamCutline
- addImageEngraving
- addPlate
- addSVGEngraving
- addSingleCutline
- annotateGroupId
- createGroupID
- createJointID
- createSymbolicLink
- forceIds
- getSvgPages
- givingLinkSize
- hasTabs
- idFontSize
- jointIdFontSize
- preProcessImage
- receivingLinkSize
- registerPlate
- rendersHoles
- restyleSvgString
- setPageSize
- setupPage
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
▸ 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›