@giscience/ol-print-layout-control
v1.0.2
Published
An extension of an OpenLayers Control. It Helps the user to define a map area that fits to the desired output page format and orientation.
Downloads
68
Readme
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
margin
Margin
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, default192
)
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
topMarginInCm
number
getBottom
setBottom
Parameters
bottomMarginInCm
number
getLeft
setLeft
Parameters
leftMarginInCm
number
getRight
setRight
Parameters
rightMarginInCm
number
Related
Originally ol-print-layout-control
has been developed for the
SketchMapTool.