Glemte å legge til pdf.py
This commit is contained in:
		
							parent
							
								
									8621e07dcf
								
							
						
					
					
						commit
						c4e2178c03
					
				
							
								
								
									
										29
									
								
								otime/pdf.py
									
									
									
									
									
								
							
							
						
						
									
										29
									
								
								otime/pdf.py
									
									
									
									
									
								
							| @ -1,22 +1,31 @@ | ||||
| import datetime | ||||
| from fpdf import FPDF | ||||
| 
 | ||||
| def create_start_list(event, file_path): | ||||
| def create_result_list(event, file_path, o_classes=[]): | ||||
|         results = event.get_result(o_classes) | ||||
|          | ||||
|         pdf = FPDF() | ||||
| 
 | ||||
|         pdf.add_page() | ||||
|         pdf.add_font("LiberationSans", fname="../../otime/data/fonts/LiberationSans-Regular.ttf") | ||||
|         pdf.set_font("LiberationSans", size=10) | ||||
|         line_height = pdf.font_size * 1.5 | ||||
|         col_width = pdf.epw / 4  # distribute content evenly | ||||
|         for runner in event.runners: | ||||
|             pdf.multi_cell(col_width, line_height, runner.fullname(), border=1, ln=3, max_line_height=pdf.font_size, align='L') | ||||
|             pdf.multi_cell(col_width, line_height, runner.o_class, border=1, ln=3, max_line_height=pdf.font_size) | ||||
|             pdf.multi_cell(col_width, line_height, str(runner.card_id), border=1, ln=3, max_line_height=pdf.font_size) | ||||
|             if runner.start_time is not None: | ||||
|                 pdf.multi_cell(col_width, line_height, str(runner.start_time), border=1, ln=3, max_line_height=pdf.font_size) | ||||
|             else: | ||||
|                 pdf.multi_cell(col_width, line_height, '', border=1, ln=3, max_line_height=pdf.font_size) | ||||
| 
 | ||||
|         for class_result in results: | ||||
|             pdf.write(txt=class_result.name) | ||||
|             pdf.ln(line_height) | ||||
|             for runner in class_result.runner_results: | ||||
|                 if runner.status == 'OK': | ||||
|                     pdf.multi_cell(col_width, line_height, str(runner.place), border=1, ln=3, max_line_height=pdf.font_size, align='L') | ||||
|                 else: | ||||
|                     pdf.multi_cell(col_width, line_height, runner.status, border=1, ln=3, max_line_height=pdf.font_size, align='L') | ||||
|                 pdf.multi_cell(col_width, line_height, runner.fullname(), border=1, ln=3, max_line_height=pdf.font_size, align='L') | ||||
|                 pdf.multi_cell(col_width, line_height, runner.club, border=1, ln=3, max_line_height=pdf.font_size) | ||||
|                 if runner.status == 'OK': | ||||
|                     pdf.multi_cell(col_width, line_height, str(datetime.timedelta(seconds = runner.total_time)), border=1, ln=3, max_line_height=pdf.font_size) | ||||
|                 else: | ||||
|                     pdf.multi_cell(col_width, line_height, '', border=1, ln=3, max_line_height=pdf.font_size) | ||||
|                 pdf.ln(line_height) | ||||
|         pdf.output(file_path) | ||||
| 
 | ||||
| def create_all_invoices(self, filename_prefix): | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user