3
NZ                 @   sn-  d Z dZdZdZddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlZddlT ddlmZ ddlmZmZmZmZmZ dd	lmZ dd
lmZ ejZd ZZdZdZdZ dZ!dZ"dZ#dZ$g Z%dZ&g Z'de
j(  Z)dZ*dZ+dZ,dZ-dZ.dZ/dZ.dZ0dZ1dZ2dZ3dZ4dZ5dZ6dZ7dZ8ddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,dLZ9+ydZ:dMdNdOdPdQgZ;x.e;D ]&Z<ej=e<Z>e>rej?j@e>e<Z:P qW dZAdRdSdTdUdVgZBx.eBD ]&ZCej=eCZDeDrej?j@eDeCZAP qW dZEdWdXdYdZgZFx.eFD ]&Z<ej=e<Z>e>r"ej?j@e>e<ZEP q"W ejGeee edeHfZIeIjJejKejLd-d.d/d0d1d2d3d4d5d6d7d8d9d:ejLd;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdddj@eMeNe9jO  d_dfejLdSdTejLdUdVejLdWdXejLdYdZejLd[d\d]d^d_d`daejLdbdcddejLdedfgDg d eIjPdddddddddddddddddddddddddddddddddddddddddddddddddddddddg6\ZQZRZSZTZUZVejW  ejX ZYi ZZxReYD ]J\Z[Z\Z]Z^yeZe[  W n  e_k
rv   e]geZe[< Y nX eZe[ j`e] q>W eja  eIjbeReSdgdejcdfieZdZReRsejdd 
xeQD 
]\ZeZfeedgkr.efjg jh Zfefdhkr dZ4n*efdikrdZ4neijjd eijjd dZ4qeedkr@dZ4qeedkrRdZ4qeedjkrfdZqeedkkrzdZqeedlkrdZqeedmkrefjg jh ZfefdnkrdZn<efdokrdZn*efdpkrdZneijjd eijjd dZqeedqkrByekefjg ZW n$ elk
r8   eijjd e3ZY nX eZqeedrkrefjg jh ZfefdskrldZ#n^efdtkr~dZ#nLefdukrdZ#n8efdvkrdZ#n$efdwkrdZ#neijjd dZ#qeedkrefjg jh ZfyemefZnW n" elk
r   eijjd Y nX enZqeedkrnefjg jh ZfyemefZnW n" elk
rd   eijjd Y nX enZ qeedkrefjg jh ZfyemefZnW n" elk
r   eijjd Y nX enZ!qeedkrefjg jh ZfyemefZnW n" elk
r   eijjd Y nX enZ"qeedxk	r@efjg jh Zfy"efjod dd! \ZZ Z!Z"W n" elk
rj   eijjd" Y nX yemeZW n& elk
r   eijjd# dZY nX yeme Z W n& elk
r   eijjd$ dZ Y nX yeme!Z!W n& elk
	r   eijjd% dZ!Y nX yeme"Z"W n& elk
	r:   eijjd& dZ"Y nX qeed'k
refjg jh Zfy"efjod dd! \ZZ ZpZqW n$ elk
	r   eijjd" Y qX yemeZW n& elk
	r   eijjd# dZY nX yeme Z W n& elk

r   eijjd$ dZ Y nX edk	
rLyemepe Z!W n& elk

rH   eijjd( dZ!Y nX neijjd) dZ!e dk	
ryemeqe  Z"W n& elk

r   eijjd* dZ"Y nX neijjd+ dZ"qeed,kr$efjg jh Zrere9k
re9er \Z!Z"Z1Z2dy\ZZ erZ0n*eijjd-dj@eNe9jO   eijjd. qeedzkrej?jsej?jtej?juefjg Z$yej?jve$d ZwW n> exk
r   eijjd3 dZ$d4e%kre%jyd4 Y nrX ewjh d{kreijjd8 dZ$d4e%kre%jyd4 n6ej?jze$reij{d9e$  d4e%kre%j`d4 qeed|krtefjg jh jod Zfx6efD ].Z|e|jg Z|e|d}kr>e|e%kr>e%j`e| q>W qeed~krefjg Z8d?e%kre%j`d? qeedkrefjg Z7d?e%kre%j`d? qeedkr0efjg Zfej=efZ}e}seijjdH n&ej?j@e}efZ:d=e%kre%j`d= qeedkrefjg Zfej=efZ}e}sbeijjdK n&ej?j@e}efZAd>e%kre%j`d> qeedLkrefjg Zfej=efZ}e}seijjdM n&ej?j@e}efZEdAe%kre%j`dA qeedkrefjod Z'd@e%kre%j`d@ qeedkrHefZ&d@e%kre%j`d@ qeedkrtefZ)d@e%kre%j`d@ qeedkrefZ*d@e%kre%j`d@ qeed[krefj~d\dZfyekefZ+W n& elk
r   dZ+eijjd] Y nX needkr<yd`Z/ekefjg Z.W n& elk
r8   eijjda dZ.Y nX needkryd`Z-ekefjg Z,W n& elk
r   eijjdd dZ,Y nX n8eedekrd`Z5dAZneedkr̐d`Z6d`Z5dAZqW e%seij{dh e%j`d4 d@e%kr$e& s e' r$eijjdi eijjdj e%jyd@ e0r.dZ#e#dkredk	rLedk Ze dk	r`e dk Z e!dk	rte!dk Z!e"dk	re"dk Z"n8e#dkredk	redl Ze dk	re dl Z e!dk	re!dl Z!e"dk	re"dl Z"ne#dkrHedk	r
edm Ze dk	re dm Z e!dk	r2e!dm Z!e"dk	re"dm Z"n|e#dkreij{dne  edk	r|ee dk Ze dk	re e dk Z e!dk	re!e dk Z!e"dk	re"e dk Z"edk	re!dk	ree!kreijjdoee!f  d ZZ!e dk	r8e"dk	r8e e"kr8eijjdpe e"f  d Z Z"ejsVeijjdq ejdd eTekrzeijjdr ejdd nddslmZ yddlZW n$ ek
r   ddtlmZ Y nX yddulmZ W nH ek
r   eijjdve  ereijeijdw ejdd Y nX ejW  ejX Zx<eD ]\Z[Z\Z]Z^e[eRkr,P q,W eijjdxeR  ejdd eijeijdyeR  eijdz yejeRZW n@ ejjk
r ZC z ejeCjd  ejdd W Y ddZC[CX nX yJejd{jZeijd|eeef  edkreijjd} ejdd W n   eijjd~ Y nX eedkrfdekrfeijd d`Z5e5r2ydekreijjd ejdd nhe6d`krڐdekrejd{d neij{d ejd{d nejd{d ejdd` W n2 ejjk
r.   eijjde6  ejdd Y nX nHy"ejd{d ejdd W n$ ejjk
rx   eijd Y nX ejdjeZejdje Z ejdje!Z!ejdje"Z"e!e e"e   ZejdjZeijdef  dekrXeed k seed kr(eij{de  eed k r@ed Zneed kred Zn~eekreij{de  eij{ddj@dd eD   ed ZejZx0eD ](Zeee ek reee ZeZqW ejdjeZee e d Zedkred Znedkr eZn
ed ZedkredkrPeij{d neij{d eij{d eij{dejed`  ejde4 e-rNejdjZe,eked kre,eked krejdje,Z,ndeij{deked eked e,f  e,eked k r"eked Z,ne,eked kr@eked Z,ejde, e/rejdjZe.eked kre.eked krejdje.Z.ndeij{deked eked e.f  e.eked k reked Z.ne.eked kreked Z.ejde. e!e dks,e"e  dkrBeijjd ejdd eijd eijde  eijde  eijde4  e-reijde,  e/reijde.  e#dkreijd eijdee f  eijde!e"f  eijde!e   eijde"e    e0rBe2Z#eijde1  e#dkrBeijde#  e#dkreijd eijdedk e dk f  eijde!dk e"dk f  eijde!e dk   eijde"e  dk   ne#dkr`eijd eijdedl e dl f  eijde!dl e"dl f  eijde!e dl   eijde"e  dl   n6e#dkr
eijde  eijdee dk e e dk f  eijde!e dk e"e dk f  eijde!e e dk   eijde"e  e dk   ne#dkreijd eijdedm e dm f  eijde!dm e"dm f  eijde!e dm   eijde"e  dm   eijddj@e%  d4e%kreijde$  ej Zej ZejdăjZdŐd eD Zeijdeeef  ejh ekr>eij{deed f  ed Zejde ejde d4e%kre$ reij{dȃ e5reijdɃ ejdʐd7Z$dAZnNedkreijd˃ ejdʐd6Z$dZn eijd̓ ejdʐd5Z$dZeij{de$  nJy.ej?jve$d jh dd Zedkr0dZW n exk
rL   dZY nX ervedkrveijjdσ ejdd e5reredAkreijjdЃ ejdd eijdу dZdZg Ze  eijd zԐxe5reijde  neijdӃ dZyy*ejdee\ZZZeijde  W nr ejjk
rj ZC z ejeCjd  ejdd W Y ddZC[CX n4 ek
r   eijjdփ ej  ejdd Y nX e5reejkred dkreijjd׃ ejdd neijded   d`ZP edk r0e5 reijdeje  neijdeje  ej  ejdۃZxej !rxej  ryejd\ZZeij  sedk rejekde e eje nejdeje eejk reijjdeef  ejdd W n ejk
 r   P Y nX  qRW e	jd݃  qFW W n4 ek
!rH   eijjdփ ej  ejdd Y nX xdej !rejd\ZZeij !sLedk!rejekde e eje nejdeje !qLW e!reek!rejekdeje eijd e#rfeijdeje  ej \
ZZZZZZZZZZeijdeeeeeeef  eĐdk"sLeek"rXekee Zedk"ry&ejʐdeefej˃ dːdddZW n, elk
"r   eijjd ejdd Y nX npedk#r*y8eƐd Zejʐdeefej˃ dːdddj͐dZW n, elk
#r(   eijjd ejdd Y nX e5#s<edAk#r|ejde d6Zej`e΃ eje΃ neijjd ejdd e5 #se5#re#rP ed7 ZqW W deijd ej  X e5#sedAk%ryddlmZ W n, ek
$r
   eijjd ejdd Y nX e$$s"ejdʐd7Z$eje$e!dm e"dm fZӐx&eD ]ZejeԃZy6ejeedm e dm e!e dm e"e  dm  W n ek
$r   eijjd ejdd Y n ek
%r ZC z8eijjeC e$reijd eijd ejdd W Y ddZC[CX nD ek
%rN ZC z&eijjeC eijd ejdd W Y ddZC[CX nX ejۃ  ejeԃ $qFW eijde$  ejσ  eijdeE  deEe$f Zeje݃ ejdd e+dk&r6e+dk %se+dk%reijjd eijjd nJekee+ d Zekee+ d Zeijdeeeef  ej+eefejZdZd4e%k'rJeijd eijde$  yeje$ W n ek
&r ZC zFeijjdeC  yejye$ W n ek
&r   Y nX ejdd W Y ddZC[CX nd elk
'r6 ZC zFeijjdeC  yejye$ W n ek
'r   Y nX ejdd W Y ddZC[CX nX d`Ze%jyd4 dZd>e%k's~d=e%k's~d@e%k's~d?e%k(re (rejd6d\ZZ$yeje$ W nd ek
(r ZC zFeijjdeC  yejye$ W n ek
'r   Y nX ejdd W Y ddZC[CX nX eje d`Zxe%D ]Z[eijde[  e[dAk)rbyddlmZ W n& ek
(r   eijjd (w&Y nX ejdʐd7Zejee!dm e"dm fZy6ejeedm e dm e!e dm e"e  dm  W n& ek
)r
   eijjd (w&Y nX ejۃ  eijde  ejσ  eijdeE  deEef Zeje݃ ejdd (q&e[d?k)rej=dd`Ze)sdZe7dk	)rdee7e$f ZnFe8dk	)re8jdd Zde Z8dee8e$f Zndee$f Zeje݃ (q&e[d@k,rzy.ddlmZ dd lmZ ddlmZ W nl ek
*r   y.ddlmZ dd lmZ ddlmZ W n& ek
*r   eijjd (w&Y nX Y nX e Ze)ed< e&ed< d j@e'ed< de_e**ree*Zeje e+redej?je$eeef Znedeeef Zeje ee$d	Zeej˃ Zej  e+rvejd
dej?je$d eje ej=dZe,rlej?j@edZedde&gZeijee݃ dZ yXejeejejejdZejej \ZZedk,reZ W n0 ek
,rJ ZC zeeCZ W Y ddZC[CX nX e  e ,rxeijjee  neijjd ne[d=k,re:,reijde:  de:e$f Zeje݃ neijjd nHe[d>k(r&eA-r eijdeA  deAe$f Zeje݃ neijjd (q&W ej	  ej
  eja  W n" ek
-rR   eijjd Y nX eijd eijd dS (  z2.2zhp-scanzScan UtilityzCSANE-based scan utility for HPLIP supported all-in-one/mfp devices.    N)*)PY3)tuidevicemoduleutilsos_utils)cups)sanei,  graymm zhp-scan from %sd   FZJPEG      	5x7 photoinf      	4x6 photoL   3x5 index cardo      A2 Envelope)    A3   A4   A5i   A6  l  B4   B5r      C6 Envelopen      DL Envelope     	Executive   J  FlsaHagakix      Japanese Envelope #3Z      Japanese Envelope #4   d  Legal  Letter   Number 10 Envelope   Oufuku-HagakiPhoto  Super B)Z5x7Z4x6Z3x5Za2_envZa3Za4Za5Za6Zb4Zb5Zc6_envZdl_envexecZflsaZhigakiZjapan_env_3Zjapan_env_4ZlegalZletterZ	no_10_envzoufufu-hagakiZphotoZsuper_bZkviewZdisplayZgwenviewZeogZ	kuickshowZkolourpaintZgimpZkritaZ	cinepaintZmirageZkpdfZacroreadZxpdfZevince[OPTIONS] (General)headerScan destinations:#-s<dest_list> or --dest=<dest_list>optionMwhere <dest_list> is a comma separated list containing one or more of: 'file'S, 'viewer', 'editor', 'pdf', or 'print'. Use only commas between values, no spaces.
Scan mode:J-m<mode> or --mode=<mode>. Where <mode> is 'gray'\*, 'color' or 'lineart'.Scanning resolution:V-r<resolution_in_dpi> or --res=<resolution_in_dpi> or --resolution=<resolution_in_dpi>where 300 is default.Image resize:6--resize=<scale_in_%> (min=1%, max=400%, default=100%)Image contrast:&-c=<contrast> or --contrast=<contrast>0The contrast range varies from device to device.Image brightness:,-b=<brightness> or --brightness=<brightness>2The brightness range varies from device to device.	ADF mode:=--adf (Note, only PDF output is supported when using the ADF)0--duplex or --dup for duplex scanning using ADF.[OPTIONS] (Scan area),Specify the units for area/box measurements:-t<units> or --units=<units>Ewhere <units> is 'mm'\*, 'cm', 'in', 'px', or 'pt' ('mm' is default).
Scan area:;-a<tlx>,<tly>,<brx>,<bry> or --area=<tlx>,<tly>,<brx>,<bry>CCoordinates are relative to the upper left corner of the scan area.OUnits for tlx, tly, brx, and bry are specified by -t/--units (default is 'mm').*Use only commas between values, no spaces.	Scan box:"--box=<tlx>,<tly>,<width>,<height>Otlx and tly coordinates are relative to the upper left corner of the scan area.TUnits for tlx, tly, width, and height are specified by -t/--units (default is 'mm').Top left x of the scan area:--tlx=<tlx>4Units are specified by -t/--units (default is 'mm').Top left y of the scan area:--tly=<tly> Bottom right x of the scan area:--brx=<brx>"Bottom right y   of the scan area:--bry=<bry>,Specify the scan area based on a paper size:--size=<paper size name>z%where <paper size name> is one of: %sz, [OPTIONS] ('file' dest) Filename for 'file' destination:8-o<file> or -f<file> or --file=<file> or --output=<file>[OPTIONS] ('pdf' dest)PDF viewer application:--pdf=<pdf_viewer>[OPTIONS] ('viewer' dest)Image viewer application:-v<viewer> or --viewer=<viewer>[OPTIONS] ('editor' dest)Image editor application:-e<editor> or --editor=<editor>[OPTIONS] ('email' dest)From: address for 'email' dest:>--email-from=<email_from_address> (required for 'email' dest.)To: address for 'email' dest:;--email-to=<email__to_address> (required for 'email' dest.)Email subject for 'email' dest:4--email-subject="<subject>" or --subject="<subject>"IUse double quotes (") around the subject if it contains space characters.%Note or message for the 'email' dest:,--email-msg="<msg>" or --email-note="<note>"NUse double quotes (") around the note/message if it contains space characters.[OPTIONS] ('printer' dest)Printer queue/printer dest:4--dp=<printer_name> or --dest-printer=<printer_name>Printer device-URI dest:/--dd=<device-uri> or --dest-device=<device-uri>[OPTIONS] (advanced)!Set the scanner compression mode:v-x<mode> or --compression=<mode>, <mode>='raw', 'none' or 'jpeg' ('jpeg' is default) ('raw' and 'none' are equivalent))Zextra_optionsZsee_also_listzs:m:r:c:t:a:b:o:v:f:c:x:e:zdest=zmode=zres=zresolution=zresize=z	contrast=adfduplexdupzunit=zunits=zarea=zbox=ztlx=ztly=zbrx=zbry=zsize=zfile=zoutput=zpdf=zviewer=zemail-from=zfrom=z	email-to=zto=z
email-msg=zmsg=zprinter=zcompression=rawjpegcolorlineartcolourbw	grayscalegrey	greyscalezemail-subject=zsubject=jpgz
grey-scalez
gray-scalezabout=zeditor=zdp=zdest-printer=zdd=zdest-device=zbrightness=Zhpaioz	scan-type)Zback_end_filterfilterdevices   -x--compressionnoneNonezFInvalid compression value. Valid values are 'jpeg', 'raw', and 'none'.zUsing default value of 'jpeg'.--color--colour	--lineart
--line-art--bw--gray--grayscale--gray-scale--grey--greyscale--grey-scale-m--modeb&wz&Invalid mode. Using default of 'gray'.z.Valid modes are 'color', 'lineart', or 'gray'.--res--resolution-rzInvalid value for resolution.-t--units--unitinchinches	milimeter
milimeters
millimetremillimetrescm
centimetercentimeters
centimetrecentimetrespxpixelpixelspelpelsptpointpointsptsz%Invalid units. Using default of 'mm'.z--tlxzInvalid value for tlx.z--tlyzInvalid value for tly.z--brxzInvalid value for brx.z--bryzInvalid value for bry.-a--area,   z"Invalid scan area. Using defaults.z&Invalid value for tlx. Using defaults.z&Invalid value for tly. Using defaults.z&Invalid value for brx. Using defaults.z&Invalid value for bry. Using defaults.z--boxz(Invalid value for width. Using defaults.z:Cannot calculate brx since tlx is invalid. Using defaults.z)Invalid value for height. Using defaults.z:Cannot calculate bry since tly is invalid. Using defaults.z--sizez+Invalid page size. Valid page sizes are: %szUsing defaults.-o--output-f--filezInvalid filename extension.file.jpg.png.pdfzFOnly JPG (.jpg), PNG (.png) and PDF (.pdf) output files are supported.z2Output file '%s' exists. File will be overwritten.-s--dest--destinationviewereditorprintemailpdf--dd--dest-device--dp--dest-printer-v--viewerzViewer application not found.-e--editorzEditor application not found.z--pdfz!PDF viewer application not found.
--email-to--to--email-from--from--email-subject	--subject--about--email-note--email-msg--msg	--message--note--notesz--resize%z,Invalid resize value. Using default of 100%.-b--brightnessTz-Invalid brightness value. Using default of 0.-c
--contrastz+Invalid contrast value. Using default of 0.z--adf--dup--duplexz@No destinations specified. Adding 'file' destination by default.zOEmail specified, but email to and/or email from address(es) were not specified.zDisabling 'email' destination.gffffff9@g      $@gׁsF?zEUnits set to pixels. Using resolution of %ddpi for area calculations.zDInvalid values for tlx (%d) and brx (%d) (tlx>=brx). Using defaults.zDInvalid values for tly (%d) and bry (%d) (tly>=bry). Using defaults.z#Scanning disabled in build. Exitingz@GUI mode is not implemented yet. Refer to 'hp-scan -h' for help.)queue)subproc)Imagez6%s requires the Python Imaging Library (PIL). Exiting.zfManually install the PIL package. More information is available at http://hplipopensource.com/node/369zVUnable to locate device %s using SANE backend hpaio:. Please check HPLIP installation.zUsing device %szOpening connection to device...sourcez$Supported source Options: %s size=%dzDevice doesn't have scanner.z%Failed to get the source from device.ZADFzDevice has only ADF supportz8Failed to set ADF mode. This device doesn't support ADF.ZDuplexzIDevice doesn't support Duplex scanning. Continuing with Simplex ADF scan.z
batch-scanz$Error in setting ADF mode Duplex=%d.ZFlatbedz@Error setting source or batch-scan option (this is probably OK).ztl-xztl-yzbr-xzbr-yZ
resolutionzDevice supported resolutions %sz<Invalid resolution. Using closest valid resolution of %d dpizValid resolutions are %s dpi.c             C   s   g | ]}t |qS  )str).0xr  r  /usr/share/hplip/scan.py
<listcomp>  s    r  gzG)@      i   iX  zQUsing resolutions greater than 600 dpi will cause very large files to be created.zFThe scan current parameters will cause very large files to be created.z_This can cause the scan to take a long time to complete and may cause your system to slow down.z0Approx. number of bytes to read from scanner: %sZcompressioncontrastzQInvalid contrast. Contrast range is (%d, %d). Using closest valid contrast of %d 
brightnesszWInvalid brightness. Brightness range is (%d, %d). Using closest valid brightness of %d g        z0Invalid scan area (width or height is negative).zResolution: %ddpizMode: %szCompression: %szContrast: %dzBrightness: %dzScan area (mm):z  Top left (x,y): (%fmm, %fmm)z"  Bottom right (x,y): (%fmm, %fmm)z  Width: %fmmz  Height: %fmmzPage size: %szKThis scan area below in '%s' units may not be exact due to rounding errors.zScan area (in):z  Top left (x,y): (%fin, %fin)z"  Bottom right (x,y): (%fin, %fin)z  Width: %finz  Height: %finzScan area (cm):z  Top left (x,y): (%fcm, %fcm)z"  Bottom right (x,y): (%fcm, %fcm)z  Width: %fcmz  Height: %fcmzScan area (px @ %ddpi):z  Top left (x,y): (%fpx, %fpx)z"  Bottom right (x,y): (%fpx, %fpx)z  Width: %fpxz  Height: %fpxzScan area (pt):z  Top left (x,y): (%fpt, %fpt)z"  Bottom right (x,y): (%fpt, %fpt)z  Width: %fptz  Height: %fptzDestination(s): %szOutput file: %smodec             C   s   g | ]}|j  qS r  )lower)r	  r
  r  r  r  r  ?  s    zSupported modes: %s size=%dz8Device doesn't support %s mode. Continuing with %s mode.z7File destination enabled with no output file specified.z*Setting output format to PDF for ADF mode.Zhpscanz0Setting output format to PNG for greyscale mode.pngz5Setting output format to JPEG for color/lineart mode.zDefaulting to '%s'.zIInvalid output file format. File formats must be 'jpeg', 'png', or 'pdf'.z+ADF scans must be saved in PDF file format.z
Warming up...z
Page %d: Scanning...z
Scanning...ZRGBAzexpected_bytes = %dzAborted.z4No document(s). Please load documents and try again.z)Out of documents. Scanned %d pages total.z-Expecting to read %s from scanner (per page).z"Expecting to read %s from scanner.zReading data:z/Error in reading data. Status=%d bytes_read=%d.g      ?zRead %s from scanner.zCPPL=%d lines=%d depth=%d BPL=%d pad=%d total_read=%d total_write=%dz2Did not read enough data from scanner (I/O Error?)Lzhpscan_pg%d_zNo data read.zClosing device.)canvaszPDF output requires ReportLab.zA problem has occurred with PDF generation. This is a known bug in ReportLab. Please update your install of ReportLab to version 2.0 or greater.zWYou might be running an older version of reportlab. Please update to the latest versionzDMore information is available at http://hplipopensource.com/node/369z(Try Updating to reportlab version >= 3.2zSaving to file %szViewing PDF file in %sz%s %s &i  zAResize parameter is incorrect. Resize must be 0% < resize < 400%.zUsing resize value of 100%.z%Resizing image from %dx%d to %dx%d...z"
Outputting to destination 'file':zError saving file: %s (I/O)zError saving file: %s (PIL))suffixzError saving temporary file: %sz
Sending to destination '%s':zhp-printzpython ./print.pyz%s -p %s %s &:   zhp:z%s -d %s %s &)	MIMEImage)MIMEMultipart)MIMETextz/hp-scan email destination requires Python 2.2+.ZSubjectZFromZTozScanned using hp-scanz!attached: %s: %dx%d %s PNG image.zattached: %dx%d %s PNG image.rzContent-DispositionZ
attachment)filenamesendmail)stdinstdoutstderrz'Mail send failed. 'sendmail' not found.zViewing file in %szViewer not found.zEditing file in %szEditor not found.z	User exitzDone.)r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r    r   r!   r   )r"   r    r#   r   )r$   r%   r&   r   )r'   r$   r(   r   )r)   r*   r+   r   )r,   r-   r.   r   )r/   r0   r1   r   )r2   r3   r4   r   )r   r    r5   r   )r6   r7   r8   r   )r9   r:   r;   r   )r<   r=   r>   r   )r<   r?   r@   r   )r"   rA   rB   r   )r    rC   rD   r   )r   r   rE   r   )r3   rF   rG   r   )rI   r   rJ   F)rK   rL   rM   F)r   rN   rM   F)r   rO   rM   F)rP   rQ   rM   F)rR   rS   rM   F)r   rT   rM   F)rU   rV   rM   F)rW   rX   rM   F)r   rY   rM   F)rZ   r[   rM   F)r   r\   rM   F)r]   r^   rM   F)r   r_   rM   F)r`   r   rJ   F)ra   rb   rM   F)r   rc   rM   F)rd   re   rM   F)r   rf   rM   F)r   rg   rM   F)r   rh   rM   F)ri   rj   rM   F)r   rk   rM   F)r   rl   rM   F)r   rh   rM   F)rm   rn   rM   F)r   rf   rM   F)r   ro   rM   F)rp   rq   rM   F)r   rf   rM   F)r   ro   rM   F)rr   rs   rM   F)r   rf   rM   F)r   ro   rM   F)rt   ru   rM   F)r   rf   rM   F)r   ro   rM   F)rv   rw   rM   F)rx   r   rJ   F)ry   rz   rM   F)r{   r   rJ   F)r|   r}   rM   F)r~   r   rJ   F)r   r   rM   F)r   r   rJ   F)r   r   rM   F)r   r   rJ   F)r   r   rM   F)r   r   rM   F)r   r   rM   F)r   r   rM   F)r   r   rM   F)r   r   rM   F)r   r   rJ   F)r   r   rM   F)r   r   rM   F)r   r   rJ   F)r   r   rM   F)r   r   )r   r   )r   r   )r   r   )r   r   r   )r   r   r   r   r   r   )r   r   )r   r   )r   r   r   )r   r   r   r   )r   r   r   )r   r   r   )r   r   r   )r   r   r   r   r   )r   r   r   r   r   )r   r   r   r   r   )r   r   r   r   )r   r   )r   r   )r   r   r   r   )r   r   r   )r   r   r   )r   r   r   r   r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   r   )r   r   r   r   r   r   )r   r   )r   r   )r  r  )r   r  r   )r   r   (  __version____mod__Z	__title____doc__sysosos.pathZgetoptsignalZtimeZsocketoperatorZscanextZbase.gZbase.sixextr   baser   r   r   r   r   Zprntr	   scanr
   ZpropZusernamer  resZ	scan_modeZtlxZtlyZbrxZbryZunitsoutputdestZ
email_fromZemail_toZgethostnameZemail_subjectZ
email_noteZresizer  Zset_contrastr  Zset_brightnessZ	page_sizeZ	size_descZ
page_unitsZdefault_resZscanner_compressionr   r   Zdest_printerZdest_devUriZ
PAGE_SIZESr   Zviewer_listvZwhichZvvpathjoinr   Zeditor_listeZeeZ
pdf_viewerZpdf_viewer_listZModuleZINTERACTIVE_MODEmodZsetUsageZUSAGE_FLAG_DEVICE_ARGSZUSAGE_SPACEsortedlistkeysZparseStdOptsZoptsZ
device_uriZprinter_namer  Z
ui_toolkitZlangZinitZ
getDevicesZsane_devicesZ
devicelistdZmfgZmdltKeyErrorappendZdeInitZgetDeviceUrigtexitoastripr  logerrorint
ValueErrorfloatfsplitwidthZheightsizeabspathnormpath
expandusersplitextZext
IndexErrorremoveexistswarnZaabreplaceZoutput_typeZ
scan_buildZGUI_MODEZbase.sixext.movesr  
subprocessImportErrorr  ZPILr  ZnoticeZboldr   infoZ
openDeviceZreportErrorargsZgetOptionObjZ
constraintZsource_optiondebuglenZ	setOptionZlimitAndSetZ	scan_areaZ	valid_resmaxsizeZmin_distr
  absZscan_pxZ	scan_sizeZformat_bytesZvalid_contrastZvalid_brightnessZnoteZQueueZupdate_queueZevent_queueZavailable_scan_modeZcreateSequencedFilenameZno_docsZpageZadf_page_filesZcleanup_spinnerZ
bytes_readZ	startScanokZexpected_bytesZstatusKeyboardInterruptZ
cancelScanZSANE_STATUS_NO_DOCSZwaitForScanActiveZProgressMeterZpmZisScanActiveZqsizegetZis_debugupdateZSANE_STATUS_GOODZEmptyZsleepZgetScanbufferformatZformat_nameZpixels_per_linelinesZdepthZbytes_per_lineZ	pad_bytesZ
total_readZtotal_writeZ
frombufferreadZimZconvertZtemp_outputZsaveZreportlab.pdfgenr  ZCanvascpopenZimageZdrawInlineImage	NameErrorAssertionError	ExceptionZshowPageunlinkcmdZexecuteZnew_wZnew_hZ	ANTIALIASZ
file_savedIOErrorOSErrorZ
temp_savedZmake_temp_fileZ	output_fdcloseZ
pdf_outputZhp_print	partitionZtmpZemail.mime.imager  Zemail.mime.multipartr  Zemail.mime.textr  Zemail.MIMEImageZemail.MIMEMultipartZemail.MIMETextmsgZpreambleZtxtZattachbasenamefpZimgZ
add_headerr  reprerrPopenPIPEZspZcommunicateZ	as_stringZstd_outZstd_errr  ZfreeScanZ	closeScanr  r  r  r  <module>   s  






 








"


"





 






 

 

 

 
 

 

 

 
 

 

 

 
 
 
 
 








$




$&$& 




    ((   

















6




0

6









$


