{ "info": { "author": "David Wolever", "author_email": "david@wolever.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: BSD License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 3", "Programming Language :: Python :: Implementation :: PyPy" ], "description": "libzbar: efficient cffi-based bindings for zbar\n===============================================\n\nPython cffi-based bindings for zbar (http://zbar.sourceforge.net/) designed to\nbe as efficient as possible.\n\nPython 2, Python 3, and PyPy compatible!\n\nNote: currently a work in progress. Entirely functional and production-ready\n(see `NumPy note`_), but missing some configuration options.\n\n\nInstallation\n------------\n\n::\n\n $ pip install libzbar-cffi\n\n\nExamples\n--------\n\n::\n\n >>> import libzbar as zb\n\n # Images can be loaded from PIL images:\n >>> from PIL import Image\n >>> im = Image.open(\"test/qr-numeric.png\")\n >>> zb.Image.from_im(im).scan()\n []\n\n # And from NumPy arrays. Note: if the array has an 8-bit data type (ex,\n # uint8) a pointer to its data will be passed directly into zbar making\n # this method very efficient.\n >>> import numpy as np\n >>> zb.Image.from_np(im.size, np.array(im)).scan()\n []\n\n # By default, only QR codes will be scanned. Other symbol types can be\n # scanned using the ``symbol_type`` argument (see ``libzbar.symbol_types``),\n # or ``0`` for \"all symbol types\":\n >>> ean13 = zb.Image.from_im(Image.open(\"test/ean13-example.png\"))\n >>> ean13.scan()\n []\n >>> ean13.scan(symbol_type=0)\n []\n\n\nNumPy Note\n----------\n\nWhen using the ``Image.from_np(\u2026)`` constructor a pointer to the underlying\narray is passed directly to ``zbar``. The array's size and dtype are sanity\nchecked, but at the moment the `ctypes flags`__ are ignored, so Strange Things\nmight happen if the underyling array isn't a straight forward\n`uint8_t[size[0] * size[1]]`.\n\nAdditionally, the array *should not be changed* for the lifecycle of the\n``Image``, as this could invalidate the data pointer.\n\n\n__ http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.ctypes.html#numpy.ndarray.ctypes", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/wolever/libzbar-cffi", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "libzbar-cffi", "package_url": "https://pypi.org/project/libzbar-cffi/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/libzbar-cffi/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/wolever/libzbar-cffi" }, "release_url": "https://pypi.org/project/libzbar-cffi/0.2.1/", "requires_dist": null, "requires_python": null, "summary": "Efficient cffi-based bindings for the zbar QR decoder (Py2, Py3, and PyPy)", "version": "0.2.1" }, "last_serial": 2097289, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "c1cd595eafe02f4e758635342d1f5655", "sha256": "cdb58301678c34b5e4f6bf47f5d90ec9520194bd5f147f7ef981bb8018a6e0d4" }, "downloads": -1, "filename": "libzbar-cffi-0.1.tar.gz", "has_sig": false, "md5_digest": "c1cd595eafe02f4e758635342d1f5655", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14129, "upload_time": "2015-06-12T23:12:37", "url": "https://files.pythonhosted.org/packages/58/16/5cabefc5e9ef33e3e693dc1423824c5ed3ce24c49bdf706db8824a081dbd/libzbar-cffi-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "98dba5d3335eb4aebaed4eada9b4fd57", "sha256": "3e93384c65e9ceca078aebf67f7d8ce98966cd59acbe96a7141d31cf71adc207" }, "downloads": -1, "filename": "libzbar-cffi-0.1.1.tar.gz", "has_sig": false, "md5_digest": "98dba5d3335eb4aebaed4eada9b4fd57", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14676, "upload_time": "2015-06-13T23:03:30", "url": "https://files.pythonhosted.org/packages/1a/7b/6139e90480c09895dcb9940c16af1da00d882b10ba0fff166eddb0894321/libzbar-cffi-0.1.1.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "2d36d12407b9b0b5ea682e2467dd3110", "sha256": "b00fa4d1d2bf2d1c8bd13eb9768a349592258f66b194efa1b488b1779cf903fc" }, "downloads": -1, "filename": "libzbar-cffi-0.2.0.tar.gz", "has_sig": false, "md5_digest": "2d36d12407b9b0b5ea682e2467dd3110", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15206, "upload_time": "2015-08-25T22:43:55", "url": "https://files.pythonhosted.org/packages/7b/5a/d09b8b8f307a62f023971c6d4be192ebe3904f4bd46d4b542f47739021d1/libzbar-cffi-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "9e2bcf6ad67ee20a2f7ba0f636e2156c", "sha256": "11298fa96b6e1b9a308e1085c3a4eca4dd588d5e5f4a26affe3df188f0fbbf69" }, "downloads": -1, "filename": "libzbar-cffi-0.2.1.tar.gz", "has_sig": false, "md5_digest": "9e2bcf6ad67ee20a2f7ba0f636e2156c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15233, "upload_time": "2016-05-03T16:04:22", "url": "https://files.pythonhosted.org/packages/37/de/3c8405518c95684696e7b30b183c273aa97396377b1c87763ee4af82d82f/libzbar-cffi-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9e2bcf6ad67ee20a2f7ba0f636e2156c", "sha256": "11298fa96b6e1b9a308e1085c3a4eca4dd588d5e5f4a26affe3df188f0fbbf69" }, "downloads": -1, "filename": "libzbar-cffi-0.2.1.tar.gz", "has_sig": false, "md5_digest": "9e2bcf6ad67ee20a2f7ba0f636e2156c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15233, "upload_time": "2016-05-03T16:04:22", "url": "https://files.pythonhosted.org/packages/37/de/3c8405518c95684696e7b30b183c273aa97396377b1c87763ee4af82d82f/libzbar-cffi-0.2.1.tar.gz" } ] }