{"id":23994765,"url":"https://github.com/mapfish/mapfish-print-v2","last_synced_at":"2025-04-14T18:42:08.915Z","repository":{"id":37931703,"uuid":"502035378","full_name":"mapfish/mapfish-print-v2","owner":"mapfish","description":"MapFish Print allows printing maps as PDFs and is used by mapfish.org, geoserver extension and core-genet work.","archived":false,"fork":false,"pushed_at":"2025-03-10T17:49:58.000Z","size":8746,"stargazers_count":0,"open_issues_count":4,"forks_count":13,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-13T15:57:58.711Z","etag":null,"topics":["mapping","pdf-generation"],"latest_commit_sha":null,"homepage":"http://www.mapfish.org/doc/print/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mapfish.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"authors.txt","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-06-10T12:29:51.000Z","updated_at":"2025-03-10T17:49:36.000Z","dependencies_parsed_at":"2024-07-15T17:13:43.164Z","dependency_job_id":"e524e316-a7e7-4d9a-93ef-aded4d4d1613","html_url":"https://github.com/mapfish/mapfish-print-v2","commit_stats":null,"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapfish%2Fmapfish-print-v2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapfish%2Fmapfish-print-v2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapfish%2Fmapfish-print-v2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapfish%2Fmapfish-print-v2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mapfish","download_url":"https://codeload.github.com/mapfish/mapfish-print-v2/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248938325,"owners_count":21186386,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["mapping","pdf-generation"],"created_at":"2025-01-07T21:20:31.184Z","updated_at":"2025-04-14T18:42:08.903Z","avatar_url":"https://github.com/mapfish.png","language":"Java","readme":"# MapFish Print V2 \n\nThis project is no longer actively maintained by [camptocamp](https://www.camptocamp.com/en). New projects are strongly encouraged to use [mapfish-print](https://github.com/mapfish/mapfish-print) which is at Version 3 at the time of writing.\n\nThis project is no longer fully functional, consisting of ``mapfish-print-lib.jar`` distribution used\nby downstream projects as described below.\n\n[MapFish Print 2.3 documentation](https://mapfish.github.io/mapfish-print-v2/) \n\n## Background\n\nDownstream projects making use of this technology:\n\n- [geoserver](https://docs.geoserver.org/latest/en/user/extensions/printing/index.html) - Uses ``mapfish-print-lib`` for gs-printing extension\n- [core-geonetwork](http://github.com/geonetwork/core-geonetwork) - uses mapfish-print-lib for activities such as thumbnail generation\n- [GeoNode](https://github.com/geonode/) - ``mapfish-print-lib`` via geoserver printing extension\n- [MapStore](https://github.com/geosolutions-it/MapStore2) - ``mapfish-print-lib`` via geoserver printing extension\n\nGeoCat BV has mained this series as needed to support the core-geonetwork project:\n\n- Updated to migrate to OpenPDF\n\nGeoSolutions created a fork of the project in 2013:\n\n- https://github.com/geosolutions-it/mapfish-print\n- Some features introduced over time (see [wiki](https://github.com/geosolutions-it/mapfish-print/wiki) )\n- Updated to reflect GeoTools changes including Java 11 and Log4j changes\n- This work has been incorporated back into `mapfish-print-lib` for 2.3.0 release\n- With ``GeoNode`` and ``MapStore`` successfully migrating to ``mapfish-print-lib`` this fork has concluded.\n\nOutdated documentation:\n\n- http://www.mapfish.org/doc/print/index.html\n\n## Maven Build\n\nStandard maven build targets are available:\n\n1. To clean the ``target/`` folder:\n\n   ```bash\n   mvn clean\n   ```\n\n2. To compile:\n\n   ```bash\n   mvn compile\n   ```\n\n3. To create a ``print-lib-2.x-SNAPSHOT.jar`` jar:\n\n   ```bash\n   mvn package\n   ```\n\n4. To install SNAPSHOT jar into ``~/.m2/repository`` local maven repository:\n  \n   ```bash\n   mvn install\n   ```\n  \n   The use of a local maven repository allows for integration testing with other builds.\n\n## IDE Build\n\nTo build in IntelliJ:\n\n1. Open as a maven project.\n\nTo build in Eclipse:\n\n1. Open as maven project.\n\nTo build in Eclipse as a Java project:\n\n1. Create eclipse project ``.classpath`` and ``.project`` files:\n   ```bash\n   mvn eclipse:eclipse\n   ```\n   \n2. Import project into Eclipse as a Java project.\n\nWhen running in an IDE:\n\n1. Main class is ``org.mapfish.print.ShellMapPrinter``\n\n2. Program arguments: ``--config=samples/config.yaml --spec=samples/spec.json --output=$HOME/print.pdf``\n\n## Deploy\n\nTo deploy SNAPSHOT to repo.osgeo.org:\n\n```bash\nmvn deploy\n```\n\nYour `~/.m2/settings.xml` requires credentials to access osgeo ``nexus`` server at repo.osgeo.org.\nSee https://wiki.osgeo.org/wiki/SAC:Repo to obtain credentials:\n\n```xml\n  \u003cservers\u003e\n    \u003cserver\u003e\n      \u003cusername\u003eOSGEO_ID\u003c/username\u003e\n      \u003cpassword\u003eOSGEO_PASSWORD\u003c/password\u003e\n      \u003cid\u003enexus\u003c/id\u003e\n    \u003c/server\u003e\n  \u003c/servers\u003e\n```\n## Docs\n\nUses Python3 environment for **sphinx-build** documentation:\n\n```\nvirtualenv venv\nsource venv/bin/activate\npip install -r docs/requirements.txt\nsphinx-build -b html -d docs/_build/doctrees docs docs/_build/html\nopen docs/_build/html/index.html \n```\n\nDocs are created in ``docs/_build/html`` folder.\n\nMaven `docs` profile will assemble the docs into a zip bundle if ``docs/_build/html/index.html`` exists.\n\n```\nmvn package\n```\n\n## Release\n\nTo create a release:\n\n1. Update version in ``pom.xml``:\n  \n   ```xml\n   \u003cgroupId\u003eorg.mapfish.print\u003c/groupId\u003e\n   \u003cartifactId\u003eprint-lib\u003c/artifactId\u003e\n   \u003cversion\u003e2.3.3\u003c/version\u003e\n   ```\n\n2. Double check `ReleaseNotes.md` change-log and update if ndded.\n\n3. Build docs:\n   \n   ```bash\n   sphinx-build -b html -d docs/_build/doctrees docs docs/_build/html\n   ```\n   \n3. Build confirming creation of ``print-lib-2.3.3.jar``\n\n   ```bash\n   mvn clean install\n   ```\n\n3. Commit the change to ``pom.xml``\n\n   ```bash\n   git add pom.xml\n   git commit -m \"Release 2.3.3\"\n   ```\n\n4. Deploy to osgeo nexus\n\n   ```bash\n   mvn deploy -DskipTests\n   ```\n\n5. Push and tag the change:\n   \n   ```bash\n   git push\n   git tag -a release/2.3.3 -m \"Release 2.3.3\"\n   git push origin release/2.3.3\n   ```\n\n6. Check the release in github:\n   \n   * https://github.com/mapfish/mapfish-print-v2/tags\n   \n7. Add any release-notes to the tag in GitHub.\n\n   Upload jar and docs bundles from target folder.\n\n9. Update the ``pom.xml`` against to return to SNAPSHOT developmentt:\n   \n   ```xml\n   \u003cgroupId\u003eorg.mapfish.print\u003c/groupId\u003e\n   \u003cartifactId\u003eprint-lib\u003c/artifactId\u003e\n   \u003cversion\u003e2.3-SNAPSHOT\u003c/version\u003e\n   ```\n   \n   And push up the change:\n   ```bash\n   git add pom.xml\n   git commit -m \"Development 2.3-SNAPSHOT\"\n   git push\n   ```","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmapfish%2Fmapfish-print-v2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmapfish%2Fmapfish-print-v2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmapfish%2Fmapfish-print-v2/lists"}