@giscience/ol-print-layout-control
TypeScript icon, indicating that this package has built-in type declarations

1.0.2 • Public • Published

status: experimental

ol-print-layout-control

Add this OpenLayers-Control to your OpenLayers-Map.

It Helps the user to define a map area that fits to the desired output page format and orientation.

Works with ol@^7.0.0.

https://user-images.githubusercontent.com/2814068/195790425-99978d1a-6619-47a9-93b5-8c642664af5e.mp4

Usage

Browser

Load ol-print-layout-control.js after OpenLayers.

It will be available as new ol.control.PrintLayout()

<script src="https://unpkg.com/@giscience/ol-print-layout-control"></script>
<link rel="stylesheet" href="https://unpkg.com/@giscience/ol-print-layout-control/dist/ol-print-layout-control.css" />

<script>
const map = new ol.Map({
    target: 'map',
    view: new ol.View({
        center: ol.proj.fromLonLat([8.68, 49.41]),
        zoom: 15
    }),
    layers: [
        new ol.layer.Tile({
            source: new ol.source.OSM()
        })
    ]
});

const printLayoutControl = new ol.control.PrintLayout({
    format: PAPER_FORMAT.A3,
    orientation: ORIENTATION.LANDSCAPE,
    margin: {top: 2, bottom: 2, left: 2, right: 2}
});
map.addControl(printLayoutControl);
</script>

Typescript and bundlers

Install the npm package: @giscience/ol-print-layout-control

After import from the module it will be available as new PrintLayout().

npm install @giscience/ol-print-layout-control

Docs

Table of Contents

PrintLayout

Extends Control

The print-layout-control. Add an instance of this to your OpenLayers Map.

Parameters

  • opt_options Options (optional, default {})
  • Options {format: 'A4', orientation: 'portrait', margin: {top: 2, bottom: 2, left: 2, right: 2}}] opt_options

getOrientation

setOrientation

Parameters

  • orientation ORIENTATION

getFormat

setFormat

Parameters

  • format any

getMargin

Returns Margin

setMargin

Parameters

getBbox

getBboxAsLonLat

getScaleDenominator

Computes the scale denominator for the printed map

getPrintBoxSizeInDots

Get the print box size (width, height) in dots (px) for printing.

This is useful to determine the OGC-WMS params 'WIDTH' and 'HEIGHT'

Parameters

  • dpi {number} the desired print resolution in dots-per-inch (dpi) (optional, default 192)

Returns {width: number, height: number}

getPrintBoxSizeInMM

MarginProps

Type: {top: number, bottom: number, left: number, right: number}

Properties

Margin

Extends OlObject

The Margin Class to set paper margins in cm.

Parameters

  • marginProps Partial<MarginProps> (optional, default {})

getProperties

Returns MarginProps

getTop

setTop

Parameters

getBottom

setBottom

Parameters

getLeft

setLeft

Parameters

getRight

setRight

Parameters

Related

Originally ol-print-layout-control has been developed for the SketchMapTool.

Package Sidebar

Install

npm i @giscience/ol-print-layout-control

Weekly Downloads

8

Version

1.0.2

License

MIT

Unpacked Size

78.6 kB

Total Files

7

Last publish

Collaborators

  • mcauer
  • tyr_asd