Ajout de la possibilité de perforer ses pages
This commit is contained in:
parent
66f3fd0707
commit
25022bde92
1 changed files with 18 additions and 13 deletions
|
@ -53,11 +53,11 @@ class Option(object):
|
|||
value = None
|
||||
|
||||
def __str__(self):
|
||||
return str(value)
|
||||
return str(self.value)
|
||||
|
||||
name = "option"
|
||||
pretty_name = u"option quelconque"
|
||||
|
||||
|
||||
def parse(self, v):
|
||||
self.value = v
|
||||
|
||||
|
@ -71,7 +71,7 @@ class BooleanOption(Option):
|
|||
class Couleur(BooleanOption):
|
||||
name = "couleur"
|
||||
pretty_name = u"impression couleur"
|
||||
|
||||
|
||||
class Livret(BooleanOption):
|
||||
name = "livret"
|
||||
pretty_name = u"livret piqûres à cheval"
|
||||
|
@ -98,7 +98,7 @@ class SelectOption(Option):
|
|||
}
|
||||
|
||||
value = None
|
||||
|
||||
|
||||
def parse(self, v):
|
||||
if v == 'None':
|
||||
v = None
|
||||
|
@ -180,9 +180,9 @@ class impression(object):
|
|||
_fichier = ""
|
||||
# adhérent (instance)
|
||||
_adh = None
|
||||
# paramètres
|
||||
# paramètres
|
||||
_settings_list = [
|
||||
Agrafage,
|
||||
Agrafage,
|
||||
Papier,
|
||||
Couleur,
|
||||
Duplex,
|
||||
|
@ -206,7 +206,7 @@ class impression(object):
|
|||
_format = '(A4)'
|
||||
_width = 595.28
|
||||
_height = 841.89
|
||||
|
||||
|
||||
# Jid unique, à définir avant l'impression
|
||||
_jid = 0
|
||||
|
||||
|
@ -286,7 +286,7 @@ class impression(object):
|
|||
newfile = '/tmp/' + self.fileName()[-4] + '-book.pdf'
|
||||
newfile = '/tmp/book.pdf'
|
||||
check_output(
|
||||
['/usr/bin/pdfjam', self._fichier,
|
||||
['/usr/bin/pdfjam', self._fichier,
|
||||
livret.pdfjam_order(self._pages),
|
||||
'-o', newfile,
|
||||
])
|
||||
|
@ -454,7 +454,7 @@ class impression(object):
|
|||
# Pour spécifier un jobname de la forme jid:adh:nom_du_fichier
|
||||
jobname = '%d:%s:%s' % (self._jid, self._adh, self._fichier.split('/')[-1].replace("\"","\\\""))
|
||||
options += ['-t', jobname]
|
||||
|
||||
|
||||
#Pour le nombre de copies et specifie non assemblee
|
||||
options += ['-n', str(self._settings['copies'].value)]
|
||||
#Et on ne les veux pas assemblées (sic)
|
||||
|
@ -466,7 +466,7 @@ class impression(object):
|
|||
options += ['-o', 'pdf-expand',
|
||||
'-o', 'pdf-paper=841x1190',
|
||||
'-o', 'PageSize=A3']
|
||||
|
||||
|
||||
# Toujours resize (pour éviter que l'imprimante ne deadlock)
|
||||
options += ['-o', 'fit-to-page']
|
||||
|
||||
|
@ -482,7 +482,7 @@ class impression(object):
|
|||
options.append('InputSlot=Tray4')
|
||||
else:
|
||||
options.append('InputSlot=Tray3')
|
||||
|
||||
|
||||
|
||||
if not self._settings['couleur'].value:
|
||||
options += ['-o', 'HPColorAsGray=True']
|
||||
|
@ -492,14 +492,14 @@ class impression(object):
|
|||
self._settings['livret'].value
|
||||
paysage = self._width > self._height
|
||||
# mode paysage: on indique que c'est landscape (ou livret)
|
||||
if paysage:
|
||||
if paysage:
|
||||
options += ['-o', 'landscape']
|
||||
|
||||
# Livret: 2 pages par côté, et on inverse le bord duplex
|
||||
if self._settings['livret'].value:
|
||||
options += ['-o', 'number-up=2']
|
||||
paysage = not paysage
|
||||
|
||||
|
||||
if duplex:
|
||||
if paysage:
|
||||
options += ['-o', 'sides=two-sided-short-edge']
|
||||
|
@ -515,6 +515,11 @@ class impression(object):
|
|||
v = self._settings['agrafage'].HP_name()
|
||||
options += ['-o', 'HPStaplerOptions=%s' % v]
|
||||
|
||||
if not self._settings['livret'].value:
|
||||
if self._settings['perforation'].value:
|
||||
v = self._settings['perforation']
|
||||
options += ['-o', 'HPPunchingOptions=%s' % v]
|
||||
|
||||
# Que se passe-t-il si le nom de fichier commence par - ?
|
||||
# pour éviter cela, on indique la fin des options, avec "--"
|
||||
options.append('--')
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue