diff options
| author | Richard Mathot <rim@odoo.com> | 2017-07-24 16:54:42 +0200 |
|---|---|---|
| committer | Richard Mathot <rim@odoo.com> | 2017-07-24 16:54:42 +0200 |
| commit | 35601dfe6faf60840d4d96e14b481b8cd739d6f0 (patch) | |
| tree | 10a87c690397798f521d2c816801cd6c87fa1d57 | |
| parent | 44304b7e24d8da58c1a94404f19a5b13f547972b (diff) | |
[REM] tools: old and unused lib pdf_utils
| -rw-r--r-- | odoo/tools/__init__.py | 1 | ||||
| -rw-r--r-- | odoo/tools/pdf_utils.py | 108 |
2 files changed, 0 insertions, 109 deletions
diff --git a/odoo/tools/__init__.py b/odoo/tools/__init__.py index 13c2fd410b9..ab9b57b348c 100644 --- a/odoo/tools/__init__.py +++ b/odoo/tools/__init__.py @@ -12,7 +12,6 @@ from .graph import graph from .image import * from .amount_to_text import * from .amount_to_text_en import * -from .pdf_utils import * from .yaml_import import * from .sql import * from .float_utils import * diff --git a/odoo/tools/pdf_utils.py b/odoo/tools/pdf_utils.py deleted file mode 100644 index bcdcdbb63fc..00000000000 --- a/odoo/tools/pdf_utils.py +++ /dev/null @@ -1,108 +0,0 @@ -# -*- coding: utf-8 -*- -# Part of Odoo. See LICENSE file for full copyright and licensing details. - -""" Copyright (c) 2003-2007 LOGILAB S.A. (Paris, FRANCE). - http://www.logilab.fr/ -- mailto:contact@logilab.fr - -manipulate pdf and fdf files. pdftk recommended. - -Notes regarding pdftk, pdf forms and fdf files (form definition file) -fields names can be extracted with: - pdftk orig.pdf generate_fdf output truc.fdf -to merge fdf and pdf: - pdftk orig.pdf fill_form test.fdf output result.pdf [flatten] -without flatten, one could further edit the resulting form. -with flatten, everything is turned into text. -""" - -from __future__ import with_statement - -import os -import tempfile - - -HEAD="""%FDF-1.2 -%\xE2\xE3\xCF\xD3 -1 0 obj -<< -/FDF -<< -/Fields [ -""" - -TAIL="""] ->> ->> -endobj -trailer - -<< -/Root 1 0 R ->> -%%EOF -""" - -def output_field(f): - return "\xfe\xff" + "".join( [ "\x00"+c for c in f ] ) - -def extract_keys(lines): - keys = [] - for line in lines: - if line.startswith('/V'): - pass #print 'value',line - elif line.startswith('/T'): - key = line[7:-2] - key = ''.join(key.split('\x00')) - keys.append( key ) - return keys - -def write_field(out, key, value): - out.write("<<\n") - if value: - out.write("/V (%s)\n" %value) - else: - out.write("/V /\n") - out.write("/T (%s)\n" % output_field(key) ) - out.write(">> \n") - -def write_fields(out, fields): - out.write(HEAD) - for key in fields: - value = fields[key] - write_field(out, key, value) -# write_field(out, key+"a", value) # pour copie-carbone sur autres pages - out.write(TAIL) - -def extract_keys_from_pdf(filename): - # what about using 'pdftk filename dump_data_fields' and parsing the output ? - tmp_file = tempfile.mkstemp(".fdf")[1] - try: - os.system('pdftk %s generate_fdf output \"%s\"' % (filename, tmp_file)) - with open(tmp_file, "r") as ofile: - lines = ofile.readlines() - finally: - try: - os.remove(tmp_file) - except Exception: - pass # nothing to do - return extract_keys(lines) - - -def fill_pdf(infile, outfile, fields): - tmp_file = tempfile.mkstemp(".fdf")[1] - try: - with open(tmp_file, "w") as ofile: - write_fields(ofile, fields) - os.system('pdftk %s fill_form \"%s\" output %s flatten' % (infile, tmp_file, outfile)) - finally: - try: - os.remove(tmp_file) - except Exception: - pass # nothing to do - -def testfill_pdf(infile, outfile): - keys = extract_keys_from_pdf(infile) - fields = [] - for key in keys: - fields.append( (key, key, '') ) - fill_pdf(infile, outfile, fields) |
