This project aims to provide an intuitive Web UI for the printmaps service provided by Klaus Tockloth at http://printmaps-osm.de.
- Web server (e.g. Apache httpd)
- A directory configured so that it serves it's content.
For Apache httpd this might be something like, assuming that the folder you want ot use is /opt/printmaps
Alias "/" "/opt/printmaps"
<Directory "/opt/printmaps">
Order allow,deny
Allow from all
Require all granted
</Directory>
<LocationMatch "^/$">
<IfModule mod_headers.c>
FileETag None
Header unset ETag
Header unset Pragma
Header unset Cache-Control
Header unset Last-Modified
Header set Pragma "no-cache"
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Expires "Mon, 10 Apr 1972 00:00:00 GMT"
</IfModule>
</LocationMatch>
RewriteEngine on
# extract language from Accept-Language header
RewriteCond %{HTTP:Accept-Language} (de|fr|en)
RewriteRule .? - [E=LANG:%1,S=1]
# fallback to english
RewriteRule .? - [E=LANG:en]
RewriteCond %{DOCUMENT_ROOT}/%{ENV:LANG}%{REQUEST_URI} -f
RewriteRule ^ /%{ENV:LANG}%{REQUEST_URI} [L]
RewriteRule ^/$ /%{ENV:LANG}/index.html
For caddy web server this might be something like, assuming that the folder you want ot use is /opt/printmaps
localhost:80 {
root * /opt/printmaps
encode gzip
file_server
# extract language from Accept-Language header
@extractlang {
path /
header_regexp lang Accept-Language (de|fr|en)
}
redir @extractlang http://localhost/{re.lang.1}/index.html
# fallback to english
@defaultlang {
path /
}
redir @defaultlang http://localhost/en/index.html
}
The Printmaps UI can be deployed with the following steps to any web server:
- Download the latest runtime version (printmaps-ui-x.x.x.zip) from GitHib Releases
- Unpack the archive inside a folder accessible through http or https (e.g.
/opt/printmaps
as suggested above). - Create a configuration file named
conf/config.json
by copying theconf/config.sample.json
provided.
- Fully functional Angular 12 development environment (see https://angular.io/guide/setup-local)
- Optionally, an IDE supporting Angular development (e.g. IntelliJ)
- Clone repository from GitHub
- Create a configuration file named
local/config.json
by copying theconf/config.sample.json
provided. - Run locally with
ng serve -o
Normally the Printmaps should now be opened in your web browser.
- Page margins
- Inclusion of a map scale
- Overlay with GPX tracks
- Clone a map project
- Definition of user defined texts on top of the map
- Added tooltips for map project states and actions
- Added German and French translations
- Defined PNG as standard format for new map projects
- Fixed action not triggered when not clicking in the center zone of a button
- Fixed issue when rendering is launched before the project has been saved
- Fixed production build (code optimisation)
- Extracted config into a separate modifiable file
- Added some notes about installation and development
- Initial alpha version providing simple selection of an area on a map and allowing to render it