I don't know if "Thank you" e-Mails are allowed in the mailing list, but
for you I'll risk a warning :):
THANK YOU! That was just the perfect answer and solved it for me. Also
thanks for explaining it in such a detail, this makes it much more
understandable for me.
And you're right, I haven't purchased the book yet, but I also
discovered about iText only 2 days ago. And the more I see the more
excited I get about the possibilities.
Best Regards
Am 19.08.2012 09:05, schrieb 1T3XT BVBA:
On 19/08/2012 1:07, Peter Stein wrote:
| cb.saveState();
cb.beginText();
cb.moveText(x, y);
cb.setFontAndSize(bf, 12);
cb.showText(text);
cb.endText();
cb.restoreState();|
Or: if you want to do this in one line:
ColumnText.showTextAligned(cb, Element.ALIGN_LEFT, new Phrase(text,
new Font(bf, 12)), x, y, 0);
The main difference technically:
- with ColumnText.showTextAligned(), you creating the syntax generated
with your 7 lines over and over again for each line you write.
- with your 7 lines, you can sometimes reduces the number of operands
needs to draw different lines at different places.
The main difference practically:
- with ColumnText.showTextAligned(), you don't have to worry about
getting the syntax right.
- with your 7 lines, you need to make sure all the graphics state and
text state operators are nicely balanced.
|
I have added possibilities to add my text from my datasources to this method
and it's really working great. The result looks very promising to me and so is
only one task for me left at the moment:
I need to add specfic background colors to my text (not font color!) that I'm
moving and placing in the method shown above.|
And here's why I explained the difference:
- with ColumnText.showAligned(), you can create a Phrase that consists
of Chunks, and with Chunks you have a method to define the background
color.
- with your approach, you have to use graphics state operators to
change the fill color (but don't forget to change it back before
adding text, or your text will have the same color as the background),
you'll have to calculate the length of the text, then draw and fill a
rectangle that fits nicely under the text. Also make sure that you
don't use graphics state operators that aren't allowed in text state
inside the BT-ET block.
|My research didn't provide me any beginner-friendly information about this
task so I would be really happy if you could help me solve this. I also read
something during my research that it could be possible to (somehow) create a
rectangle and write the text above it.|
Your research didn't include reading "iText in Action - Second
Edition" ;-)
That means that you'll have to do with examples:
http://itextpdf.com/themes/keyword.php?id=123
http://itextpdf.com/themes/keyword.php?id=64
http://itextpdf.com/themes/keyword.php?id=60
and so on...
|If possible: can you modify my example in a way that adds a background color
to the added example-text (so at the same coordinates)?|
Yes, you can, but I'd probably use a different approach. However, I
don't know the exact requirements. For instance: one could easily
define the rectangle first and then add the text inside the rectangle,
so that the text wraps if the width of the rectangle isn't sufficient,
but maybe that's not one of your requirements.
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
iText-questions mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/itext-questions
iText(R) is a registered trademark of 1T3XT BVBA.
Many questions posted to this list can (and will) be answered with a reference
to the iText book: http://www.itextpdf.com/book/
Please check the keywords list before you ask for examples:
http://itextpdf.com/themes/keywords.php
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
iText-questions mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/itext-questions
iText(R) is a registered trademark of 1T3XT BVBA.
Many questions posted to this list can (and will) be answered with a reference
to the iText book: http://www.itextpdf.com/book/
Please check the keywords list before you ask for examples:
http://itextpdf.com/themes/keywords.php