2011-01-12 4 views
2

Ich bin über ein Problem mit dem Versuch, einen Crystal Report in Java, wo der gesamte Text wird mit den kleinen Box Zeichen ersetzt. Das Berichts-Blob wird in einer Oracle-Datenbank gespeichert, und ich kann es mithilfe des Adobe Readers in der Vorschau anzeigen und sehen, dass es korrekt mit tatsächlichem Text formatiert ist. Dieser Blob wird an ein Java-Applet übergeben, das den PDFRenderer zum Drucken verwendet.Problem mit dem Drucken einer PDF mit Java PDFRenderer

Meine Theorie ist, dass das Problem in der Tatsache liegt, dass die von uns generierten Crystal Reports die Version 1.2 von PDF verwenden. Es gibt auch eine Reihe von Jaspis-Berichten, die als Version 1.4 generiert werden und diese korrekt drucken - es sind nur die 1.2 PDFs, die dieses Problem haben.

Unterstützt der PDFRenderer das Drucken dieser Version nicht oder gibt es einige zusätzliche Schritte, um diese erfolgreich zu drucken?

Jede Hilfe wird sehr geschätzt.

Antwort

1

Es ist sehr unwahrscheinlich, dass Sie auf ein Problem stoßen, das auf die PDF-Version zurückzuführen ist.

Vor allem mit Textinhalt der PDF-Spezifikation erhalten ist sehr komplex und die Wahrscheinlichkeit, dass Crystal Reports hoch ist erstellt Inhalte, die entweder

  • auf einige seltsame Codierung beruht
  • verwendet CID (multibyte) Schrifttechniken

und PDF-Renderer hat einen blinden Fleck dort.

Sie können versuchen, mit den Einstellungen auf dem Bericht Seite zu spielen, um in Bezug auf die

  • Codierung
  • Schriftart (Typ1/TrueType9)
  • Schrift

Einbettung und vielleicht finden Sie eine Option besser geeignet.

+0

Es scheint, dass PDFRenderer eingebettete Schriftarten nicht mag. Ich habe keine Möglichkeit gefunden, Crystal Reports dazu zu bringen, sie nicht einzubetten. Daher habe ich den Bericht in Jaspis konvertiert. Danke für die Hilfe. – JDS

0

Zeigt PDFRenderer die PDFs an, wenn Sie sie als Viewer verwenden? PDFRenderer unterstützt keine späteren PDF-Versionen (dh komprimierte Objekte), aber 1.2 ist ziemlich einfach.

+0

Der Text ist falsch, wenn Sie auch die PDF ansehen. Ich stelle mir vor, dass mtraut richtig ist, weil die Crystal Reports etwas tun, das PDFRenderer fürchterlich findet. – JDS