{ "info": { "author": "Timothy Hobbs", "author_email": "timothy.hobbs@auto-mat.cz", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: Utilities" ], "description": "smmapdfs: Sudo make me a pdf sandwich\n=====================================\n\nsmmapdfs is used for generating pdf files from django models by overlaying the text of fields onto a background pdf file. It differs from other django pdf apps such as `django-easy-pdf `_ and `django-pdfkit `_ in that it is intended to be used by graphics designers wishing to overlay some text onto a pre-prepaired pdf background.\n\nsmmapdfs can further be used to send out emails with the pdfs. It was initially intended to send out diplomas at the end of a cycling competition.\n\nVideo tutorial:\n---------------\n\n.. image:: ./play.png\n :target: https://ipfstube.erindachtler.me/v/QmWuK5zvq3h1CHr4P1ZYUQ6HPidF9NYHhmmXzNf5XsVRnU\n\nInstalation:\n------------\n\nSudo make me a pfd sandwich is published on Pypy as `django-smmapdfs `_.\n\n pip3 install django-smmapdfs\n\nIntegration:\n------------\n\nSee the example app for an example of how to integrate smmapdfs into your django application.\n\nConfiguration:\n--------------\n\nIn smmapdfs admin:\n\n- For each competition add a new pdfsandwich type, uploading a PDF and setting its size. There can only be one pdfsandwich type per competition\n- For each pdfsandwich type and langauge add a pdfsandwich email\n\nIn your application's admin:\n\n- For each pdfsandwich type add the fields you want displayed on the pdfsandwich, setting their coordinates left\u2192right, bottom\u2191\u1d58\u1d56 in millimeters\n\nGenerating pdfsandwichs:\n------------------------\n\nIn your application's admin\n\n- Select the objects you wish to to generate pdfsandwichs for\n- Select the Make PdfSandwich action\n\nSending pdfsandwichs:\n---------------------\n\n- In your applications admin select the pdfsandwichs you want to send and use the send action\n\nNotes about email formatting:\n-----------------------------\n\nThe emails are sent as HTML messages. Text messages are created by stripping out the HTML tags. This means that links should be written in their full form.\n\nSPAM\n----\n\nPlease remember, both the United states and the EU have criminal penalties for sending unsolicited SPAM email messages. This app is not designed or intended for such a purpose. Please do not use it to send SPAM. (This note has no legal implications for licensing purposes. The software is licensed under the GNU LGPLv3.0)\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "http://pypi.python.org/pypi/django-smmapdfs/", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/auto-mat/smmapdfs", "keywords": "", "license": "LPGL, see LICENSE file.", "maintainer": "", "maintainer_email": "", "name": "django-smmapdfs", "package_url": "https://pypi.org/project/django-smmapdfs/", "platform": "", "project_url": "https://pypi.org/project/django-smmapdfs/", "project_urls": { "Download": "http://pypi.python.org/pypi/django-smmapdfs/", "Homepage": "https://github.com/auto-mat/smmapdfs" }, "release_url": "https://pypi.org/project/django-smmapdfs/1.0.2/", "requires_dist": [ "Django" ], "requires_python": "", "summary": "Generate PDFs from django models by overlaying text onto an existing pdf", "version": "1.0.2" }, "last_serial": 4917220, "releases": { "0.0": [ { "comment_text": "", "digests": { "md5": "7fb6c9b8fe0f179c4a3a3c31e652a8c9", "sha256": "d0c3f13defc7d8e81b249ebddf301204cb037e7a55c80c4cbdf0cfad2095fd28" }, "downloads": -1, "filename": "django_smmapdfs-0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "7fb6c9b8fe0f179c4a3a3c31e652a8c9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13167, "upload_time": "2018-05-27T14:17:14", "url": "https://files.pythonhosted.org/packages/fe/de/8b22b856f66d8c63a64b6b55ab607b215a20ab6b6045c7aea5825030e3ab/django_smmapdfs-0.0-py3-none-any.whl" } ], "0.0.1": [ { "comment_text": "", "digests": { "md5": "4f7b73e87d680c61e1736d1f4891bdb5", "sha256": "41edd3712547cd2da36a8d1e261ca7f89ccb9c5714e60ad4dcca67da5aea3402" }, "downloads": -1, "filename": "django_smmapdfs-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "4f7b73e87d680c61e1736d1f4891bdb5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13131, "upload_time": "2018-05-28T14:58:55", "url": "https://files.pythonhosted.org/packages/e4/b5/c90f6975b6d1142210e4ecec6f145f78d51b62177c1cfd1ef45aff2b80e9/django_smmapdfs-0.0.1-py3-none-any.whl" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "10348bfdc2a719dafd3e4c1385fda319", "sha256": "2414eb3bd6a83b6108bcb3838a086781483e82ac8083faa1181235983d94148d" }, "downloads": -1, "filename": "django_smmapdfs-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "10348bfdc2a719dafd3e4c1385fda319", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13132, "upload_time": "2018-05-28T16:01:21", "url": "https://files.pythonhosted.org/packages/3f/76/013e8972502176beda53a0d14b31fa17fbeb8b4c16eb430410c69bc585be/django_smmapdfs-0.0.2-py3-none-any.whl" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "1fbbb304d85ac7e2dc9486235c2a8a86", "sha256": "f3f2408faebc47a23f376d08ec52f1f90e9fca16f027fbc2c945c80f0a7dc1d2" }, "downloads": -1, "filename": "django_smmapdfs-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "1fbbb304d85ac7e2dc9486235c2a8a86", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13135, "upload_time": "2018-05-28T16:48:55", "url": "https://files.pythonhosted.org/packages/68/8c/24d03d99c38344d1e0b401dc94d395e9b9ca5ece1bc0cdb8c3b02bc336c5/django_smmapdfs-0.0.3-py3-none-any.whl" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "2a1403f38db49d28a94b187c0831ef45", "sha256": "ca0e532b42ba4cdeebbd680e39cf3bd6a3b1a41c6ce7b9569d632d86a9078ade" }, "downloads": -1, "filename": "django_smmapdfs-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "2a1403f38db49d28a94b187c0831ef45", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13404, "upload_time": "2018-05-31T14:23:58", "url": "https://files.pythonhosted.org/packages/09/0c/4cc6c5cf275927fc44fe384e4194fd5069448888d8746711c3000d5cbd96/django_smmapdfs-0.0.4-py3-none-any.whl" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "b8aa563c4702ede5915a92f842262289", "sha256": "a1db6db27629b477fe821a337a68f0485ce6bd1db416c24114c72fc868c8363c" }, "downloads": -1, "filename": "django_smmapdfs-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "b8aa563c4702ede5915a92f842262289", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13411, "upload_time": "2018-05-31T15:12:04", "url": "https://files.pythonhosted.org/packages/1a/55/c99261ed5ac6c6fd59e1d59c8041bba6160fb301719d792b1a69866f6c24/django_smmapdfs-0.0.5-py3-none-any.whl" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "113b46c7c4e8a8664ababd87666eb8f0", "sha256": "964182db949b9156422ffcb898afa66dfb3bde3b41efaa98c353bb07b8e899d3" }, "downloads": -1, "filename": "django_smmapdfs-0.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "113b46c7c4e8a8664ababd87666eb8f0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13425, "upload_time": "2018-06-05T12:59:23", "url": "https://files.pythonhosted.org/packages/76/6a/2c519d29b6a4ca295335ca1b22fad179a55cc6f026b0697a15918824f810/django_smmapdfs-0.0.6-py3-none-any.whl" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "40ceffde75639b185bc97f3e64e2cc14", "sha256": "198e6b5b8c3bea4a422340768670bdf8aa4ee158b629e662b19374d4f88cff2f" }, "downloads": -1, "filename": "django_smmapdfs-0.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "40ceffde75639b185bc97f3e64e2cc14", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13430, "upload_time": "2018-06-05T13:26:49", "url": "https://files.pythonhosted.org/packages/44/6c/a388d9b076fe7bb737bbb2b0ca301e1e5ed3430330bffb20d7203e5bee6b/django_smmapdfs-0.0.7-py3-none-any.whl" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "e9b9dd70556c09cbb5b5e624d39feb91", "sha256": "50ed611baa03f0a6fb2f8ae9eeca55f5d945a7defc24a4d5b27b8bdfb38bc2c6" }, "downloads": -1, "filename": "django_smmapdfs-0.0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "e9b9dd70556c09cbb5b5e624d39feb91", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13433, "upload_time": "2018-06-11T14:06:58", "url": "https://files.pythonhosted.org/packages/19/18/3eae6a640374cce005a7f732d710ecb47ce3792b8956c32c86c578f4cd20/django_smmapdfs-0.0.8-py3-none-any.whl" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "6dba7b7c31b331b1f6c57619dd28cb93", "sha256": "dae6f052784d29557e2a8371f1c143c97c18e35f897d1cd4c14085c74c06e7e4" }, "downloads": -1, "filename": "django_smmapdfs-0.0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "6dba7b7c31b331b1f6c57619dd28cb93", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13536, "upload_time": "2018-06-12T13:39:22", "url": "https://files.pythonhosted.org/packages/61/30/580cbd8c08556231c304e486ce8ab486d491d73a67b6f299e2c9180b72a7/django_smmapdfs-0.0.9-py3-none-any.whl" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "4fe8ea1898dc3fa04bed36383e67ddfe", "sha256": "3cacd4fd3a775f94c87e15bfcc913945544657d043d12ae2b3d5fbbbca75aa2d" }, "downloads": -1, "filename": "django_smmapdfs-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "4fe8ea1898dc3fa04bed36383e67ddfe", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 14284, "upload_time": "2018-06-13T20:29:21", "url": "https://files.pythonhosted.org/packages/e2/97/5e9c079c862be2b1f9d10d1ca185a7fb65e162a83577720e9ae93e07efa4/django_smmapdfs-0.1.0-py3-none-any.whl" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "04f97423c29f70f3231c0b777a6f44ed", "sha256": "456b5c7592f72c21ccd081633f36230da9ab87f91a0228586fea17fcf346a1fa" }, "downloads": -1, "filename": "django_smmapdfs-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "04f97423c29f70f3231c0b777a6f44ed", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 14395, "upload_time": "2018-12-13T18:08:33", "url": "https://files.pythonhosted.org/packages/f4/a8/60b1588ec21f4eedabdc587d8f87055a873f71930ab76a3068c034ff713b/django_smmapdfs-1.0.1-py3-none-any.whl" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "90983a04487efc992ce5eba0d99f3a31", "sha256": "701fcd72637d82fd42c3a75fdf101a790a48367e882b6955f76e8d35fee57c91" }, "downloads": -1, "filename": "django_smmapdfs-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "90983a04487efc992ce5eba0d99f3a31", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 14363, "upload_time": "2019-03-08T21:42:42", "url": "https://files.pythonhosted.org/packages/7a/85/79b0569528cea801b840de0a13f96c7e94677c54abdc5a34f7bf3c13f037/django_smmapdfs-1.0.2-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "90983a04487efc992ce5eba0d99f3a31", "sha256": "701fcd72637d82fd42c3a75fdf101a790a48367e882b6955f76e8d35fee57c91" }, "downloads": -1, "filename": "django_smmapdfs-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "90983a04487efc992ce5eba0d99f3a31", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 14363, "upload_time": "2019-03-08T21:42:42", "url": "https://files.pythonhosted.org/packages/7a/85/79b0569528cea801b840de0a13f96c7e94677c54abdc5a34f7bf3c13f037/django_smmapdfs-1.0.2-py3-none-any.whl" } ] }