Wrapper.d.ts 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import { OptionList } from '../../util/Options.js';
  2. import { CommonWrapper, AnyWrapperClass, Constructor } from '../common/Wrapper.js';
  3. import { SVG } from '../svg.js';
  4. import { SVGWrapperFactory } from './WrapperFactory.js';
  5. import { SVGFontData, SVGDelimiterData, SVGCharOptions } from './FontData.js';
  6. export { Constructor, StringMap } from '../common/Wrapper.js';
  7. export declare type SVGConstructor<N, T, D> = Constructor<SVGWrapper<N, T, D>>;
  8. export interface SVGWrapperClass extends AnyWrapperClass {
  9. kind: string;
  10. }
  11. export declare class SVGWrapper<N, T, D> extends CommonWrapper<SVG<N, T, D>, SVGWrapper<N, T, D>, SVGWrapperClass, SVGCharOptions, SVGDelimiterData, SVGFontData> {
  12. static kind: string;
  13. static borderFuzz: number;
  14. protected factory: SVGWrapperFactory<N, T, D>;
  15. parent: SVGWrapper<N, T, D>;
  16. childNodes: SVGWrapper<N, T, D>[];
  17. element: N;
  18. dx: number;
  19. font: SVGFontData;
  20. toSVG(parent: N): void;
  21. addChildren(parent: N): void;
  22. protected standardSVGnode(parent: N): N;
  23. protected createSVGnode(parent: N): N;
  24. protected handleStyles(): void;
  25. protected handleScale(): void;
  26. protected handleColor(): void;
  27. protected handleBorder(): void;
  28. protected addBorderSolid(path: number[][], color: string, child: N): void;
  29. protected addBorderBroken(path: number[][], color: string, style: string, t: number, i: number): void;
  30. protected handleAttributes(): void;
  31. place(x: number, y: number, element?: N): void;
  32. protected handleId(y: number): number;
  33. firstChild(): N;
  34. placeChar(n: number, x: number, y: number, parent: N, variant?: string): number;
  35. protected charNode(variant: string, C: string, path: string): N;
  36. protected pathNode(C: string, path: string): N;
  37. protected useNode(variant: string, C: string, path: string): N;
  38. drawBBox(): void;
  39. html(type: string, def?: OptionList, content?: (N | T)[]): N;
  40. svg(type: string, def?: OptionList, content?: (N | T)[]): N;
  41. text(text: string): T;
  42. fixed(x: number, n?: number): string;
  43. }