@watergis/maplibre-gl-export
Version:
This module adds control which can export PDF and images.
66 lines • 4.21 kB
TypeScript
import { Map as MaplibreMap, StyleSpecification } from 'maplibre-gl';
import { CirclePaint, Map as MapboxMap } from 'mapbox-gl';
import { AttributionOptions, DPIType, FormatType, NorthIconOptions, SizeType, UnitType } from './interfaces';
export declare const defaultMarkerCirclePaint: CirclePaint;
export declare const defaultAttributionOptions: AttributionOptions;
export declare const defaultNorthIconOptions: NorthIconOptions;
export declare abstract class MapGeneratorBase {
protected map: MaplibreMap | MapboxMap;
protected width: number;
protected height: number;
protected dpi: number;
protected format: FormatType;
protected unit: UnitType;
protected fileName: string;
protected markerClassName: string;
protected markerCirclePaint: CirclePaint;
protected attributionClassName: string;
protected attributionOptions: AttributionOptions;
protected northIconOptions: NorthIconOptions;
constructor(map: MaplibreMap | MapboxMap, size?: SizeType, dpi?: DPIType, format?: FormatType, unit?: UnitType, fileName?: string, markerClassName?: string, markerCirclePaint?: {
"circle-radius"?: import("mapbox-gl").DataDrivenPropertyValueSpecification<number>;
"circle-radius-transition"?: import("mapbox-gl").TransitionSpecification;
"circle-color"?: import("mapbox-gl").DataDrivenPropertyValueSpecification<import("mapbox-gl").ColorSpecification>;
"circle-color-transition"?: import("mapbox-gl").TransitionSpecification;
"circle-color-use-theme"?: import("mapbox-gl").PropertyValueSpecification<string>;
"circle-blur"?: import("mapbox-gl").DataDrivenPropertyValueSpecification<number>;
"circle-blur-transition"?: import("mapbox-gl").TransitionSpecification;
"circle-opacity"?: import("mapbox-gl").DataDrivenPropertyValueSpecification<number>;
"circle-opacity-transition"?: import("mapbox-gl").TransitionSpecification;
"circle-translate"?: import("mapbox-gl").PropertyValueSpecification<[number, number]>;
"circle-translate-transition"?: import("mapbox-gl").TransitionSpecification;
"circle-translate-anchor"?: import("mapbox-gl").PropertyValueSpecification<"map" | "viewport">;
"circle-pitch-scale"?: import("mapbox-gl").PropertyValueSpecification<"map" | "viewport">;
"circle-pitch-alignment"?: import("mapbox-gl").PropertyValueSpecification<"map" | "viewport">;
"circle-stroke-width"?: import("mapbox-gl").DataDrivenPropertyValueSpecification<number>;
"circle-stroke-width-transition"?: import("mapbox-gl").TransitionSpecification;
"circle-stroke-color"?: import("mapbox-gl").DataDrivenPropertyValueSpecification<import("mapbox-gl").ColorSpecification>;
"circle-stroke-color-transition"?: import("mapbox-gl").TransitionSpecification;
"circle-stroke-color-use-theme"?: import("mapbox-gl").PropertyValueSpecification<string>;
"circle-stroke-opacity"?: import("mapbox-gl").DataDrivenPropertyValueSpecification<number>;
"circle-stroke-opacity-transition"?: import("mapbox-gl").TransitionSpecification;
"circle-emissive-strength"?: import("mapbox-gl").PropertyValueSpecification<number>;
"circle-emissive-strength-transition"?: import("mapbox-gl").TransitionSpecification;
} | undefined, attributionClassName?: string, attributionOptions?: AttributionOptions, northIconOptions?: NorthIconOptions);
protected abstract getRenderedMap(container: HTMLElement, style: StyleSpecification | mapboxgl.Style): MaplibreMap | MapboxMap;
protected renderMapPost(renderMap: MaplibreMap | MapboxMap): MaplibreMap | MapboxMap;
private getMarkers;
protected renderMarkers(renderMap: MaplibreMap | MapboxMap): MaplibreMap | MapboxMap;
generate(): void;
private stripHtml;
private getIconWidth;
private getElementPosition;
private addNorthIconImage;
private addNorthIconToMap;
private addAttributions;
private exportImage;
private toPNG;
private toJPEG;
private toPDF;
private toSVG;
private toPixels;
private addLoader;
private showLoader;
private hideLoader;
}
//# sourceMappingURL=map-generator-base.d.ts.map