Package: xebus-id-card-image-generator
Xebus ID Card GeneratorXebus ID Card Generatoris a Command-Line Interface (CLI) written in Python used to generate JPEG images of Xebus ID cards.This script generates images which size has the same portrait ratio asISO/IEC 7810 Identification cards ID-1(3 3⁄8 in × 2 1⁄8 in, 54mm x 85.6mm).InstallationXebus ID Card Generatorcan be easily installed with [pipenv]cod(https://github.com/pypa/pipenv):$pipenv--python3.8shell
$pipenvinstallxebus-id-card-image-generatorNote: As of October 2020, the Python Image Library (PIL) is not yet compatible with Python 3.9.Execution$./bin/xidgen--help
usage:xidgen[-h][-cTYPE]-fFILE[-dCHAR][-qCHAR][-eCHAR][-sGEOMETRY][-pSIZE]--header-fileFILE[--font-nameNAME]XebusIDCardImagesGenerator

optionalarguments:-h,--helpshowthishelpmessageandexit-cTYPE,--card-typeTYPEspecifythetypeofIDcardstogenerate(driver,guardian,securityguard,student)-fFILE,--csv-fileFILEspecifytheabsolutepathandnameoftheCSVfilecontainingtheinformationofIDcardstogenerate-dCHAR,--delimiterCHARspecifythecharacterusedtoseparateeachfield(defaulttocharacter[,])-qCHAR,--quotecharCHARspecifythecharacterusedtosurroundfieldsthatcontainthedelimitercharacter(defaulttocharacter["]).-e CHAR, --escapechar CHARspecify the character used to escape the delimitercharacter, in case quotes aren't used (default tocharacter [None]).-s GEOMETRY, --size GEOMETRYspecify the width and/or height in pixels of the imageto build, with the ratio of a CR80 standard creditcard size ID-1 in portrait mode (54mm x 85.6mm)-p SIZE, --padding SIZEspecify the space in pixels or percentage to generatearound the ID card--header-file FILE    specify the absolute path name of the header imagefile--font-name NAME      specify the name of the font to display the full nameof each ID card--name-format FORMAT  specify the format of ID card file name--debug LEVEL         specify the logging level (value between 0 and 4, fromcritical to debug)For example:$xidgen--card-typestudent--header-filelfiduras_logo.jpg--csv-filelfiduras-students.csvThe user can specify the file name of the ID card images by passing the argumentname-format.  A ID card file name format MUST be composed of field names to build this file name with.  These field names MUST be defined in braces, each field names separated with a character underscore.  For example:{id}_{first name}_{grade level}Note: The accepted field names correspond to the CSV field names.CSV FileThe CSV file passed to the script MUST contain a first row corresponding to the header fields in whatever order:#(optional): The identification of the registration file of the card owner (as provided by the organization that manages this list)ID(required): The identification of the card ownerCard Type(optional): Specify the type of the ID card (driver,guardian,securityguard, orstudent)Class Name(optional)First Name(optional)Full Name(required)Grade Level(optional): The number of the year a pupil has reached in this given educationalGrade Name(optional): THe name given to this gradeLast Name(optional)For example:#IDFirst NameLast NameFull NameGrade LevelGrade Name862-295-7293a72a73e-c57b-11ea-8e0d-0008a20c190fCélineCAUNECéline Kim Anh CAUNE LÝ16Terminale873-774-763d8be1eef-2493-11eb-9dcf-0007cb040bccAlineCAUNEAline Minh Anh CAUNE LÝ15Première457-128-612f6315b69-11af-11eb-bb6b-0007cb040bccÉlineCAUNEÉline Xuân Anh CAUNE NGUYỄN2PSAvailable FontsAmorino_betaCalibri LightOpificio_light_roundedBarlow-BlackCalibri RegularOpificio_regularBarlow-BlackItalicCaviarDreamsOpificio_roundedBarlow-BoldCaviarDreams_BoldPirataOne-RegularBarlow-BoldItalicCaviarDreams_BoldItalicPlayfairDisplay-BlackBarlow-ExtraBoldCaviarDreams_ItalicPlayfairDisplay-BlackItalicBarlow-ExtraBoldItalicChampagne & Limousines Bold ItalicPlayfairDisplay-BoldBarlow-ExtraLightChampagne & Limousines BoldPlayfairDisplay-BoldItalicBarlow-ExtraLightItalicChampagne & Limousines ItalicPlayfairDisplay-ExtraBoldBarlow-ItalicChampagne & LimousinesPlayfairDisplay-ExtraBoldItalicBarlow-LightForgotbiPlayfairDisplay-ItalicBarlow-LightItalicForgottbPlayfairDisplay-MediumBarlow-MediumForgottePlayfairDisplay-MediumItalicBarlow-MediumItalicForgottiPlayfairDisplay-RegularBarlow-RegularForgottsPlayfairDisplay-SemiBoldBarlow-SemiBoldGiorginoPlayfairDisplay-SemiBoldItalicBarlow-SemiBoldItalicJura-BoldQuicksand-BoldBarlow-ThinJura-LightQuicksand-LightBarlow-ThinItalicJura-MediumQuicksand-MediumBebasNeue-BoldJura-RegularQuicksand-RegularBebasNeue-BookJura-SemiBoldQuicksand-SemiBoldBebasNeue-LightLibreBaskerville-BoldRothwellBebasNeue-RegularLibreBaskerville-ItalicSkarpa regularBebasNeue-ThinLibreBaskerville-RegularSkarpaLtBedizenMerriweather-BlackSteinerlightBlacker-Display-Bold-italic-trialMerriweather-BlackItalicTeko-BoldBlacker-Display-Bold-trialMerriweather-BoldTeko-LightBlacker-Display-ExtraBold-Italic-trialMerriweather-BoldItalicTeko-MediumBlacker-Display-ExtraBold-trialMerriweather-ItalicTeko-RegularBlacker-Display-Heavy-Italic-trialMerriweather-LightTeko-SemiBoldBlacker-Display-Heavy-trialMerriweather-LightItalicVerdanaBlacker-Display-Light-Italic-trialMerriweather-RegularquarthckBlacker-Display-Light-trialMontserrat-BlackquarthinBlacker-Display-Medium-Italic-trialMontserrat-BlackItalicrokikierBlacker-Display-Medium-trialMontserrat-BoldrokikiercBlacker-Display-Regular-Italic-trialMontserrat-BoldItalicrokikierciBlacker-Display-Regular-trialMontserrat-ExtraBoldrokikiereBlacker-Text-Bold-Italic-trialMontserrat-ExtraBoldItalicrokikiereiBlacker-Text-Bold-trialMontserrat-ExtraLightrokikieriBlacker-Text-Book-Italic-trialMontserrat-ExtraLightItalicrokikierlBlacker-Text-Book-trialMontserrat-ItalicrokikierlaBlacker-Text-Heavy-Italic-trialMontserrat-LightrokikierlaiBlacker-Text-Heavy-trialMontserrat-LightItalicrokikierpBlacker-Text-Light-Italic-trialMontserrat-MediumrokikierpiBlacker-Text-Light-trialMontserrat-MediumItalicrokikiersBlacker-Text-Medium-Italic-trialMontserrat-RegularrokikierseBlacker-Text-Medium-trialMontserrat-SemiBoldrokikiersiBlacker-Text-Regular-Italic-trialMontserrat-SemiBoldItalicsaunderBlacker-Text-Regular-trialMontserrat-ThinvibrocebCalibri Bold ItalicMontserrat-ThinItalicvibroceiCalibri BoldOpificio_BoldvibrocenCalibri ItalicOpificio_Bold_roundedvibrocexCalibri Light ItalicOpificio_lightDevelopment and PublicationXebus ID Card GeneratorusesPoetry, a packaging and dependency management for Python.  To install the required packages, execute the following command:poetryinstallTo activate the virtual environment, run the following command:poetryshellTo publish a new version of the libraryXebus ID Card Generatorto thePython Package Index (PyPI), execute the following command:poetrypublish--build--username$PYPI_USERNAME--password$PYPI_PASSWORDNote: If you are storing the PyPi credentials in a.envfile, you can get this file automatically loaded when activating your virtual environment. You need to install the Poetry pluginpoetry-dotenv-plugin:poetryselfaddpoetry-dotenv-plugin