geostyler-mapfile-parser
    TypeScript icon, indicating that this package has built-in type declarations

    2.0.0 • Public • Published

    geostyler-mapfile-parser

    Build Status Coverage Status npm version

    GeoStyler Style Parser implementation for Mapserver Mapfiles

    Prerequisite

    node v10+

    And install it with npm:

    npm i geostyler-mapfile-parser

    How to use

    If the aim is to transform a Mapfile to another format, your Mapfile must contains only one LAYER per file.

    ES6

    import * as fs from 'fs';
    import MapfileParser from 'geostyler-mapfile-parser';
    
    const parser = new MapfileParser();
    
    // Load a Mapfile file
    const mapfile = fs.readFileSync('./mapfiles_folder/my_mapfile.map', 'utf8');
    
    const { output: geostylerStyle } = await parser.readStyle(mapfile);
    console.log(geostylerStyle);

    Writing a Mapfile from a Geostyler-Style object is currently not possible.

    Command line

    To transforms a file to another Geostyler style, use Geostyler-cli Short example of usage - Install and transform a Mapfile to a QGIS qml file, specifying a custom directory for symbols:

    npm install -g geostyler-cli
    geostyler -s sld -t qgis -o output.map input.qml mapfile-symbols-path=./symbols.sym
    

    Specify a symbols.sym file

    If a symbolset tag is defined in your mapfile, this link will be followed to read symbols. If it's not the case a symbols.sym should be located from where you call the transformation.

    You can set the default path with:

    const parser = new MapfileParser();
    parser.symbolsPath = '<a/path/to/symbols.sym>'
    

    Alternatively, if you use this library through a script, you can set the path by adding the command line option: mapfile-symbols-path=.

    Run tests

      npm install
      npm run test

    Run MapServer to display features styles

    Be sure you have:

    Then run simply: make run

    You can now show predefined mapfiles at this url:

    http://localhost:8380/mapserv?service=wms&version=1.3.0&request=getmap&bbox=46.4,6.4,47.2,7.8&layers=line_simple_line&width=1200&height=800&format=image/jpeg&CRS=EPSG:4326

    Set the layers param to display other layers (from layers defined in /data/mapfiles).

    Install

    npm i geostyler-mapfile-parser

    DownloadsWeekly Downloads

    12

    Version

    2.0.0

    License

    BSD-2-Clause

    Unpacked Size

    248 kB

    Total Files

    37

    Last publish

    Collaborators

    • chrismayer
    • simonseyock
    • marcjansen
    • terrestris-info
    • kaivolland
    • ahennr
    • dnlkoch
    • buehner
    • annarieger
    • jansule
    • hwbllmnn
    • lukaslohoff
    • mholthausen
    • bgerber
    • sgoetsch
    • jorzekowsky
    • hblitza
    • jweskamm
    • unraveler