Re: Character placement off - bug or am I using it wrong?

ellie <[email protected]> Sun, 21 Aug 2022 07:42:31 +0200
Newsgroups gmane.comp.python.reportlab.user
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--------------DOJxi5CaiGLUFfpE7qFvh08q
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Thanks for your answer!
Sorry for responding to the wrong message here, but your e-mail sadly 
didn't arrive for me while some others did, I'm not sure why.

Tim Roberts [email protected] wrote:
  >  How did you convert it to a TTF?  The font in the TeX library is an
  > OTF

There is also a TTF version which I used, sadly I can't attach it. 
However, I noticed a screenshot alone works, so I attached that. Look at 
the "Tw" in "Two" or all the commas, upper render is reportlab 
placement, lower is with what should be with font kerning working 
(although due to my hacky approach to override it, maybe some hinting or 
other details isn't, so it's not 100% correct, just less wrong).

Given the kerning works with a different TTF library with the same font 
file, I would assume it's kind of out of the question the font contains 
it. That is why I'm wondering why it doesn't work with reportlab.

Is this a bug in reportlab then? Where can I report it with all the 
files like the font attached? I assume people would kind of hope for 
something like basic glyph placement in a PDF library to work, so maybe 
a fix might be worth a consideration.

On 8/16/22 8:21 PM, ellie wrote:
> Hi everyone,
> 
> I have an issue with .drawString() called on reportlab.pdfgen.Canvas 
> shown in the attached image, it seems characters are placed wrong. For 
> example, look at the word "Two" in the upper paragraph (created with 
> reportlab's placement), see how the "T" and "w" are oddly apart.
> 
> Also compare to the lower image (created via a hack overriding reportlab 
> placement), especially also all the commas which seem to be spaced too 
> far to the right by reportlab as well.
> 
> I use reportlab open-source 3.6.10, Python 3.10.6, and the attached font 
> "Tex Gyre Pagella" from the LaTeX community in TTF format.
> 
> 
> It looks like reportlab is placing letters with naive bounding boxes 
> rather than to properly overlap special pairs in whatever smart way the 
> font would provide. (That might be wrong, just my uninformed guess.)
> 
> Is this a reportlab bug? Is it a problem with the reportlab install, 
> like a missing library? Or do I need to pass some option for better 
> placement? If it's a bug, is there hope for a fix? If it's an install 
> issue, can I detect this in Python to avoid silently generating broken 
> PDFs?
> 
> Regards, ellie
--------------DOJxi5CaiGLUFfpE7qFvh08q
Content-Type: image/jpeg; name="reportlabhmweird.jpg"
Content-Disposition: attachment; filename="reportlabhmweird.jpg"
Content-Transfer-Encoding: base64

/9j/4AAQSkZJRgABAQIAHAAcAAD/4gKwSUNDX1BST0ZJTEUAAQEAAAKgbGNtcwQwAABtbnRy
UkdCIFhZWiAH5gAIABUABQAZADhhY3NwQVBQTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
9tYAAQAAAADTLWxjbXMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAA1kZXNjAAABIAAAAEBjcHJ0AAABYAAAADZ3dHB0AAABmAAAABRjaGFkAAABrAAA
ACxyWFlaAAAB2AAAABRiWFlaAAAB7AAAABRnWFlaAAACAAAAABRyVFJDAAACFAAAACBnVFJD
AAACFAAAACBiVFJDAAACFAAAACBjaHJtAAACNAAAACRkbW5kAAACWAAAACRkbWRkAAACfAAA
ACRtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACQAAAAcAEcASQBNAFAAIABiAHUAaQBsAHQALQBp
AG4AIABzAFIARwBCbWx1YwAAAAAAAAABAAAADGVuVVMAAAAaAAAAHABQAHUAYgBsAGkAYwAg
AEQAbwBtAGEAaQBuAABYWVogAAAAAAAA9tYAAQAAAADTLXNmMzIAAAAAAAEMQgAABd7///Ml
AAAHkwAA/ZD///uh///9ogAAA9wAAMBuWFlaIAAAAAAAAG+gAAA49QAAA5BYWVogAAAAAAAA
JJ8AAA+EAAC2xFhZWiAAAAAAAABilwAAt4cAABjZcGFyYQAAAAAAAwAAAAJmZgAA8qcAAA1Z
AAAT0AAACltjaHJtAAAAAAADAAAAAKPXAABUfAAATM0AAJmaAAAmZwAAD1xtbHVjAAAAAAAA
AAEAAAAMZW5VUwAAAAgAAAAcAEcASQBNAFBtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAc
AHMAUgBHAEL/2wBDAGRFS1hLP2RYUVhxamR3lvqjloqKlv/b57X6////////////////////
////////////////////////////////2wBDAWpxcZaDlv+jo///////////////////////
////////////////////////////////////////////////////wgARCAFGA8MDASIAAhEB
AxEB/8QAGAABAQEBAQAAAAAAAAAAAAAAAAIBAwT/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oA
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
rntc9rntc9rntc9rntc9rntc9rntct8F+en/2Q==

--------------DOJxi5CaiGLUFfpE7qFvh08q
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline