Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
3 #¸ bÑã@snddlmZddlmZddlmZddlmZmZ Gdd„deƒZ Gdd„de ƒZ d d „Z e d krje ƒd S) é)Ú Standard39)Úcolors)Úcm)Úascii_uppercaseÚdigitsc@sjeZdZdZdeZdeZdeZdZdeZ deZ deZ e Z d e Z d e Zddd„Zdd„Zd S)Ú BaseLTOLabela! Base class for LTO labels. Specification taken from "IBM LTO Ultrium Cartridge Label Specification, Revision 3" available on May 14th 2008 from : http://www-1.ibm.com/support/docview.wss?rs=543&context=STCVQ6R&q1=ssg1*&uid=ssg1S7000429&loc=en_US&cs=utf-8&lang=en+en gš™™™™™@g333333û?g333333Ã?g@gQkšwœ¢@gÃõ(\�Âñ?g®Ø_vO¦?é ÚNÚ1Fc Csàt||jƒ|_||_t|ƒdks,|ttkr8td|ƒ‚| rJt|ƒdksT|jƒ r`td|ƒ‚d|t |pldƒj dt|ƒƒdd…|f}t|ƒdkr¬td |||fƒ‚||_ t j |||j|j|j|j|j|jd |d � dS) a Initializes an LTO label. prefix : Up to six characters from [A-Z][0-9]. Defaults to "". number : Label's number or None. Defaults to None. subtype : LTO subtype string , e.g. "1" for LTO1. Defaults to "1". border : None, or the width of the label's border. Defaults to None. checksum : Boolean indicates if checksum char has to be printed. Defaults to False. availheight : Available height on the label, or None for automatic. Defaults to None. ézInvalid subtype '%s'ézInvalid prefix '%s'z%sL%srNéz&Invalid set of parameters (%s, %s, %s)T)ZratioZ barHeightZbarWidthZgapZlquietZrquietÚquietÚchecksum)ÚmaxÚ CODEBARHEIGHTÚheightÚborderÚlenrÚ string_digitsÚ ValueErrorÚisalnumÚstrÚzfillÚlabelrÚ__init__Ú CODERATIOÚ CODEBARWIDTHÚCODEGAPÚ CODELQUIETÚ CODERQUIET)ÚselfÚprefixÚnumberÚsubtyperrÚ availheightr©r&ú?/tmp/tmp4i9tl1d3/lib64/python/reportlab/graphics/barcode/lto.pyrs0     & zBaseLTOLabel.__init__cCsn|jƒ|j||ƒ|jr>|j|jƒ|jdd|j|j|jƒtj |||j|j d|j|j ƒ|j ƒdS)z$Draws the LTO label onto the canvas.rg@N) Ú saveStateÚ translaterÚ setLineWidthZ roundRectÚ LABELWIDTHÚ LABELHEIGHTÚ LABELROUNDrÚdrawOnÚCODENOMINALWIDTHrÚ restoreState)r!ÚcanvasÚxÚyr&r&r'r.Ds  zBaseLTOLabel.drawOn)r Nr NFN)Ú__name__Ú __module__Ú __qualname__Ú__doc__rr+r,r-rr/rrrrr rr.r&r&r&r'r s$ $rc @s@eZdZdZdZdeZdeZdZdZ dZ dd„Z dd„Z dS)ÚVerticalLTOLabelzT A class for LTO labels with rectangular blocks around the tape identifier. úHelvetica-Boldér gÍÌÌÌÌÌÜ?gš™™™™™‰?éÚredÚyellowÚ lightgreenÚ lightblueÚgreyÚ orangeredÚpinkÚ darkgreenÚorangeÚpurplecOsFd|kr|d|_|d=nd|_|j|j|d<tj|f|ž|ŽdS)zp Initializes the label. colored : boolean to determine if blocks have to be colorized. ÚcoloredFr%N)rFr,Ú BLOCKHEIGHTrr)r!ÚargsÚkwargsr&r&r'rhs  zVerticalLTOLabel.__init__c Cs¨tj||||ƒ|jƒ|j|jƒ|jdddƒ|j||ƒ|j|j|j d}�xDt |jƒD�]4}|j \}}|j }||jdkr®|j |d…} |\}}|d}||f}n |j |} |jƒ|j|||j dƒ|j oâ| jƒ�r|jtt|jt| ƒtjdddƒƒjƒŽn|jdddƒ|jdd|j |jdd�|j|j |j| f|žŽd|jdƒ|jdƒ|j|Ž|jdddƒ|jdd| ƒ|jƒqbW|jƒdS)z5Draws some blocks around the identifier's characters.rg@r NT)Úfillg€V@)rr.r(r*Ú LINEWIDTHZsetStrokeColorRGBr)r+ÚNBBLOCKSÚ BLOCKWIDTHÚrangeÚ LABELFONTrrFÚisdigitZsetFillColorRGBÚgetattrrÚ COLORSCHEMEÚintZColorZrgbZrectrGZ stringWidthÚrotateÚsetFontÚdrawCentredStringr0) r!r1r2r3ZxblocksÚiZfontÚsizeZnewfontÚpartr&r&r'r.vsD          zVerticalLTOLabel.drawOnN)r9r:) r<r=r>r?r@rArBrCrDrE) r4r5r6r7rOrrMrGrKrLrRrr.r&r&r&r'r8Ts$r8c Cs|ddlm}ddlm}|d|jd�}|jddƒ|j\}}|j|d|d td ƒd t}}d t}}d t} d t} d} td| dƒj |||ƒ|| 7}| d7} td| ddd�j |||ƒ|| 7}| d7} t d| dƒj |||ƒ|| 7}| d7} t d| ddd�j |||ƒ|| 7}| d7} t d| ddd�j |||ƒ|| 7}| d7} t d| dddd�j |||ƒ|j ƒ|j ƒdS)z Test this.r)ÚCanvas)Ú pagesizesz labels.pdf)ZpagesizeZ Helveticaég@ézSample LTO labelsérg333333@iÒZRLÚ3r gš™™™™™‰?)rT)rF)rrFN) Zreportlab.pdfgen.canvasrZÚ reportlab.libr[ZA4rUrVrrr.r8ZshowPageÚsave) rZr[r1ÚwidthrZxposZxorigZyposZyorigÚcolwidthZ lineheightÚcountr&r&r'Útest�sB      reÚ__main__N)Z!reportlab.graphics.barcode.code39rr`rZreportlab.lib.unitsrÚstringrrrrr8rer4r&r&r&r'Ús   KI%