def a_imagen(self, de_muestra=False, svg=False): """Devuelve la imagen para imprimir el apertura.""" titulo = _("titulo_apertura") try: presidente = self.autoridades[0] except IndexError: presidente = "" suplentes = self.autoridades[1:] mesa = self.mesa datos = { 'presidente': presidente, 'suplentes': suplentes, 'cantidad_suplentes': len(suplentes), 'mesa': mesa.numero, 'escuela': mesa.escuela, 'municipio': mesa.municipio, 'departamento': mesa.departamento, 'horas': "%02d" % self.hora['horas'], 'minutos': "%02d" % self.hora['minutos'], 'mostrar_texto': True, 'leyenda': None, 'pie': "|".join([mesa.codigo, str(mesa.id_planilla), mesa.escuela]), "cod_datos": self.mesa.cod_datos, } config = Config(["imaging"], mesa.cod_datos) usar_qr = config.val("usar_qr") qr_img = self.a_qr_b64_encoded() if usar_qr and not de_muestra else None imagen = ImagenActa(titulo, datos, de_muestra=de_muestra, qr=qr_img) if svg: rendered = imagen.render_svg() else: rendered = imagen.render_image() return rendered
def a_imagen(self, de_muestra=False, svg=False): """Devuelve la imagen para imprimir el apertura.""" titulo = _("titulo_apertura") try: presidente = self.autoridades[0] except IndexError: presidente = "" suplentes = self.autoridades[1:] mesa = self.mesa datos = { 'presidente': presidente, 'suplentes': suplentes, 'cantidad_suplentes': len(suplentes), 'mesa': mesa.numero, 'escuela': mesa.escuela, 'municipio': mesa.municipio, 'departamento': mesa.departamento, 'horas': "%02d" % self.hora['horas'], 'minutos': "%02d" % self.hora['minutos'], 'mostrar_texto': True, 'leyenda': None, 'pie': "|".join([mesa.codigo, str(mesa.id_planilla), mesa.escuela]), "cod_datos": self.mesa.cod_datos, } config = Config(["imaging"], mesa.cod_datos) usar_qr = config.val("usar_qr") qr_img = self.a_qr_b64_encoded( ) if usar_qr and not de_muestra else None imagen = ImagenActa(titulo, datos, de_muestra=de_muestra, qr=qr_img) if svg: rendered = imagen.render_svg() else: rendered = imagen.render_image() return rendered
def a_imagen(self, tipo=None, de_muestra=False, svg=False): """Devuelve la imagen para imprimir recuento. Argumentos: tipo -- una tupla con el tipo de acta y el id_de grupo de categorias. Puede ser None si no no queremos agrupar. de_muestra -- es la imagen que no se imprime, que se muestra en pantalla. svg -- Devuelve un svg si True, en caso contrario un objeto PIL.Image """ if tipo is None: tipo = (CIERRE_RECUENTO, None) # Muestra el icono del verificador en la boleta. Si no tiene chip en el # documento en el que imprimimos no imprimirmos el verificador. verif = True # Por defecto no tenemos titulo, a menos que el tipo de acta tenga # titulo. titulo = "" leyenda = None # Internamente todas las actas son iguales, lo que cambia es el texto # que se imprime, pero el acta una vez serializada no sabe cual es. if tipo[0] == CIERRE_RECUENTO: # El acta de cierre. titulo = _("titulo_recuento") leyenda = _("no_insertar_en_urna") elif tipo[0] == CIERRE_TRANSMISION: # El acta de transmision. titulo = _("titulo_transmision") leyenda = _("no_insertar_en_urna") elif tipo[0] == CIERRE_CERTIFICADO or tipo[0] == CIERRE_ESCRUTINIO: # El certificado de escrutinio. titulo = _("titulo_certificado") verif = False elif tipo[0] == CIERRE_COPIA_FIEL: # Una copia fiel del certificado. (Certificado sin datos desc_mesa # autoridades) titulo = _("titulo_copia_fiel") verif = False grupo_cat = tipo[1] # Establecemos las autoridades para los templates del texto del acta, # los cuales hacen diferencia entre el presidente y los suplentes. try: presidente = self.autoridades[0] except IndexError: presidente = "" suplentes = [sup for sup in self.autoridades[1:] if sup.nro_documento != 0] mesa = self.mesa # Armamos los datos para el texto. datos = { 'presidente': presidente, 'suplentes': suplentes, 'cantidad_suplentes': len(suplentes), 'mesa': mesa.numero, 'escuela': mesa.escuela, 'municipio': mesa.municipio, 'departamento': mesa.departamento, 'horas': "%02d" % self.hora.get('horas', "") \ if self.hora is not None else "", 'minutos': "%02d" % self.hora.get('minutos', "") if self.hora is not None else "", 'mostrar_texto': self.hora is not None, 'leyenda': leyenda, 'pie': "|".join([mesa.codigo, str(mesa.id_planilla), mesa.escuela]), "cod_datos": self.mesa.cod_datos, } config = Config(["imaging"], mesa.cod_datos) usar_qr = config.val("usar_qr") # Generamos el QR que va a ir en el acta. qr_img = self.a_qr_b64_encoded(grupo_cat) if usar_qr else None # Y armamos la imagen. imagen = ImagenActa(titulo, datos, qr=qr_img, recuento=self, grupo_cat=grupo_cat, de_muestra=de_muestra, verificador=verif) if svg: rendered = imagen.render_svg() else: rendered = imagen.render_image() # Devolvemos la imagen en el formato solicitado. return rendered
def a_imagen(self, tipo=None, de_muestra=False, svg=False): """Devuelve la imagen para imprimir recuento. Argumentos: tipo -- una tupla con el tipo de acta y el id_de grupo de categorias. Puede ser None si no no queremos agrupar. de_muestra -- es la imagen que no se imprime, que se muestra en pantalla. svg -- Devuelve un svg si True, en caso contrario un objeto PIL.Image """ if tipo is None: tipo = (CIERRE_RECUENTO, None) # Muestra el icono del verificador en la boleta. Si no tiene chip en el # documento en el que imprimimos no imprimirmos el verificador. verif = True # Por defecto no tenemos titulo, a menos que el tipo de acta tenga # titulo. titulo = "" leyenda = None # Internamente todas las actas son iguales, lo que cambia es el texto # que se imprime, pero el acta una vez serializada no sabe cual es. if tipo[0] == CIERRE_RECUENTO: # El acta de cierre. titulo = _("titulo_recuento") leyenda = _("no_insertar_en_urna") elif tipo[0] == CIERRE_TRANSMISION: # El acta de transmision. titulo = _("titulo_transmision") leyenda = _("no_insertar_en_urna") elif tipo[0] == CIERRE_CERTIFICADO or tipo[0] == CIERRE_ESCRUTINIO: # El certificado de escrutinio. titulo = _("titulo_certificado") verif = False elif tipo[0] == CIERRE_COPIA_FIEL: # Una copia fiel del certificado. (Certificado sin datos desc_mesa # autoridades) titulo = _("titulo_copia_fiel") verif = False grupo_cat = tipo[1] # Establecemos las autoridades para los templates del texto del acta, # los cuales hacen diferencia entre el presidente y los suplentes. try: presidente = self.autoridades[0] except IndexError: presidente = "" suplentes = [ sup for sup in self.autoridades[1:] if sup.nro_documento != 0 ] mesa = self.mesa # Armamos los datos para el texto. datos = { 'presidente': presidente, 'suplentes': suplentes, 'cantidad_suplentes': len(suplentes), 'mesa': mesa.numero, 'escuela': mesa.escuela, 'municipio': mesa.municipio, 'departamento': mesa.departamento, 'horas': "%02d" % self.hora.get('horas', "") \ if self.hora is not None else "", 'minutos': "%02d" % self.hora.get('minutos', "") if self.hora is not None else "", 'mostrar_texto': self.hora is not None, 'leyenda': leyenda, 'pie': "|".join([mesa.codigo, str(mesa.id_planilla), mesa.escuela]), "cod_datos": self.mesa.cod_datos, } config = Config(["imaging"], mesa.cod_datos) usar_qr = config.val("usar_qr") # Generamos el QR que va a ir en el acta. qr_img = self.a_qr_b64_encoded(grupo_cat) if usar_qr else None # Y armamos la imagen. imagen = ImagenActa(titulo, datos, qr=qr_img, recuento=self, grupo_cat=grupo_cat, de_muestra=de_muestra, verificador=verif) if svg: rendered = imagen.render_svg() else: rendered = imagen.render_image() # Devolvemos la imagen en el formato solicitado. return rendered