Impacted versions: Odoo 11 on windows server 2012

Steps to reproduce: 
Create a new out invoice, select a product and set a negative amount for unit price.
Print the invoice.

Current behavior:
in PDF the char "-" is shown as "|" even if the total amount is correct (amount1 - amount2 = total)

Expected behavior:
the printed invoice should show the char "-"

Video/Screenshot link (optional):
![image](https://user-images.githubusercontent.com/37513316/42877323-8c712b2e-8a89-11e8-9690-27f00e08b6b2.png)

this is the negative item on odoo:
![image](https://user-images.githubusercontent.com/37513316/42877389-bf04eba2-8a89-11e8-91c0-e38059673b42.png)


openerp/addons/base/ir/ir_qweb.py
"""Sanitizes @import rules, remove duplicates @import rules, then compile"""
        imports = []
        def sanitize(matchobj):
            ref = matchobj.group(2)
            line = '@import "%s"%s' % (ref, matchobj.group(3))
            if '.' not in ref and line not in imports and not ref.startswith(('.', '/', '~')):
                imports.append(line)
                return line
            msg = "Local import '%s' is forbidden for security reasons." % ref
            _logger.warning(msg)
            self.css_errors.append(msg)
            return ''
        source = re.sub(self.rx_preprocess_imports, sanitize, source)
        try:
            compiler = Popen(cmd, stdin=PIPE, stdout=PIPE, stderr=PIPE)
        except Exception:
            msg = "Could not execute command %r" % cmd[0]
            _logger.error(msg)
            self.css_errors.append(msg)
            return ''
        result = compiler.communicate(input=source.encode('utf-8'))
        if compiler.returncode:
            error = self.get_preprocessor_error(''.join(result), source=source)
            _logger.warning(error)
            self.css_errors.append(error)
            return ''
        compiled = result[0].strip().decode('utf8')
        return compiled
    def get_preprocessor_error(self, stderr, source=None):