2017-03-28 2 views
4

Also arbeite ich an der Erstellung von PDFs mit dem Report4PDF-Paket (Bob Nemec) von der VisualWorks 8.1 Software von Cincom. Ich mache alles in Smalltalk.Wie gibt man ein "checkbox" -Zeichen in ein PDF ein, das von report4pdf generiert wird?

Wie auch immer, das Problem, das ich habe, ist, dass ich kein Kontrollkästchen Zeichen auf dem PDF angezeigt bekommen kann.

So würde mein Code zusammen so gehen:

pdfDocument := Report4PDF.R4PReport new. 
exporter := SAGETEAPDFDataExporter onDocument: pdfDocument. 
exporter currentText text string:' Available'. 
"Followed by relevant code to save PDF" 

Aber was auf meinem PDF auftaucht ist im Grunde 'verfügbar'. Ein Leerzeichen wird anstelle des Kontrollkästchensymbols angezeigt. Ich habe sogar versucht, Dingbats-Codes zu verwenden (z. B. # 9744). Arbeitet mit den Copyright-, Alpha-, Gamma-Symbolen. Nicht mit dem Checkbox-Symbol.

Ich habe versucht, mein VisualWorks-Bild aus dem öffentlichen Repository zu aktualisieren, indem ich die Pakete report4pdf, pdf development und fonts development verwendete. Ran in einige Probleme, die ich nicht erwähnen werde, da es uns vom Thema entgleisen wird.

Vielen Dank im Voraus!

+0

Was ist der CodePoint des Zeichens, das Sie drucken möchten? Ist dieses Zeichen auch sichtbar, wenn Sie die gleiche Schriftart verwenden, die Ihr PDF verwendet? –

+0

@LeandroCaniglia Entschuldigung für den vorherigen leeren Kommentar. Was meinen Sie mit "CodePoint"? Ich bin mit diesem Begriff nicht vertraut. Auch für den zweiten Teil kann ich das Checkbox-Symbol sehen, wenn ich die Zeichenkette im Debugger "inspiziere". Ich benutze die Helvetica-Schriftart, von der ich denke, dass sie die Standardschriftart ist. Glauben Sie, dass die Schriftart das Kontrollkästchen nicht unterstützt? – Mujasoft

Antwort

1

Okay ... Also habe ich am Ende eine Lösung für diese Frage gefunden. Ich werde nur die Post die Antwort hier nur für den Fall, dass jemand anderes in einer ähnlichen Situation bekommt.

pdfDocument := Report4PDF.R4PReport new. 
    exporter := SAGETEAPDFDataExporter onDocument: pdfDocument. 
    exporter currentText text:[:text| 
     text string zapfDingbats ;string:'q'. 
     text string helvetica; string:'Available' ]. 

So können Sie Dingbats Schriftart verwenden, um ein ähnliches Zeichen für Kontrollkästchen zu erhalten. Sie verwenden gemischte Schriftarten, um etwas wie folgt zu erhalten: '(Checkbox) Verfügbar'. Das ist also wie die Zeichenfolge: 'q verfügbar'. Aber 'q' ist der Dingbats-Font, während der 'Verfügbare' Teilstring von Helvetica ist.

Hoffnung, die geholfen hat. Und danke nochmal @Leandro für den Versuch, mir zu helfen :)

Prost!

+0

Schön gelöst. Sie können auch R4PBullet betrachten, das eine Textzeile mit einem Aufzählungszeichen mit einer beliebigen Schriftart ermöglicht. Siehe R4PReportTest >> exampleBullet –

+0

Vielen Dank! Ja, ich habe versucht, den Abschnitt R4Bullet zu betrachten, konnte aber keinen geeigneten Aufzählungspunkt finden. Sie waren alle solide schwarze, während ich etwas wie eine leere Checkbox brauche. Und übrigens tolle Arbeit auf dem Report4PDF-Paket. Es ist wirklich nützlich. :) – Mujasoft

Verwandte Themen