Skip to content
This repository has been archived by the owner on Nov 3, 2023. It is now read-only.

Fehlende Leerzeichen beim PDF-Export #1716

Closed
ghost opened this issue Nov 29, 2011 · 10 comments
Closed

Fehlende Leerzeichen beim PDF-Export #1716

ghost opened this issue Nov 29, 2011 · 10 comments
Assignees
Labels
Milestone

Comments

@ghost
Copy link

ghost commented Nov 29, 2011

Hallo Leo,

wenn man einen Artikel als PDF exportiert, kommt es vor, das einige Leerzeichen geschlcutk werden und deshalb Wörter zusammengeschrieben werden.
Beim untersuchen dieses Phänomens bin ich auf folgende Lösung gestoßen. Das Problem ist beim Controller in der Funktion printArticleAsPdf.

Wenn man die Zeile 977 des preg_replace search array wie folgt ändert,

'`[\n\r\t]+`',

und dann noch in Zeile 987 das replace array wie folgt ändert,

' ', // Anstatt die Linebreaks und Tabs durch nichts zu ersetzen, einfach mit einem Leerzeichen ersetzen.

taucht das Problem nicht mehr auf.

Gruß,

Benjamin

Download the attachments

--- Originally created by ben2010 on March 15th, 2010, at 04:57pm (ID 1716)

@ghost ghost assigned leofeyer Nov 29, 2011
@leofeyer
Copy link
Member

Deine Ausführungen machen durchaus Sinn. Könntest Du bitte trotzdem den fraglichen Inhalt posten, damit ich es hier reproduzieren kann?

--- Originally created on March 15th, 2010, at 07:49pm

@ghost
Copy link
Author

ghost commented Nov 29, 2011

Das Problem tritt nicht generell auf. Aber ich hatte es jetzt schon bei mehreren Seiten und mir erschließt sich nicht ganz warum es bei manchen Seiten geht und bei anderen nicht.

Aber zurück zum Problem. Wenn Du z.B. den Text der folgenden Seite http://www.singlereisen.de/agb.html nimmst, dann tritt beim PDF Export ab dem zweiten Kapitel ("II AGB´s unseres Partners und Reiseveranstalter Becker Travel Worldwide") das Phänomen auf, dass z.B. die Leerzeichen zwischen der Abschnittnumerierung und dem Satzbeginn fehlen, oder auch mitten im Satz Leerzeichen fehlen.

Hoffe Du kannst damit etwas anfangen.

--- Originally created by ben2010 on March 15th, 2010, at 08:48pm

@leofeyer
Copy link
Member

Wieso hast Du das + in den regulären Ausdruck geschrieben? Ich konnte dadurch keinen Vorteil feststellen, wohl aber einen Performance-Nachteil.

--- Originally created on March 16th, 2010, at 11:14pm

@ghost
Copy link
Author

ghost commented Nov 29, 2011

Ohne das + erhalte ich bei manchen Artikeln mit komplexer HTML-Struktur beim PDF-Export eine Fehlermeldung von Acrobat, dass es sich um ein fehlerhaftes PDF handelt. Außerdem werden dann manche Wörter mit n-Anzahl Leerzeichen getrennt, da zwischen den Wörtern wohl entweder einige Tabs und/oder Zeilenumbrüche waren.

Das + behebt diese Problematik, da dadurch wie bei einem Browser nur ein Leerzeichen als Worttrennung verwendet wird. Und für Acrobat ist es dann auch ein valides PDF.

--- Originally created by ben2010 on March 17th, 2010, at 10:12am

@leofeyer
Copy link
Member

Kannst Du dafür bitte auch einen Beispieltext posten?

--- Originally created on March 17th, 2010, at 10:15am

@ghost
Copy link
Author

ghost commented Nov 29, 2011

Wenn Du Dir den Artikel auf der Seite http://dev.singlereisen.de/details/reise/7.html als PDF exportierst, erhalte ich von Acrobat die Meldung, dass das PDF fehlerhaft sei. Desweiteren siehst Du, dass er in der 6. Textzeile (Preis pro Person) die Wörter mit mehreren Leerzeichen trennt. Ergänze ich in der getArticleAsPdf das "+", beanstandet Acrobat nichts und auch die besagte Zeile sieht so aus, wie sie soll bei diesem Artikel.

--- Originally created by ben2010 on March 17th, 2010, at 11:51am

@leofeyer
Copy link
Member

Das kann ich so nicht nachvollziehen. Weder erhalte ich eine Fehlermeldung beim Öffnen des PDFs, noch kann ich erkennen, dass Wörter mit mehreren Leerzeichen getrennt werden. Kannst Du den entsprechenden HTML-Quelltext bitte hier posten, damit wir den Fehler reproduzieren können?

--- Originally created on March 17th, 2010, at 02:40pm

@ghost
Copy link
Author

ghost commented Nov 29, 2011

Ich benutze hier Acrobat Pro(Mac OS) und nicht den Reader. Vielleicht gibt der Reader keine Fehlermeldung aus. Aber Acrobat Pro mag das erstellte PDF hier an unseren Macs nicht.

Bezüglich der mehreren Leerzeichen zwischen Wörtern... Wenn Du den Artikel aus obigem Link als PDF exportierst steht doch so ziemlich am Anfang der Preis pro Person. In dieser Zeile sind die Wörter deutlich auseinandergezogen, da mehrere Leerzeichen dazwischen sind. Mit dem + in der Regex gibt es dazwischen eben nur ein Leerzeichen zwischen den Wörtern.

Den Artikelquelltext hab ich auch mal als Datei angehängt.

--- Originally created by ben2010 on March 19th, 2010, at 10:57am

@leofeyer
Copy link
Member

Behoben in 2b29cb3.

--- Originally created on March 20th, 2010, at 11:46pm

@leofeyer
Copy link
Member

--- Originally completed on March 20th, 2010, at 11:46pm

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

1 participant