From reportlab-users@reportlab.com Sat Nov 1 23:57:24 2003 From: reportlab-users@reportlab.com (sarah el-lawindy) Date: Sat, 1 Nov 2003 15:57:24 -0800 (PST) Subject: [reportlab-users] i am asking again about the arabic thing, on the hope that anyone might reply back In-Reply-To: <20031031221538.95960.qmail@web60003.mail.yahoo.com> Message-ID: <20031101235724.43142.qmail@web60001.mail.yahoo.com> --0-206372036-1067731044=:41469 Content-Type: text/plain; charset=us-ascii hi there, ok , noone replied my perviuos question, i hope that anyone replies this one. i tried the code of ttf part in the user guide of reportlab (incase u don't know, the rina ttf), there were no error , and at the same time, no pdf was generated, does anyone know why? sam ellawindy ps, this is the code # we know some glyphs are missing, suppress warnings import reportlab.rl_config reportlab.rl_config.warnOnMissingFontGlyphs = 0 from reportlab.pdfbase import pdfmetrics from reportlab.pdfbase.ttfonts import TTFont pdfmetrics.registerFont(TTFont('Rina', 'rina.ttf')) canvas.setFont(Rina, 32) canvas.drawString(10, 150, "Some text encoded in UTF-8") canvas.drawString(10, 100, "In the Rina TT Font!") --------------------------------- Do you Yahoo!? Exclusive Video Premiere - Britney Spears --0-206372036-1067731044=:41469 Content-Type: text/html; charset=us-ascii

hi there,
 ok , noone replied my perviuos question, i hope that anyone replies this one.
 i tried the code of ttf part in the user guide of reportlab (incase u don't know, the rina ttf), there were no error , and at the same time, no pdf was generated, does anyone know why?

sam ellawindy

ps, this is the code 

   # we know some glyphs are missing, suppress warnings
     import reportlab.rl_config   
     reportlab.rl_config.warnOnMissingFontGlyphs = 0
     from reportlab.pdfbase import pdfmetrics
     from reportlab.pdfbase.ttfonts import TTFont
     pdfmetrics.registerFont(TTFont('Rina', 'rina.ttf'))
     canvas.setFont(Rina, 32)
     canvas.drawString(10, 150, "Some text encoded in UTF-8")
     canvas.drawString(10, 100, "In the Rina TT Font!")


Do you Yahoo!?
Exclusive Video Premiere - Britney Spears --0-206372036-1067731044=:41469-- From reportlab-users@reportlab.com Sun Nov 2 00:03:51 2003 From: reportlab-users@reportlab.com (Jerome Alet) Date: Sun, 2 Nov 2003 01:03:51 +0100 Subject: [reportlab-users] i am asking again about the arabic thing, on the hope that anyone might reply back In-Reply-To: <20031101235724.43142.qmail@web60001.mail.yahoo.com> References: <20031031221538.95960.qmail@web60003.mail.yahoo.com> <20031101235724.43142.qmail@web60001.mail.yahoo.com> Message-ID: <20031102000351.GD12420@mail.librelogiciel.com> On Sat, Nov 01, 2003 at 03:57:24PM -0800, sarah el-lawindy wrote: > > hi there, > ok , noone replied my perviuos question, i hope that anyone replies this one. > i tried the code of ttf part in the user guide of reportlab (incase u don't know, the rina ttf), there were no error , and at the same time, no pdf was generated, does anyone know why? > > sam ellawindy > > ps, this is the code > > # we know some glyphs are missing, suppress warnings > import reportlab.rl_config > reportlab.rl_config.warnOnMissingFontGlyphs = 0 > from reportlab.pdfbase import pdfmetrics > from reportlab.pdfbase.ttfonts import TTFont > pdfmetrics.registerFont(TTFont('Rina', 'rina.ttf')) > canvas.setFont(Rina, 32) > canvas.drawString(10, 150, "Some text encoded in UTF-8") > canvas.drawString(10, 100, "In the Rina TT Font!") your code is incomplete. you should add (from memory) : from reportlab.pdfgen import canvas canvas = canvas.Canvas() ... your code here canvas.showPage() canvas.save() hth Jerome Alet From reportlab-users@reportlab.com Sun Nov 2 00:15:23 2003 From: reportlab-users@reportlab.com (sarah el-lawindy) Date: Sat, 1 Nov 2003 16:15:23 -0800 (PST) Subject: [reportlab-users] i am asking again about the arabic thing, on the hope that anyone might reply back In-Reply-To: <20031102000351.GD12420@mail.librelogiciel.com> Message-ID: <20031102001523.15001.qmail@web60005.mail.yahoo.com> --0-1494415388-1067732123=:14817 Content-Type: text/plain; charset=us-ascii mr Jerome Alet, really thank u for ur fast reply, i did ur modification in the code but it did not work 2, any other options. sam ellawindy --------------------------------- Do you Yahoo!? Exclusive Video Premiere - Britney Spears --0-1494415388-1067732123=:14817 Content-Type: text/html; charset=us-ascii


mr Jerome Alet,
  really thank u for ur fast reply, i did ur modification in the code but it did not work 2, any other options.
 
sam ellawindy


Do you Yahoo!?
Exclusive Video Premiere - Britney Spears --0-1494415388-1067732123=:14817-- From reportlab-users@reportlab.com Sun Nov 2 00:29:14 2003 From: reportlab-users@reportlab.com (Jerome Alet) Date: Sun, 2 Nov 2003 01:29:14 +0100 Subject: [reportlab-users] i am asking again about the arabic thing, on the hope that anyone might reply back In-Reply-To: <20031102001523.15001.qmail@web60005.mail.yahoo.com> References: <20031102000351.GD12420@mail.librelogiciel.com> <20031102001523.15001.qmail@web60005.mail.yahoo.com> Message-ID: <20031102002914.GE12420@mail.librelogiciel.com> --AqsLC8rIMeq19msA Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Sat, Nov 01, 2003 at 04:15:23PM -0800, sarah el-lawindy wrote: > > really thank u for ur fast reply, i did ur modification in the > code but it did not work 2, any other options. The very simple attached program creates a PDF document called "hello.pdf" It works. Modify it to add your code. bye, Jerome Alet -- "A non-free program is a predatory social system that keeps people in a state of domination and division, and uses the spoils to dominate more." - RMS --AqsLC8rIMeq19msA Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="testprog.py" from reportlab.pdfgen import canvas c = canvas.Canvas("hello.pdf") c.drawString(300, 300, "Hello") c.showPage() c.save() --AqsLC8rIMeq19msA-- From reportlab-users@reportlab.com Sun Nov 2 01:21:59 2003 From: reportlab-users@reportlab.com (sarah el-lawindy) Date: Sat, 1 Nov 2003 17:21:59 -0800 (PST) Subject: [reportlab-users] still no working In-Reply-To: <20031102002914.GE12420@mail.librelogiciel.com> Message-ID: <20031102012159.55962.qmail@web60001.mail.yahoo.com> --0-1564262061-1067736119=:53184 Content-Type: text/plain; charset=us-ascii hi again, i know that this piece of code works well,it is in the guide and i tried and it worked with, but it did not work with the piece of code i send u before, no error, and no pdfs as well. what i mean import reportlab.rl_config reportlab.rl_config.warnOnMissingFontGlyphs = 0 from reportlab.pdfbase import pdfmetrics from reportlab.pdfbase.ttfonts import TTFont from reportlab.pdfgen import canvas c = canvas.Canvas("hello.pdf") pdfmetrics.registerFont(TTFont('Rina', 'rina.ttf')) c.setFont(Rina, 32) c.drawString(10, 150, "Some text encoded in UTF-8") c.drawString(10, 100, "In the Rina TT Font!") did not generate a pdf file, although there is no error .. i hope u got what i mean .. thanks for ur concern sam ellawindy --------------------------------- Do you Yahoo!? Exclusive Video Premiere - Britney Spears --0-1564262061-1067736119=:53184 Content-Type: text/html; charset=us-ascii

hi again,

 i know that this piece of code works well,it is in the guide and i tried and it worked with, but it did not work with the piece of code i send u before, no error, and no pdfs as well.

what i mean 

    import reportlab.rl_config
    reportlab.rl_config.warnOnMissingFontGlyphs = 0
    from reportlab.pdfbase import pdfmetrics
    from reportlab.pdfbase.ttfonts import TTFont
    from reportlab.pdfgen import canvas
    c = canvas.Canvas("hello.pdf")
    pdfmetrics.registerFont(TTFont('Rina', 'rina.ttf'))
    c.setFont(Rina, 32)
    c.drawString(10, 150, "Some text encoded in UTF-8")
    c.drawString(10, 100, "In the Rina TT Font!")

did not generate a pdf file, although there is no error ..

i hope u got what i mean ..

thanks for ur concern

sam ellawindy


Do you Yahoo!?
Exclusive Video Premiere - Britney Spears --0-1564262061-1067736119=:53184-- From reportlab-users@reportlab.com Sun Nov 2 08:22:11 2003 From: reportlab-users@reportlab.com (Jerome Alet) Date: Sun, 2 Nov 2003 09:22:11 +0100 Subject: [reportlab-users] still no working In-Reply-To: <20031102012159.55962.qmail@web60001.mail.yahoo.com> References: <20031102002914.GE12420@mail.librelogiciel.com> <20031102012159.55962.qmail@web60001.mail.yahoo.com> Message-ID: <20031102082211.GB15507@mail.librelogiciel.com> On Sat, Nov 01, 2003 at 05:21:59PM -0800, sarah el-lawindy wrote: > > hi again, > > i know that this piece of code works well,it is in the guide and i tried and it worked with, but it did not work with the piece of code i send u before, no error, and no pdfs as well. > > what i mean > > import reportlab.rl_config > reportlab.rl_config.warnOnMissingFontGlyphs = 0 > from reportlab.pdfbase import pdfmetrics > from reportlab.pdfbase.ttfonts import TTFont > from reportlab.pdfgen import canvas > c = canvas.Canvas("hello.pdf") > pdfmetrics.registerFont(TTFont('Rina', 'rina.ttf')) > c.setFont(Rina, 32) > c.drawString(10, 150, "Some text encoded in UTF-8") > c.drawString(10, 100, "In the Rina TT Font!") > > did not generate a pdf file, although there is no error .. > > i hope u got what i mean .. I'm sorry but again the code you are showing miss the c.save() call, and so no PDF file is generated. If the above code is the integrality of your code, then add c.save() at the end and the file will be generated. Also the setFont call causes an error, because Rina should be enclosed between quotes. Also did you put the complete path to the rina.ttf file or copy the file in your current directory ? The following works fine here : --- CUT --- import reportlab.rl_config reportlab.rl_config.warnOnMissingFontGlyphs = 0 from reportlab.pdfbase import pdfmetrics from reportlab.pdfbase.ttfonts import TTFont from reportlab.pdfgen import canvas c = canvas.Canvas("hello.pdf") pdfmetrics.registerFont(TTFont('Rina', 'rina.ttf')) c.setFont("Rina", 32) c.drawString(10, 150, u"Some text encoded in UTF-8") c.drawString(10, 100, u"In the Rina TT Font!") c.showPage() c.save() --- CUT --- Jerome Alet -- "A non-free program is a predatory social system that keeps people in a state of domination and division, and uses the spoils to dominate more." - RMS From reportlab-users@reportlab.com Sun Nov 2 18:47:52 2003 From: reportlab-users@reportlab.com (Dirk Datzert) Date: Sun, 02 Nov 2003 19:47:52 +0100 Subject: [reportlab-users] BubbleCharts ? Message-ID: <3FA55158.B377953E@rasselstein-hoesch.de> Hi all, I saw in the lineplot.py and axes.py private variables called _bubblePlot, _bubbleRadius, _bubbleMax. Can anybody give me a description how-to fill these values ? I thing that with these variables BubbleCharts are possible ? Regards, Dirk From reportlab-users@reportlab.com Sun Nov 2 20:29:09 2003 From: reportlab-users@reportlab.com (Robin Becker) Date: Sun, 2 Nov 2003 20:29:09 +0000 Subject: [reportlab-users] BubbleCharts ? In-Reply-To: <3FA55158.B377953E@rasselstein-hoesch.de> References: <3FA55158.B377953E@rasselstein-hoesch.de> Message-ID: In article <3FA55158.B377953E@rasselstein-hoesch.de>, Dirk Datzert writes >Hi all, > >I saw in the lineplot.py and axes.py private variables called >_bubblePlot, _bubbleRadius, _bubbleMax. > >Can anybody give me a description how-to fill these values ? >I thing that with these variables BubbleCharts are possible ? > >Regards, >Dirk .....this should get you started Dirk [ Section: 1/1 File: tbubble.py UUencoded by: Turnpike Integrated Version 5.01 U ] begin 644 tbubble.py M(T%U=&]G96YE This is a multi-part message in MIME format. --------------090301010501010103030403 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Hi again, I've got what I thought was a problem with the vertical alignment in the table, but it seems that it's got more to do with the paragraph. I've got a small paragraph, usually 1 word, with point size about 24. It looks fine on it's own, but when I put it in a table with the cells aligned to the bottom, the text constantly is too low, and 'leaks' into the cell below, despite the fact that there's plenty of place on the top. I noticed that if I set the background colour to something like blue, the space it takes up is far less than the size of the text in it. And that the top of the text is in vertically in the middle of the paragraph. I've added the following styles to the sample sheet: self.stylesheet.add(styles.ParagraphStyle(name='defaultStyle', parent=self.stylesheet['Normal'], backColor=colors.blue, alignment=TA_CENTER, spaceAfter=0), alias='ticketstyle') self.stylesheet.add(styles.ParagraphStyle(name='Barcode', parent=self.stylesheet['Normal'], fontName = 'Barcode', fontSize = 18, backColor=colors.blue, alignment=TA_CENTER, spaceAfter=0), alias='barcode') self.stylesheet.add(styles.ParagraphStyle(name='defaultHeaderStyle', parent=self.stylesheet['Normal'], fontName = 'Times-Bold', fontSize=18, backColor=colors.blue, alignment=TA_CENTER, spaceAfter=0), alias='ticketheader') The style I've used for the table: def LargeTableStyle(): return TableStyle([ #\ ('GRID', (0,0), (-1,-1), 0.5, colors.black), \ ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), \ ]) The code I've used to generate the table: tableBlock = [[Paragraph(ticketData['ARTICLE'], self.stylesheet['Barcode']), Paragraph(ticketData['DESCRIPTION'],self.stylesheet['defaultHeaderStyle'])], \ [Paragraph(ticketData['ARTICLE'],self.stylesheet['defaultHeaderStyle']), Paragraph(ticketData['COL'],self.stylesheet['defaultHeaderStyle'])]] tBlock0 = Table(tableBlock, style=LargeTableStyle(), colWidths = [8*cm, 8*cm], rowHeights=[10*mm, 10*mm], repeatRows=0) tBlock0.hAlign = "LEFT" Story.append(tBlock0) And I've attached what comes out. I've got a small question about tables too, mine don't seem to be calculating the size of the cell properly when I add a paragraph, or, actually, if I think about it, it may be calculating the size fine, but it would tie in to the problem I've mentioned above. Thanks for any help, Shayan --------------090301010501010103030403 Content-Type: application/pdf; name="ticketprint.pdf" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="ticketprint.pdf" CiAgICAgIDxodG1sPgogICAgICA8aGVhZD4KICAgICAgPHRpdGxlPkZhbGtlIFRpY2tldCBN YW5hZ2VtZW50PC90aXRsZT4KICAgICAgPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBl IiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9aXNvLTg4NTktMSI+CiAgICAgIDxMSU5L IFJFTD0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii9jc3MvZGVmYXVsdC5j c3MiPgogICAgICA8TElOSyBSRUw9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVG PSIvY3NzL3BsYWlubGlua3MuY3NzIj4KICAgICAgPC9oZWFkPjxib2R5IGJnY29sb3I9IiNm ZmZmZmYiPgogICAgICA8aDE+RmFsa2UgVGlja2V0IE1hbmFnZW1lbnQ8L2gxPiVQREYtMS4z DQolk4yLniBSZXBvcnRMYWIgR2VuZXJhdGVkIFBERiBkb2N1bWVudCBodHRwOi8vd3d3LnJl cG9ydGxhYi5jb20NCiUgJ0Jhc2ljRm9udHMnOiBjbGFzcyBQREZEaWN0aW9uYXJ5IA0KMSAw IG9iag0KJSBUaGUgc3RhbmRhcmQgZm9udHMgZGljdGlvbmFyeQ0KPDwgL0YxIDIgMCBSDQog L0YyIDMgMCBSDQogL0YzKzAgOSAwIFINCiAvRjQgNCAwIFIgPj4NCmVuZG9iag0KJSAnRjEn OiBjbGFzcyBQREZUeXBlMUZvbnQgDQoyIDAgb2JqDQolIEZvbnQgSGVsdmV0aWNhDQo8PCAv QmFzZUZvbnQgL0hlbHZldGljYQ0KIC9FbmNvZGluZyAvV2luQW5zaUVuY29kaW5nDQogL05h bWUgL0YxDQogL1N1YnR5cGUgL1R5cGUxDQogL1R5cGUgL0ZvbnQgPj4NCmVuZG9iag0KJSAn RjInOiBjbGFzcyBQREZUeXBlMUZvbnQgDQozIDAgb2JqDQolIEZvbnQgVGltZXMtUm9tYW4N Cjw8IC9CYXNlRm9udCAvVGltZXMtUm9tYW4NCiAvRW5jb2RpbmcgL1dpbkFuc2lFbmNvZGlu Zw0KIC9OYW1lIC9GMg0KIC9TdWJ0eXBlIC9UeXBlMQ0KIC9UeXBlIC9Gb250ID4+DQplbmRv YmoNCiUgJ0Y0JzogY2xhc3MgUERGVHlwZTFGb250IA0KNCAwIG9iag0KJSBGb250IFRpbWVz LUJvbGQNCjw8IC9CYXNlRm9udCAvVGltZXMtQm9sZA0KIC9FbmNvZGluZyAvV2luQW5zaUVu Y29kaW5nDQogL05hbWUgL0Y0DQogL1N1YnR5cGUgL1R5cGUxDQogL1R5cGUgL0ZvbnQgPj4N CmVuZG9iag0KJSAnUGFnZTEnOiBjbGFzcyBQREZQYWdlIA0KNSAwIG9iag0KJSBQYWdlIGRp Y3Rpb25hcnkNCjw8IC9Db250ZW50cyAxMyAwIFINCiAvTWVkaWFCb3ggWyAwDQogIDANCiAg NTk1LjI3NTU5MDU1MQ0KICA4NDEuODg5NzYzNzggXQ0KIC9QYXJlbnQgMTIgMCBSDQogL1Jl c291cmNlcyA8PCAvRm9udCAxIDAgUg0KICAvUHJvY1NldCBbIC9QREYNCiAgIC9UZXh0DQog ICAvSW1hZ2VCDQogICAvSW1hZ2VDDQogICAvSW1hZ2VJIF0gPj4NCiAvUm90YXRlIDANCiAv VHJhbnMgPDwgID4+DQogL1R5cGUgL1BhZ2UgPj4NCmVuZG9iag0KJSAndG9Vbmljb2RlQ01h cDpTVUJTRVQrRmVsaXhUaXRsaW5nTVQrMCc6IGNsYXNzIFBERlN0cmVhbSANCjYgMCBvYmoN Cjw8IC9GaWx0ZXIgWyAvRmxhdGVEZWNvZGUgXQ0KIC9MZW5ndGggMjY2ID4+DQpzdHJlYW0N CnicfZHLToQwFIb3fYouNbNogVGZhLDQGRMWo0bwATrtAZtAaUpJ5O3ltOOYmDiLNt+5/Dk3 9lTtK6M9ZW9ulDV42mqjHEzj7CTQE3TakCSlSkt/tsIvB2EJW8X1MnkYKtOOpCgoe1+Dk3cL vak/HutDs3mGXn812vfadMdmw28Je3UK3Gpey6lna3sYwHjKSVlSBe1a7ijsixiAsn+Ev2nN YoGmwU5i33JUMFkhwQnTASk4L2nB85KAUX9iu6g4tfJTuJ9Mnu3KlZPIW+Q0co6cBU73yNvo 58h30X9Avo/+BPkhcoqcR85CL+eq2BXu+DKznJ1b1xEOEUbE4bSBy63saFGF7xvpKI5dZW5k c3RyZWFtDQoNCmVuZG9iag0KJSAnZm9udEZpbGU6QzpcXFdJTkRPV1NcXEZvbnRzXFxGRUxJ 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 YXBIZWlnaHQgNzE5DQogL0Rlc2NlbnQgMA0KIC9GbGFncyA0DQogL0ZvbnRCQm94IFsgLTE4 MQ0KICAtMjQyDQogIDExNDcNCiAgOTI4IF0NCiAvRm9udEZpbGUyIDcgMCBSDQogL0ZvbnRO YW1lIC9TVUJTRVQrRmVsaXhUaXRsaW5nTVQrMA0KIC9JdGFsaWNBbmdsZSAwLjANCiAvU3Rl bVYgODcNCiAvVHlwZSAvRm9udERlc2NyaXB0b3IgPj4NCmVuZG9iag0KJSAnRjMrMCc6IGNs YXNzIFBERlRydWVUeXBlRm9udCANCjkgMCBvYmoNCiUgRm9udCBCYXJjb2RlIHN1YnNldCAw DQo8PCAvQmFzZUZvbnQgL1NVQlNFVCtGZWxpeFRpdGxpbmdNVCswDQogL0ZpcnN0Q2hhciAw DQogL0ZvbnREZXNjcmlwdG9yIDggMCBSDQogL0xhc3RDaGFyIDgNCiAvTmFtZSAvRjMrMA0K IC9TdWJ0eXBlIC9UcnVlVHlwZQ0KIC9Ub1VuaWNvZGUgNiAwIFINCiAvVHlwZSAvRm9udA0K IC9XaWR0aHMgWyA1ODINCiAgNTQxDQogIDU4Mg0KICAyNTANCiAgNTgyDQogIDE2Ng0KICAy NTkNCiAgNTQxDQogIDU2MiBdID4+DQplbmRvYmoNCiUgJ1IxMCc6IGNsYXNzIFBERkNhdGFs b2cgDQoxMCAwIG9iag0KJSBEb2N1bWVudCBSb290DQo8PCAvT3V0bGluZXMgMTQgMCBSDQog L1BhZ2VNb2RlIC9Vc2VOb25lDQogL1BhZ2VzIDEyIDAgUg0KIC9UeXBlIC9DYXRhbG9nID4+ DQplbmRvYmoNCiUgJ1IxMSc6IGNsYXNzIFBERkluZm8gDQoxMSAwIG9iag0KPDwgL0F1dGhv ciAoYW5vbnltb3VzKQ0KIC9DcmVhdGlvbkRhdGUgKDIwMDMxMTAzMTQwMzUzKQ0KIC9Qcm9k dWNlciAoUmVwb3J0TGFiIGh0dHA6Ly93d3cucmVwb3J0bGFiLmNvbSkNCiAvU3ViamVjdCAo dW5zcGVjaWZpZWQpDQogL1RpdGxlICh1bnRpdGxlZCkgPj4NCmVuZG9iag0KJSAnUjEyJzog Y2xhc3MgUERGUGFnZXMgDQoxMiAwIG9iag0KJSBwYWdlIHRyZWUNCjw8IC9Db3VudCAyDQog L0tpZHMgWyA1IDAgUg0KICAxNSAwIFIgXQ0KIC9UeXBlIC9QYWdlcyA+Pg0KZW5kb2JqDQol ICdSMTMnOiBjbGFzcyBQREZTdHJlYW0gDQoxMyAwIG9iag0KJSBwYWdlIHN0cmVhbQ0KPDwg L0ZpbHRlciBbIC9BU0NJSTg1RGVjb2RlDQogIC9GbGF0ZURlY29kZSBdDQogL0xlbmd0aCA1 NDIgPj4NCnN0cmVhbQ0KR2IhPEw5MkVHWiUiUmYzcUIoK0dUazpTJG0jYiFOIk00WXJcOFhg TTZVUFonJSNNX3BnODQmRlE+JSFLDQpmI2ozOmZNO0B0ZUldNj9aMkIkPDZmMTFKTGsjVkck N007RjJoRlxoLTZIclJOMGIoRVE0Z1lgMHFENycNCiFYb1o+PmlgY3NdXidnUDhYIj02PDo2 cklENypcdFZvYltpO1MjSV4jSDdpKTtAJS51YmpZJkojYCkqag0KNT9iUFAydE9NIiJSaldn cFdIP3UkKXNhVjomaW9lIWYvWmgjLjlWUiw8IWNqLE9UXlZySHE+J1pDcUM8DQpOQ0AyJy9l Mlo3ViRQPFtrMVppOFs2JnR0OTY8JUdyLGRYXWxNR3MoQCFZaz5bOCUnb0tNbyVDZWdfZiMN CkdCMDkrQjMmMi8paVxmSD9iU01vMSVtTystVm4oPUpqSUo5bjAzS2pLc19FITY4cVtbSCEn KVVcMlNBPg0KT0VJMSYhNT5MS2cnOUQ/V2xZKjpkKFEuLiFMK2s5N1ZsUW8pKk8kblA4MVVM QFBNKidALzlLJz5YV1xpDQowYUZKM1FhQDBcK0w5Jis5YktmQj5NTzc7YkJWO2ZqO0E3Vmxa KTdfczMlbm0sO28kNlNNO14yIlkmWk8NCmowYUxKcVAvdGJEKjtbKiZOLiQiYGldNkxfam9z aDBBNi44Tz0hMldXLEMmfj5lbmRzdHJlYW0NCg0KZW5kb2JqDQolICdSMTQnOiBjbGFzcyBQ REZPdXRsaW5lcyANCjE0IDAgb2JqDQo8PCAvQ291bnQgMA0KIC9UeXBlIC9PdXRsaW5lcyA+ Pg0KZW5kb2JqDQolICdQYWdlMic6IGNsYXNzIFBERlBhZ2UgDQoxNSAwIG9iag0KJSBQYWdl IGRpY3Rpb25hcnkNCjw8IC9Db250ZW50cyAxNiAwIFINCiAvTWVkaWFCb3ggWyAwDQogIDAN CiAgNTk1LjI3NTU5MDU1MQ0KICA4NDEuODg5NzYzNzggXQ0KIC9QYXJlbnQgMTIgMCBSDQog L1Jlc291cmNlcyA8PCAvRm9udCAxIDAgUg0KICAvUHJvY1NldCBbIC9QREYNCiAgIC9UZXh0 DQogICAvSW1hZ2VCDQogICAvSW1hZ2VDDQogICAvSW1hZ2VJIF0gPj4NCiAvUm90YXRlIDAN CiAvVHJhbnMgPDwgID4+DQogL1R5cGUgL1BhZ2UgPj4NCmVuZG9iag0KJSAnUjE2JzogY2xh c3MgUERGU3RyZWFtIA0KMTYgMCBvYmoNCiUgcGFnZSBzdHJlYW0NCjw8IC9GaWx0ZXIgWyAv QVNDSUk4NURlY29kZQ0KICAvRmxhdGVEZWNvZGUgXQ0KIC9MZW5ndGggNjAgPj4NCnN0cmVh bQ0KR2FwUWgwRT1GLDBVXEgzaSJWb1ltcS9NK0JWWjMmVkk0KTNCOyxzc1VZbSctYkdFInQi VFopdCNXX34+ZW5kc3RyZWFtDQoNCmVuZG9iag0KeHJlZg0KMCAxNw0KMDAwMDAwMDAwMCA2 NTUzNSBmDQowMDAwMDAwMTEzIDAwMDAwIG4NCjAwMDAwMDAyNDcgMDAwMDAgbg0KMDAwMDAw MDQxMiAwMDAwMCBuDQowMDAwMDAwNTgxIDAwMDAwIG4NCjAwMDAwMDA3NDYgMDAwMDAgbg0K MDAwMDAwMTA4MCAwMDAwMCBuDQowMDAwMDAxNTE5IDAwMDAwIG4NCjAwMDAwMDUxMTAgMDAw MDAgbg0KMDAwMDAwNTM3NiAwMDAwMCBuDQowMDAwMDA1NjgzIDAwMDAwIG4NCjAwMDAwMDU4 MjEgMDAwMDAgbg0KMDAwMDAwNjAxOSAwMDAwMCBuDQowMDAwMDA2MTM2IDAwMDAwIG4NCjAw MDAwMDY4MjUgMDAwMDAgbg0KMDAwMDAwNjkwNCAwMDAwMCBuDQowMDAwMDA3MjA1IDAwMDAw IG4NCnRyYWlsZXINCjw8IC9JRCANCiAgJSBSZXBvcnRMYWIgZ2VuZXJhdGVkIFBERiBkb2N1 bWVudCAtLSBkaWdlc3QgKGh0dHA6Ly93d3cucmVwb3J0bGFiLmNvbSkgDQogIFsoY1wyNTNT ZVwzMTRcMzU1XDMxNlwzNDJcMDMyXDM1M1wzNDRcMjY1cFwwMDJuXDIxMykgKGNcMjUzU2Vc MzE0XDM1NVwzMTZcMzQyXDAzMlwzNTNcMzQ0XDI2NXBcMDAyblwyMTMpXSANCiANCiAvSW5m byAxMSAwIFINCiAvUm9vdCAxMCAwIFINCiAvU2l6ZSAxNyA+Pg0Kc3RhcnR4cmVmDQo3Mzgy DQolJUVPRg0KPC9ib2R5PgogICAgICA8L2h0bWw+CiAgICAgIA== --------------090301010501010103030403-- From reportlab-users@reportlab.com Mon Nov 3 12:06:46 2003 From: reportlab-users@reportlab.com (S Raghavjee) Date: Mon, 03 Nov 2003 14:06:46 +0200 Subject: [reportlab-users] Paragraph sizing issue and a small table query Message-ID: <3FA644D6.2030401@mweb.co.za> This is a multi-part message in MIME format. --------------070206050001000208080804 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Hi again, I've got what I thought was a problem with the vertical alignment in the table, but it seems that it's got more to do with the paragraph. I've got a small paragraph, usually 1 word, with point size about 24. It looks fine on it's own, but when I put it in a table with the cells aligned to the bottom, the text constantly is too low, and 'leaks' into the cell below, despite the fact that there's plenty of place on the top. I noticed that if I set the background colour to something like blue, the space it takes up is far less than the size of the text in it. And that the top of the text is in vertically in the middle of the paragraph. I've added the following styles to the sample sheet: self.stylesheet.add(styles.ParagraphStyle(name='defaultStyle', parent=self.stylesheet['Normal'], backColor=colors.blue, alignment=TA_CENTER, spaceAfter=0), alias='ticketstyle') self.stylesheet.add(styles.ParagraphStyle(name='Barcode', parent=self.stylesheet['Normal'], fontName = 'Barcode', fontSize = 18, backColor=colors.blue, alignment=TA_CENTER, spaceAfter=0), alias='barcode') self.stylesheet.add(styles.ParagraphStyle(name='defaultHeaderStyle', parent=self.stylesheet['Normal'], fontName = 'Times-Bold', fontSize=18, backColor=colors.blue, alignment=TA_CENTER, spaceAfter=0), alias='ticketheader') The style I've used for the table: def LargeTableStyle(): return TableStyle([ #\ ('GRID', (0,0), (-1,-1), 0.5, colors.black), \ ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), \ ]) The code I've used to generate the table: tableBlock = [[Paragraph(ticketData['ARTICLE'], self.stylesheet['Barcode']), Paragraph(ticketData['DESCRIPTION'],self.stylesheet['defaultHeaderStyle'])], \ [Paragraph(ticketData['ARTICLE'],self.stylesheet['defaultHeaderStyle']), Paragraph(ticketData['COL'],self.stylesheet['defaultHeaderStyle'])]] tBlock0 = Table(tableBlock, style=LargeTableStyle(), colWidths = [8*cm, 8*cm], rowHeights=[10*mm, 10*mm], repeatRows=0) tBlock0.hAlign = "LEFT" Story.append(tBlock0) And I've attached what comes out. I've got a small question about tables too, mine don't seem to be calculating the size of the cell properly when I add a paragraph, or, actually, if I think about it, it may be calculating the size fine, but it would tie in to the problem I've mentioned above. Thanks for any help, Shayan --------------070206050001000208080804 Content-Type: application/pdf; name="ticketprint.pdf" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="ticketprint.pdf" CiAgICAgIDxodG1sPgogICAgICA8aGVhZD4KICAgICAgPHRpdGxlPkZhbGtlIFRpY2tldCBN YW5hZ2VtZW50PC90aXRsZT4KICAgICAgPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBl IiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9aXNvLTg4NTktMSI+CiAgICAgIDxMSU5L IFJFTD0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii9jc3MvZGVmYXVsdC5j c3MiPgogICAgICA8TElOSyBSRUw9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVG PSIvY3NzL3BsYWlubGlua3MuY3NzIj4KICAgICAgPC9oZWFkPjxib2R5IGJnY29sb3I9IiNm ZmZmZmYiPgogICAgICA8aDE+RmFsa2UgVGlja2V0IE1hbmFnZW1lbnQ8L2gxPiVQREYtMS4z DQolk4yLniBSZXBvcnRMYWIgR2VuZXJhdGVkIFBERiBkb2N1bWVudCBodHRwOi8vd3d3LnJl cG9ydGxhYi5jb20NCiUgJ0Jhc2ljRm9udHMnOiBjbGFzcyBQREZEaWN0aW9uYXJ5IA0KMSAw IG9iag0KJSBUaGUgc3RhbmRhcmQgZm9udHMgZGljdGlvbmFyeQ0KPDwgL0YxIDIgMCBSDQog L0YyIDMgMCBSDQogL0YzKzAgOSAwIFINCiAvRjQgNCAwIFIgPj4NCmVuZG9iag0KJSAnRjEn OiBjbGFzcyBQREZUeXBlMUZvbnQgDQoyIDAgb2JqDQolIEZvbnQgSGVsdmV0aWNhDQo8PCAv QmFzZUZvbnQgL0hlbHZldGljYQ0KIC9FbmNvZGluZyAvV2luQW5zaUVuY29kaW5nDQogL05h bWUgL0YxDQogL1N1YnR5cGUgL1R5cGUxDQogL1R5cGUgL0ZvbnQgPj4NCmVuZG9iag0KJSAn RjInOiBjbGFzcyBQREZUeXBlMUZvbnQgDQozIDAgb2JqDQolIEZvbnQgVGltZXMtUm9tYW4N Cjw8IC9CYXNlRm9udCAvVGltZXMtUm9tYW4NCiAvRW5jb2RpbmcgL1dpbkFuc2lFbmNvZGlu Zw0KIC9OYW1lIC9GMg0KIC9TdWJ0eXBlIC9UeXBlMQ0KIC9UeXBlIC9Gb250ID4+DQplbmRv YmoNCiUgJ0Y0JzogY2xhc3MgUERGVHlwZTFGb250IA0KNCAwIG9iag0KJSBGb250IFRpbWVz LUJvbGQNCjw8IC9CYXNlRm9udCAvVGltZXMtQm9sZA0KIC9FbmNvZGluZyAvV2luQW5zaUVu Y29kaW5nDQogL05hbWUgL0Y0DQogL1N1YnR5cGUgL1R5cGUxDQogL1R5cGUgL0ZvbnQgPj4N CmVuZG9iag0KJSAnUGFnZTEnOiBjbGFzcyBQREZQYWdlIA0KNSAwIG9iag0KJSBQYWdlIGRp Y3Rpb25hcnkNCjw8IC9Db250ZW50cyAxMyAwIFINCiAvTWVkaWFCb3ggWyAwDQogIDANCiAg NTk1LjI3NTU5MDU1MQ0KICA4NDEuODg5NzYzNzggXQ0KIC9QYXJlbnQgMTIgMCBSDQogL1Jl c291cmNlcyA8PCAvRm9udCAxIDAgUg0KICAvUHJvY1NldCBbIC9QREYNCiAgIC9UZXh0DQog ICAvSW1hZ2VCDQogICAvSW1hZ2VDDQogICAvSW1hZ2VJIF0gPj4NCiAvUm90YXRlIDANCiAv VHJhbnMgPDwgID4+DQogL1R5cGUgL1BhZ2UgPj4NCmVuZG9iag0KJSAndG9Vbmljb2RlQ01h cDpTVUJTRVQrRmVsaXhUaXRsaW5nTVQrMCc6IGNsYXNzIFBERlN0cmVhbSANCjYgMCBvYmoN Cjw8IC9GaWx0ZXIgWyAvRmxhdGVEZWNvZGUgXQ0KIC9MZW5ndGggMjY2ID4+DQpzdHJlYW0N CnicfZHLToQwFIb3fYouNbNogVGZhLDQGRMWo0bwATrtAZtAaUpJ5O3ltOOYmDiLNt+5/Dk3 9lTtK6M9ZW9ulDV42mqjHEzj7CTQE3TakCSlSkt/tsIvB2EJW8X1MnkYKtOOpCgoe1+Dk3cL vak/HutDs3mGXn812vfadMdmw28Je3UK3Gpey6lna3sYwHjKSVlSBe1a7ijsixiAsn+Ev2nN YoGmwU5i33JUMFkhwQnTASk4L2nB85KAUX9iu6g4tfJTuJ9Mnu3KlZPIW+Q0co6cBU73yNvo 58h30X9Avo/+BPkhcoqcR85CL+eq2BXu+DKznJ1b1xEOEUbE4bSBy63saFGF7xvpKI5dZW5k c3RyZWFtDQoNCmVuZG9iag0KJSAnZm9udEZpbGU6QzpcXFdJTkRPV1NcXEZvbnRzXFxGRUxJ WFRJLlRURihTVUJTRVQrRmVsaXhUaXRsaW5nTVQrMCknOiBjbGFzcyBQREZTdHJlYW0gDQo3 IDAgb2JqDQo8PCAvRmlsdGVyIFsgL0ZsYXRlRGVjb2RlIF0NCiAvTGVuZ3RoIDM0MjQNCiAv TGVuZ3RoMSA1NTQ4ID4+DQpzdHJlYW0NCnic3ThtcBvHdW/vDp/ExwEgCVCQiANPoCiDIEhC IERKMiGCgOsykiia0QCKJgZEQARofhmETEkempQUj2hIib/aJlYc15Fs16PKnaNl0bQzbuSa 9jSR/BG7tsepM0laTd20ppN46rR1JLBvDyBDyUoz0870RxfYfV/73r739u0dFkAAQA9TwEL3 jtu8zRPm6a8i50Psu/qGEqOwFjoAyAak6/ruyglVL6/9F6T3YD+zb7R/6GLtqREAVg2gqO4f PLhvwBe9BUBdB6AU0qlE8mX+O3kAwx+hfksaGcYGxb8hPYX02vRQ7kDd/Ww90k9Q+4MjfQlN rWo10peQrhxKHBglJsU7SF9GWhhODKXGHnu6AcDI4Xo7RkfGcot3QBqgvJfKR7Op0fs2/hrl 5Tn0zw+EmyUPgALUipMKHwDDFSG2NGMmDKdUKJQMw2jRGsa/om3bsX0HBEH4LaN4GfXeUA2R TwQ0uTyBlHAdKGG1jGmQw6AVDtdTggrUyJEbWqiSRzPcsC1+dCOu4n6AQuTGGrLWDdr1MtwH KPY/1G5k7X/T4Azsg2/DcfgLaLtuqTPy+BjEZbgetsOWFVI/HC3NoC0Nd4IRP/PX+yojIfgx 0cIY7AEnzOKnEz9LrQfnYNYhghZOQB2u8gHObCX/AD2otw9eYM5AEzwCLyD2J6wWINi6MdDi 3+Brbmr0Nnjq3Tetr1tX61or1jgFR/Wa1fZVVTZrZUW5xWzijQa9rkyrUauUCo5lCNQTyRaK zlSp3Han0xnzlOhV19IS6+I/dUpgvmaS/Tql1dfRa66jq5fp7RKUSxEx1EkNz0DknySwSKRc AroKsWzDlUpK4eSAGM5IVaFkPI4anSIvSJFfeUuuyLZnyrQhMZTSeuphRluGaBliOHd0hkRu JjLCRMJtMwyo9Z56yeyWGFeY9gEpeDyOiNiJllBi+Z1kbvHCiZUiQLUlzFLEiKQMSSp5XSEj BRMSHBdm6i/kT8zxsDfu1iXFZGIPZi6BPs4A6wqne2kew7TH04LEoXF5sCNHCKeFvEjTEU7H cRQ7UeuGfGRrQtFjzgt2yYwwLJnc0i0445ZDl+1sPmzLCJTM548J0uM7oyulTjrGYjEbOpwP i2gQjYUHOjAUm9dTX4yplIBkfICuOZCgfoYHhPzxlOzrCdkHeWo4jRuT+EOz8vlwUgwnE8mO ovWQFOyVAfTujsoBYuo6YyVWaQJKOFkS74w5i8nu6omGqGNiotNe3PZlTrzEQUZ4SShQD25F A5LQJ0jQExVx6kY6pDZCvm+jXDzOGEGt7t9pSQoXLwr5z0AicXHh42s5iRJH6eI/A4pGxEg8 n4+IQiQfzyfmFqf2igIv5me6uvKj4Tiu2h1FrbnFF4/bpciJmMTH06QNc08rINITbbc7TbEl snuJBCwpLKwyORzMAn5vLQHMMvRGnQIm6svRmB3zFKV4L+JFSAsJC3cj7nEpbTRHqY3L6QmV UKeTVufxuSDsRUKa2hkt0gLstT8LQa8b9yNOJReWJBVfppKpJcmyelzEVZ6T3ycVkrp2+Wvk Ky3hdJtEKv8bcaoolyyhKGtnYkWMsbMU07rxpG+WrG7E69x53IS3RIl3S4roBfvmmMCb8AlA d+82sWvn7qgQzi9XQZFTirTqVZsHF2eoByp8teE7TgXgNDlNLhwIcj6fUsBvKQREaGNg++LH 3G7F30M5CLDpeYWi4iGNxkjmFv85WKkxB8iDYLE/bORsNsWEmZhJ9ZTOu+Dzeb1Xm73QvtC+ 4Da3IsPb1KhY19JiDqxTKsUa8G8AXzOYeGCb8UkNYo2yotxMtNrfXDmr427+6fhfFz4n9kuX ydbClzwHZgpXzk48+kn56k3zpO15bnycmC9dImLh8cJ/FGYLHBOYyc6S/ufGXyw8Sf3FdwUX QH9t+Da/Pdhsr6o6wpvKed5ks1k6qh4iiCk1p9Vmu4mr4k0GxnoKk6Bi1OZTzKRdbTDwXp/X t/nqZa+JhrFgMreaWqHd1351M0aCfJ/3mKLBzU3w802NxGkqr9xEKpx+X/PNxI859Jl8zS0B n8JpWscFCp+KW+2FqD2wnr/6DeatjrMeB2O+sp1RcoyhML0zYDBY2zaQu9nXrxwzOLzMswq6 I/sw3x3ovxVEaISfBmtdrkZdWVmtzVYDVmuVTYevLL241gWksVEviodJYzkhjW66IY16Y4CI jXpw2XRqlftNs2XNmyqOUpSrFlbZjKbAqklt0GwOaLUNU0Y8H88hbhRQ+xzKEF44b64ICPdw iAU1Oj7AGbm6yQqkzml1ARkaDEXI84EKr9vtptvtXnC7cZARs7VV3nmE7mOGBuwT88cM8/Pz x9T8vAFRfl5dGjGDDYx/Q4uvGV/IikocOLFmLTJcWBa1cllUVqqwZhD6aKnUks8f2NP90Rsv vVH4wet/VXj//bcLv/k+Gb8kTQ6e2fpJlXn4hQ8fGX9rmuVit0zvnH7viaM/e+DuV46f//EP vjv9yvf2zx06fedgqO/Pv1vW/MyR4784dSR9jtY4AQ8zS97B3w4sGM+THwLDABYBeBeaGi1+ Z4WHPMXM9vZibXUv/gLPwk/wt6INPMEy/Ztgsbyp5PhJLU1XmUaPaV1VOcmyVSYflg5Nh5wK rP4aWu4Yp7mCh3XN+NuDEWsYE29m2n9S+IS0LNz9sxOF957JvfLOi0df/NBKDpCtZJi8/lDh +78snCmsbSEOUkfGycXCB4V3C48WPEW/tyx+TKzwKpSBcZZ9TWNRSug00PUCpaTiaavdcrO3 EftNoai7I+ipDwZlXfyFRX6OdWYBb9BmMhHLaWRw8tFQKlno0GjYST09upcxDsDyb/d5r5pa 8SRbXD4sex9WfXNLi99EN0r1x0TNe3oKffVtdqNgb1IEnvj8bPd6g0G/uZ3b5t5QVfTXjmdz k+IDhHuCPIA1aLYGrCfZBxmz/rSOptBmNAZ0Os3DPEeI3aYzB+yn8PrxtkVHy7tMbw7oTumt egvLeq2YYDd1b8FN3aOld7l94aq7GR10qZx+/AEqV5AKHztyJhiicuLR5DaFrgTIoyRw7msH 3m9bt2/hz179138v/PwMk97d4f3oIxeJkF++e+5vHh8uf+q+hadOFu4tfPp4TQf6HsFzySne h3rIBF3O04JQdqm6mjNVVNgeNlnqST1Z/yDHabW1ggC1EyqVfcKAAc1iPAZC6ucW/xFPkyVQ fwoMUO71Fd2WT8wCPlbwS0NADg3EVHxk0uoLlJxXqiro6cAnZe06f2XpLGDa/S2+ltJRUd3f cueTu9/93kPf/MuXCm/97X3vDMQuHvnWexefbdqiKfvV09+6s0+6nXvitc71T40OP/klrnLh OxcL/5nc4791/OKTj1zS1qm2zh4+evLgnxbvRtj/TvPhPbcbN38GZcV7x9lvsy9Q+MwjO3oL 9xfMGq9qCIq3pWJDqBoq4N1I04ryxzTeFbesYtOqkcU9Ddu5XVCFcB8D4EHYTXbBFqYcOpFv 5w4DvS1VwjC8QaZxqy7jxW4zc5Lli2uAFr6Kj+yteD+jVDm04nhBUY3nk9I8vLa87kuwdNMj eDN+qYQzqP3DEs7iW+1HJZzDOb8u4Qo844USrgQD3k6KuAruIDbUIhzeCckhcrSEE1jFXC3h DBhYawlnIci6SjgHq9hUCVeAjZ0s4XjvZL9ZwlXwHnuuM9OfyWUOpZJCMpFLCH0jowezmf50 TuhNp4RtI8MjuYOjKSE0kh0dySZymZFhoam1tcmDg79B2Do4KMizx4RsaiyVvSuVbBAiqcHM gTNCbyY3mBnuFzJjQkLIZRPJ1FAie4cwsu/3Wx5PZ/rSwlDioLA3hQb7M2O5VBY9ywwLfals LoFwYH82M5bM9NH5Yw3yUksr9aT69w8mssuWPcI1YqEkv4a5K5Udk2Nq8DfKghJ/W+//YRT4 eMxAP/Yc9kOQgiQWShISSCcQ64MRGIWDkJVnpZErQC/CFMJtKBvGnkP5qMwJIZVFnI4J2SKd IeC1tRU/TeApYX5oQO5WGMSPsML2mEylEKYQ3iV7Q2dGEBvEWQecNfL61FtKD6OegJDqUW9z 8rpJnD2EMAt3IG8Er87/E5/HUSOD8acRp9YOItwra1AP++VVc7KfxZxlZK0+mUNzV6QHYL8c 3xjOodaW7I9hXMtRfSGmHnmF/UjTKL7os2dlTm6QkWv1f//MXbK3Yyv2qQH3pnGFxrXztyH9 /3Mvlv5LW0zT/+a+2IJi8PkyQ8uOOeKYI+2zwfMMnOfPT86yP5pocbz6cNLx4JEuB32xDxzx t7VMTjgd90xUO96eaHYcOax2HJ5IOuo9xpvchrr1xtp1hrUuY41oEJzGaofBvnqN3la1Sl9R adWbLeV6I2/S6fQGnUZbplOq1DqWU+iAMDr7JrXD2KZ2sK1qB2xUO7p9RDJ3QVdvh2QhCG/r kHzurjk19EjN7i5J3f2V6Awh34ghV2Km5whes7npOQaBObT7K9E5UkXF98r/J8xwZI5M3fv1 r9uXsVjMvUZKdt0WlUbXxKRmijywJgbuG7YZDV0y2dOxzBnLjeXcmLf/AlWygABlbmRzdHJl YW0NCg0KZW5kb2JqDQolICdmb250RGVzY3JpcHRvcjpTVUJTRVQrRmVsaXhUaXRsaW5nTVQr MCc6IGNsYXNzIFBERkRpY3Rpb25hcnkgDQo4IDAgb2JqDQo8PCAvQXNjZW50IDcxOQ0KIC9D YXBIZWlnaHQgNzE5DQogL0Rlc2NlbnQgMA0KIC9GbGFncyA0DQogL0ZvbnRCQm94IFsgLTE4 MQ0KICAtMjQyDQogIDExNDcNCiAgOTI4IF0NCiAvRm9udEZpbGUyIDcgMCBSDQogL0ZvbnRO YW1lIC9TVUJTRVQrRmVsaXhUaXRsaW5nTVQrMA0KIC9JdGFsaWNBbmdsZSAwLjANCiAvU3Rl bVYgODcNCiAvVHlwZSAvRm9udERlc2NyaXB0b3IgPj4NCmVuZG9iag0KJSAnRjMrMCc6IGNs YXNzIFBERlRydWVUeXBlRm9udCANCjkgMCBvYmoNCiUgRm9udCBCYXJjb2RlIHN1YnNldCAw DQo8PCAvQmFzZUZvbnQgL1NVQlNFVCtGZWxpeFRpdGxpbmdNVCswDQogL0ZpcnN0Q2hhciAw DQogL0ZvbnREZXNjcmlwdG9yIDggMCBSDQogL0xhc3RDaGFyIDgNCiAvTmFtZSAvRjMrMA0K IC9TdWJ0eXBlIC9UcnVlVHlwZQ0KIC9Ub1VuaWNvZGUgNiAwIFINCiAvVHlwZSAvRm9udA0K IC9XaWR0aHMgWyA1ODINCiAgNTQxDQogIDU4Mg0KICAyNTANCiAgNTgyDQogIDE2Ng0KICAy NTkNCiAgNTQxDQogIDU2MiBdID4+DQplbmRvYmoNCiUgJ1IxMCc6IGNsYXNzIFBERkNhdGFs b2cgDQoxMCAwIG9iag0KJSBEb2N1bWVudCBSb290DQo8PCAvT3V0bGluZXMgMTQgMCBSDQog L1BhZ2VNb2RlIC9Vc2VOb25lDQogL1BhZ2VzIDEyIDAgUg0KIC9UeXBlIC9DYXRhbG9nID4+ DQplbmRvYmoNCiUgJ1IxMSc6IGNsYXNzIFBERkluZm8gDQoxMSAwIG9iag0KPDwgL0F1dGhv ciAoYW5vbnltb3VzKQ0KIC9DcmVhdGlvbkRhdGUgKDIwMDMxMTAzMTQwMzUzKQ0KIC9Qcm9k dWNlciAoUmVwb3J0TGFiIGh0dHA6Ly93d3cucmVwb3J0bGFiLmNvbSkNCiAvU3ViamVjdCAo dW5zcGVjaWZpZWQpDQogL1RpdGxlICh1bnRpdGxlZCkgPj4NCmVuZG9iag0KJSAnUjEyJzog Y2xhc3MgUERGUGFnZXMgDQoxMiAwIG9iag0KJSBwYWdlIHRyZWUNCjw8IC9Db3VudCAyDQog L0tpZHMgWyA1IDAgUg0KICAxNSAwIFIgXQ0KIC9UeXBlIC9QYWdlcyA+Pg0KZW5kb2JqDQol ICdSMTMnOiBjbGFzcyBQREZTdHJlYW0gDQoxMyAwIG9iag0KJSBwYWdlIHN0cmVhbQ0KPDwg L0ZpbHRlciBbIC9BU0NJSTg1RGVjb2RlDQogIC9GbGF0ZURlY29kZSBdDQogL0xlbmd0aCA1 NDIgPj4NCnN0cmVhbQ0KR2IhPEw5MkVHWiUiUmYzcUIoK0dUazpTJG0jYiFOIk00WXJcOFhg TTZVUFonJSNNX3BnODQmRlE+JSFLDQpmI2ozOmZNO0B0ZUldNj9aMkIkPDZmMTFKTGsjVkck N007RjJoRlxoLTZIclJOMGIoRVE0Z1lgMHFENycNCiFYb1o+PmlgY3NdXidnUDhYIj02PDo2 cklENypcdFZvYltpO1MjSV4jSDdpKTtAJS51YmpZJkojYCkqag0KNT9iUFAydE9NIiJSaldn cFdIP3UkKXNhVjomaW9lIWYvWmgjLjlWUiw8IWNqLE9UXlZySHE+J1pDcUM8DQpOQ0AyJy9l Mlo3ViRQPFtrMVppOFs2JnR0OTY8JUdyLGRYXWxNR3MoQCFZaz5bOCUnb0tNbyVDZWdfZiMN CkdCMDkrQjMmMi8paVxmSD9iU01vMSVtTystVm4oPUpqSUo5bjAzS2pLc19FITY4cVtbSCEn KVVcMlNBPg0KT0VJMSYhNT5MS2cnOUQ/V2xZKjpkKFEuLiFMK2s5N1ZsUW8pKk8kblA4MVVM QFBNKidALzlLJz5YV1xpDQowYUZKM1FhQDBcK0w5Jis5YktmQj5NTzc7YkJWO2ZqO0E3Vmxa KTdfczMlbm0sO28kNlNNO14yIlkmWk8NCmowYUxKcVAvdGJEKjtbKiZOLiQiYGldNkxfam9z aDBBNi44Tz0hMldXLEMmfj5lbmRzdHJlYW0NCg0KZW5kb2JqDQolICdSMTQnOiBjbGFzcyBQ REZPdXRsaW5lcyANCjE0IDAgb2JqDQo8PCAvQ291bnQgMA0KIC9UeXBlIC9PdXRsaW5lcyA+ Pg0KZW5kb2JqDQolICdQYWdlMic6IGNsYXNzIFBERlBhZ2UgDQoxNSAwIG9iag0KJSBQYWdl IGRpY3Rpb25hcnkNCjw8IC9Db250ZW50cyAxNiAwIFINCiAvTWVkaWFCb3ggWyAwDQogIDAN CiAgNTk1LjI3NTU5MDU1MQ0KICA4NDEuODg5NzYzNzggXQ0KIC9QYXJlbnQgMTIgMCBSDQog L1Jlc291cmNlcyA8PCAvRm9udCAxIDAgUg0KICAvUHJvY1NldCBbIC9QREYNCiAgIC9UZXh0 DQogICAvSW1hZ2VCDQogICAvSW1hZ2VDDQogICAvSW1hZ2VJIF0gPj4NCiAvUm90YXRlIDAN CiAvVHJhbnMgPDwgID4+DQogL1R5cGUgL1BhZ2UgPj4NCmVuZG9iag0KJSAnUjE2JzogY2xh c3MgUERGU3RyZWFtIA0KMTYgMCBvYmoNCiUgcGFnZSBzdHJlYW0NCjw8IC9GaWx0ZXIgWyAv QVNDSUk4NURlY29kZQ0KICAvRmxhdGVEZWNvZGUgXQ0KIC9MZW5ndGggNjAgPj4NCnN0cmVh bQ0KR2FwUWgwRT1GLDBVXEgzaSJWb1ltcS9NK0JWWjMmVkk0KTNCOyxzc1VZbSctYkdFInQi VFopdCNXX34+ZW5kc3RyZWFtDQoNCmVuZG9iag0KeHJlZg0KMCAxNw0KMDAwMDAwMDAwMCA2 NTUzNSBmDQowMDAwMDAwMTEzIDAwMDAwIG4NCjAwMDAwMDAyNDcgMDAwMDAgbg0KMDAwMDAw MDQxMiAwMDAwMCBuDQowMDAwMDAwNTgxIDAwMDAwIG4NCjAwMDAwMDA3NDYgMDAwMDAgbg0K MDAwMDAwMTA4MCAwMDAwMCBuDQowMDAwMDAxNTE5IDAwMDAwIG4NCjAwMDAwMDUxMTAgMDAw MDAgbg0KMDAwMDAwNTM3NiAwMDAwMCBuDQowMDAwMDA1NjgzIDAwMDAwIG4NCjAwMDAwMDU4 MjEgMDAwMDAgbg0KMDAwMDAwNjAxOSAwMDAwMCBuDQowMDAwMDA2MTM2IDAwMDAwIG4NCjAw MDAwMDY4MjUgMDAwMDAgbg0KMDAwMDAwNjkwNCAwMDAwMCBuDQowMDAwMDA3MjA1IDAwMDAw IG4NCnRyYWlsZXINCjw8IC9JRCANCiAgJSBSZXBvcnRMYWIgZ2VuZXJhdGVkIFBERiBkb2N1 bWVudCAtLSBkaWdlc3QgKGh0dHA6Ly93d3cucmVwb3J0bGFiLmNvbSkgDQogIFsoY1wyNTNT ZVwzMTRcMzU1XDMxNlwzNDJcMDMyXDM1M1wzNDRcMjY1cFwwMDJuXDIxMykgKGNcMjUzU2Vc MzE0XDM1NVwzMTZcMzQyXDAzMlwzNTNcMzQ0XDI2NXBcMDAyblwyMTMpXSANCiANCiAvSW5m byAxMSAwIFINCiAvUm9vdCAxMCAwIFINCiAvU2l6ZSAxNyA+Pg0Kc3RhcnR4cmVmDQo3Mzgy DQolJUVPRg0KPC9ib2R5PgogICAgICA8L2h0bWw+CiAgICAgIA== --------------070206050001000208080804-- From reportlab-users@reportlab.com Mon Nov 3 14:55:47 2003 From: reportlab-users@reportlab.com (Marc Stober) Date: Mon, 3 Nov 2003 09:55:47 -0500 Subject: [reportlab-users] RE: Paragraph problem and table trouble Message-ID: <2546C8F5D3D2D411857F00508BDCA4E80125ECA7@dalbar_mail.dalbar.com> Hi Shayan, Maybe you need to specify paragraph leading? - Marc > From: Shayan Raghavjee > Subject: [reportlab-users] Paragraph problem and table trouble > > Hi again, > > I've got what I thought was a problem with the vertical > alignment in the > table, but it seems that it's got more to do with the paragraph. > > I've got a small paragraph, usually 1 word, with point size > about 24. It > looks fine on it's own, but when I put it in a table with the cells > aligned to the bottom, the text constantly is too low, and > 'leaks' into > the cell below, despite the fact that there's plenty of place on the > top. [...] From reportlab-users@reportlab.com Mon Nov 3 23:24:17 2003 From: reportlab-users@reportlab.com (sarah el-lawindy) Date: Mon, 3 Nov 2003 15:24:17 -0800 (PST) Subject: [reportlab-users] it worked :) In-Reply-To: <20031102082211.GB15507@mail.librelogiciel.com> Message-ID: <20031103232417.62494.qmail@web60005.mail.yahoo.com> --0-781349761-1067901857=:62072 Content-Type: text/plain; charset=us-ascii dear Jerome Alet i am really thankful for ur help, actually, u r the only one who replied back. can i ask u another thing ? i am asking whether u got the classes of pdfbase subpackage or not? another question, have u any knowlege of using eastern fonts and how to make reportlab deal with it? i know that i ask 2 much, and i hope that u don't get bored from all my question. thanks in advance sam ellawindy --------------------------------- Do you Yahoo!? Exclusive Video Premiere - Britney Spears --0-781349761-1067901857=:62072 Content-Type: text/html; charset=us-ascii

dear Jerome Alet
i am really thankful for ur help, actually, u r the only one who replied back.
can i ask u another thing ?
i am asking whether u got the classes of pdfbase subpackage or not? another  question, have u any knowlege of using eastern fonts and how to make reportlab deal with it?
i know that i ask 2 much, and i hope that u don't get bored from all my question.
thanks in advance
sam ellawindy

 


 


Do you Yahoo!?
Exclusive Video Premiere - Britney Spears --0-781349761-1067901857=:62072-- From reportlab-users@reportlab.com Mon Nov 3 23:30:16 2003 From: reportlab-users@reportlab.com (Jerome Alet) Date: Tue, 4 Nov 2003 00:30:16 +0100 Subject: [reportlab-users] it worked :) In-Reply-To: <20031103232417.62494.qmail@web60005.mail.yahoo.com> References: <20031102082211.GB15507@mail.librelogiciel.com> <20031103232417.62494.qmail@web60005.mail.yahoo.com> Message-ID: <20031103233016.GA28300@mail.librelogiciel.com> On Mon, Nov 03, 2003 at 03:24:17PM -0800, sarah el-lawindy wrote: > > dear Jerome Alet > i am really thankful for ur help, actually, u r the only one who replied back. You're welcome. > i am asking whether u got the classes of pdfbase subpackage or > not? I don't understand what you want to know. Please could you explain ? > another question, have u any knowlege of using eastern fonts > and how to make reportlab deal with it? Sorry but I don't know. I only use "western" fonts. bye Jerome "I should be in my bed" Alet -- "A non-free program is a predatory social system that keeps people in a state of domination and division, and uses the spoils to dominate more." - RMS From reportlab-users@reportlab.com Mon Nov 3 23:40:17 2003 From: reportlab-users@reportlab.com (sarah el-lawindy) Date: Mon, 3 Nov 2003 15:40:17 -0800 (PST) Subject: [reportlab-users] it worked :) In-Reply-To: <20031103233016.GA28300@mail.librelogiciel.com> Message-ID: <20031103234017.92058.qmail@web60004.mail.yahoo.com> --0-1156763375-1067902817=:90838 Content-Type: text/plain; charset=us-ascii Jerome Alet wrote: > i am asking whether u got the classes of pdfbase subpackage or > not? I don't understand what you want to know. Please could you explain ? what i meant is that pdfbase is a subpackage within the reportlab package, right, this subpackage contain some classes, right, i am asking do u know these classes, they r not defined in the user guide of reportlab, that is all. bye Jerome "I should be in my bed" Alet me 2 --------------------------------- Do you Yahoo!? Exclusive Video Premiere - Britney Spears --0-1156763375-1067902817=:90838 Content-Type: text/html; charset=us-ascii


Jerome Alet <alet@librelogiciel.com> wrote:


> i am asking whether u got the classes of pdfbase subpackage or
> not?

I don't understand what you want to know. Please could you
explain ?

what i meant is that pdfbase is a subpackage within the reportlab package, right, this subpackage contain some classes, right, i am asking do u know these classes, they r not defined in the user guide of reportlab, that is all.


bye

Jerome "I should be in my bed" Alet

me 2


Do you Yahoo!?
Exclusive Video Premiere - Britney Spears --0-1156763375-1067902817=:90838-- From reportlab-users@reportlab.com Tue Nov 4 02:06:54 2003 From: reportlab-users@reportlab.com (sarah el-lawindy) Date: Mon, 3 Nov 2003 18:06:54 -0800 (PST) Subject: [reportlab-users] anyone worked before with bidirectional languages In-Reply-To: <20031103233016.GA28300@mail.librelogiciel.com> Message-ID: <20031104020654.33284.qmail@web60004.mail.yahoo.com> --0-525680827-1067911614=:31361 Content-Type: text/plain; charset=us-ascii hi everyone did anyone worked before with bidirectional language? more specifically, did anyone work with "FriBiDi" library? if so, could anyone send it to me ... sam ellawindy --------------------------------- Do you Yahoo!? Exclusive Video Premiere - Britney Spears --0-525680827-1067911614=:31361 Content-Type: text/html; charset=us-ascii

hi everyone

did anyone worked before with bidirectional language? more specifically, did anyone work with  "FriBiDi" library? if so, could anyone send it to me ...

sam ellawindy 


Do you Yahoo!?
Exclusive Video Premiere - Britney Spears --0-525680827-1067911614=:31361-- From reportlab-users@reportlab.com Tue Nov 4 19:36:56 2003 From: reportlab-users@reportlab.com (Dave Rogers) Date: Tue, 04 Nov 2003 14:36:56 -0500 Subject: [reportlab-users] Printing PDF's References: <3F8BF261.6070102@sjsoft.com> Message-ID: <3FA7FFD8.3060706@StockAlerts.com> Hi, I use reportlab to generate PDF files. For some time, to print files in the background (with a Windows service), I've been using the awful DDE interface to Acrobat which works for awhile and then fails with no useful error message. I'm trying to switch to Ghostscript to print my files. However, even though I've been through many many Ghostscript options, my documents are getting cut off on the top or the bottom by about 3/8". I use -sDEVICE=mswinpr2 Here's other options I've tried: -dFIXEDMEDIA (cuts off top) -dFIXEDRESOLUTION (cuts off bottom) -dDEVICEHEIGHTPOINTS= XX (I've tried numbers higher and lower than the std letter height and it always cuts off the bottom) I use a Brother MFC 6800 and I cannot find any option to set or reduce my margins in the printer setup. Is there a reportlab setting I can change to fix this problem? If someone knows of a better place I should post this to, please let me know. Thanks, -- Dave Rogers DaveRogers@StockAlerts.com http://StockAlerts.com From reportlab-users@reportlab.com Wed Nov 5 12:45:00 2003 From: reportlab-users@reportlab.com (David Hughes) Date: Wed, 5 Nov 2003 12:45 +0000 (GMT Standard Time) Subject: [reportlab-users] Printing PDF's In-Reply-To: <3FA7FFD8.3060706@StockAlerts.com> Message-ID: > Hi, > > I use reportlab to generate PDF files. > > For some time, to print files in the background (with a Windows > service), I've been using the awful DDE interface to Acrobat which > works for awhile and then fails with no useful error message. > > I'm trying to switch to Ghostscript to print my files. However, even > though I've been through many many Ghostscript options, my documents > are getting cut off on the top or the bottom by about 3/8". > > I use -sDEVICE=mswinpr2 > > Here's other options I've tried: > > -dFIXEDMEDIA (cuts off top) > -dFIXEDRESOLUTION (cuts off bottom) > -dDEVICEHEIGHTPOINTS= XX (I've tried numbers higher and lower than the > std letter height and it always cuts off the bottom) > > I use a Brother MFC 6800 and I cannot find any option to set or reduce > my margins in the printer setup. > > Is there a reportlab setting I can change to fix this problem? > > If someone knows of a better place I should post this to, please let me > know. > > Thanks, > > -- > Dave Rogers > DaveRogers@StockAlerts.com > http://StockAlerts.com I don't have a solution, I'm afraid, but and I'm experiencing the same problem and it is definitely with GhostScript - the same reportlab pdf file on the same (HP Officejet G95) printer is OK using Acrobat reader, but loses its footers as you have described. It's something that I must try to resolve quite soon, and trawling through the various mailing lists - see http://www.ghostscript.com/mailman/listinfo/ has been on my list for a while. I will report here if I come up with anything and it would be very helpful if you could do the same. Regards, David Hughes Forestfield Software Ltd www.forestfield.co.uk From reportlab-users@reportlab.com Wed Nov 5 12:55:29 2003 From: reportlab-users@reportlab.com (Felix McAllister) Date: Wed, 05 Nov 2003 12:55:29 +0000 Subject: [reportlab-users] Printing PDF's Message-ID: I don't know if this is of any help, but we've had similar problems printing using Ghostscript. However, we resolved most of these by making sure that Ghostscript is printing to a postscript printer and not a PCL printer. (We're using HP LJ 4100). i.e. using the PostScript printer driver for the HP4100 worked. Felix. >From: dfh@forestfield.co.uk (David Hughes) >Reply-To: reportlab-users@reportlab.com >To: reportlab-users@reportlab.com >Subject: Re: [reportlab-users] Printing PDF's >Date: Wed, 5 Nov 2003 12:45 +0000 (GMT Standard Time) > > > Hi, > > > > I use reportlab to generate PDF files. > > > > For some time, to print files in the background (with a Windows > > service), I've been using the awful DDE interface to Acrobat which > > works for awhile and then fails with no useful error message. > > > > I'm trying to switch to Ghostscript to print my files. However, even > > though I've been through many many Ghostscript options, my documents > > are getting cut off on the top or the bottom by about 3/8". > > > > I use -sDEVICE=mswinpr2 > > > > Here's other options I've tried: > > > > -dFIXEDMEDIA (cuts off top) > > -dFIXEDRESOLUTION (cuts off bottom) > > -dDEVICEHEIGHTPOINTS= XX (I've tried numbers higher and lower than the > > std letter height and it always cuts off the bottom) > > > > I use a Brother MFC 6800 and I cannot find any option to set or reduce > > my margins in the printer setup. > > > > Is there a reportlab setting I can change to fix this problem? > > > > If someone knows of a better place I should post this to, please let me > > know. > > > > Thanks, > > > > -- > > Dave Rogers > > DaveRogers@StockAlerts.com > > http://StockAlerts.com > >I don't have a solution, I'm afraid, but and I'm experiencing the same >problem and it is definitely with GhostScript - the same reportlab pdf >file on the same (HP Officejet G95) printer is OK using Acrobat reader, >but loses its footers as you have described. It's something that I must >try to resolve quite soon, and trawling through the various mailing lists > - see http://www.ghostscript.com/mailman/listinfo/ >has been on my list for a while. I will report here if I come up with >anything and it would be very helpful if you could do the same. > >Regards, > >David Hughes >Forestfield Software Ltd >www.forestfield.co.uk > >_______________________________________________ >reportlab-users mailing list >reportlab-users@reportlab.com >http://two.pairlist.net/mailman/listinfo/reportlab-users _________________________________________________________________ Help STOP SPAM with the new MSN 8 and get 2 months FREE* http://join.msn.com/?page=features/junkmail From reportlab-users@reportlab.com Wed Nov 5 21:41:09 2003 From: reportlab-users@reportlab.com (sarah el-lawindy) Date: Wed, 5 Nov 2003 13:41:09 -0800 (PST) Subject: [reportlab-users] any help plz .... In-Reply-To: <20031103233016.GA28300@mail.librelogiciel.com> Message-ID: <20031105214109.1510.qmail@web60001.mail.yahoo.com> --0-890125540-1068068469=:94914 Content-Type: text/plain; charset=us-ascii dear Jerome Alet hi , i know u got very bored from my very very primitaive questions, but i really need any help. ok, do u know anything about unicode thing? i tried to write a unicode string, but the compiler gave me a error, "not a valid UTF-8 string" an then i tried another one (i got it from the mailing list archive), but gave another error " something (i can't remeber) then ordinal 128" . so do u know the solution for this ? i hope that u reply back ... sam ellawindy --------------------------------- Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard --0-890125540-1068068469=:94914 Content-Type: text/html; charset=us-ascii

dear Jerome Alet
  hi , i know  u got very bored from my very very primitaive questions, but i really need any help.
  ok, do u know  anything about unicode thing? i tried to write a unicode string, but the compiler gave me a error, "not a valid UTF-8 string" an then i tried another one (i got it from the mailing list archive), but gave another error " something (i can't remeber) then ordinal 128" . so do u know the solution for this ?
  i hope that u reply back ...
sam ellawindy


Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard --0-890125540-1068068469=:94914-- From reportlab-users@reportlab.com Wed Nov 5 21:49:14 2003 From: reportlab-users@reportlab.com (Jerome Alet) Date: Wed, 5 Nov 2003 22:49:14 +0100 Subject: [reportlab-users] any help plz .... In-Reply-To: <20031105214109.1510.qmail@web60001.mail.yahoo.com> References: <20031103233016.GA28300@mail.librelogiciel.com> <20031105214109.1510.qmail@web60001.mail.yahoo.com> Message-ID: <20031105214914.GD13937@mail.librelogiciel.com> On Wed, Nov 05, 2003 at 01:41:09PM -0800, sarah el-lawindy wrote: > > dear Jerome Alet Well, I hope I'm not alone on this list ;-) > hi , i know u got very bored from my very very primitaive questions, but i really need any help. > ok, do u know anything about unicode thing? i tried to write a unicode string, but the compiler gave me a error, "not a valid UTF-8 string" an then i tried another one (i got it from the mailing list archive), but gave another error " something (i can't remeber) then ordinal 128" . so do u know the solution for this ? > i hope that u reply back ... This is a string encoding error. You should read the Python documentation about unicode, because I'm far from being a specialist on this subject. All I know is that you have to convert your strings to or from unicode. Hoping this helps anyway... bye Jerome Alet -- "A non-free program is a predatory social system that keeps people in a state of domination and division, and uses the spoils to dominate more." - RMS From reportlab-users@reportlab.com Wed Nov 5 22:15:11 2003 From: reportlab-users@reportlab.com (Marius Gedminas) Date: Thu, 6 Nov 2003 00:15:11 +0200 Subject: [reportlab-users] any help plz .... In-Reply-To: <20031105214109.1510.qmail@web60001.mail.yahoo.com> References: <20031103233016.GA28300@mail.librelogiciel.com> <20031105214109.1510.qmail@web60001.mail.yahoo.com> Message-ID: <20031105221511.GE32092@gintaras> --KlAEzMkarCnErv5Q Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Nov 05, 2003 at 01:41:09PM -0800, sarah el-lawindy wrote: > dear Jerome Alet > hi , i know u got very bored from my very very primitaive > questions, but i really need any help. > ok, do u know anything about unicode thing? i tried to write a > unicode string, but the compiler gave me a error, "not a valid UTF-8 > string" an then i tried another one (i got it from the mailing list > archive), but gave another error " something (i can't remeber) then > ordinal 128" . so do u know the solution for this ? If you showed your code, it would be easier to see were the problem is. This should work: from reportlab.pdfbase import pdfmetrics from reportlab.pdfbase.ttfonts import TTFont # Change this to where Arial.ttf lives fontdir =3D '/usr/share/fonts/truetype/' pdfmetrics.registerFont(TTFont('MyArial', fontdir + 'Arial.ttf')) # If I try to use just 'Arial', I get this error from reportlab # 1.18debian-1.1: # ValueError: _tt2ps_map[('arial', 1, 0)]=3D=3DArial-Bold already, not Ar= ial from reportlab.pdfgen.canvas import Canvas canvas =3D Canvas('foo.pdf') canvas.setFont('MyArial', 12) canvas.drawString(100, 700, u"Test: \u010A\u010B".encode("UTF-8")) canvas.save() Marius Gedminas --=20 I spent a lot of time in the Java world. I'm so glad I'm on Planet Python now :-) -- Steve Alexander --KlAEzMkarCnErv5Q Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.3 (GNU/Linux) iD8DBQE/qXZvkVdEXeem148RAtEnAJ9mOvQYjXb7ppuEmM/mxlTM4OoBxwCeN4Hb 8oAuyDj1vfTupy0kkUmaYQ4= =Ri1w -----END PGP SIGNATURE----- --KlAEzMkarCnErv5Q-- From reportlab-users@reportlab.com Wed Nov 5 22:17:17 2003 From: reportlab-users@reportlab.com (Robin Becker) Date: Wed, 5 Nov 2003 22:17:17 +0000 Subject: [reportlab-users] any help plz .... In-Reply-To: <20031105214109.1510.qmail@web60001.mail.yahoo.com> References: <20031103233016.GA28300@mail.librelogiciel.com> <20031105214109.1510.qmail@web60001.mail.yahoo.com> Message-ID: In article <20031105214109.1510.qmail@web60001.mail.yahoo.com>, sarah el-lawindy writes > > dear Jerome Alet >   hi , i know  u got very bored from my very very primitaive > questions, but i really need any help. >   ok, do u know  anything about unicode thing? i tried to write a > unicode string, but the compiler gave me a error, "not a valid > UTF-8 string" an then i tried another one (i got it from the > mailing list archive), but gave another error " something (i can't > remeber) then ordinal 128" . so do u know the solution for this ? >   i hope that u reply back ... > sam ellawindy > > Do you Yahoo!? > Protect your identity with Yahoo! Mail AddressGuard There is a unicode convert function in test/test_pdfbase_ttfonts.py. The current ttfonts.py only understands utf8. -- Robin Becker From reportlab-users@reportlab.com Thu Nov 6 14:17:41 2003 From: reportlab-users@reportlab.com (Marc Stober) Date: Thu, 6 Nov 2003 09:17:41 -0500 Subject: [reportlab-users] RE: any help plz .... (sarah el-lawindy) Message-ID: <2546C8F5D3D2D411857F00508BDCA4E80125F23A@dalbar_mail.dalbar.com> You can easily convert your Unicode string to UTF as such: If this is your string: st = u'hello' Use this when you call the ReportLab functions: st.encode('utf-8') For example: story.add(Paragraph(st.encode('utf-8'), style)) # do this Instead of: story.add(Paragraph(st, style)) # don't do this Did you ever get a copy of a Right-To-Left function for ReportLab? Do you know I could download it? I don't really need it for my work, but I did Hebrew typesetting once at another job (by typing backward!) so I'm just curious to see it. - Marc From reportlab-users@reportlab.com Thu Nov 6 17:28:01 2003 From: reportlab-users@reportlab.com (Tim Roberts) Date: Thu, 06 Nov 2003 09:28:01 -0800 Subject: [reportlab-users] Printing PDF's In-Reply-To: <20031106070918.086EA24F05@two.pairlist.net> Message-ID: <200311061728.hA6HS1H14266@probo.probo.com> On Wed, 05 Nov 2003 12:55:29 +0000, "Felix McAllister" wrote: > >I don't know if this is of any help, but we've had similar problems printing >using Ghostscript. However, we resolved most of these by making sure that >Ghostscript is printing to a postscript printer and not a PCL printer. >(We're using HP LJ 4100). i.e. using the PostScript printer driver for the >HP4100 worked. Here's one thing to check. GhostScript comes from Europe, and defaults to A4 paper. If you're in the United States, you are almost certainly using 8.5" x 11" paper, which is shorter and fatter than A4. Printing a page formatted for A4 onto 8.5x11 paper will result in truncated footers. -- - Tim Roberts, timr@probo.com Providenza & Boekelheide, Inc. From reportlab-users@reportlab.com Fri Nov 7 06:08:03 2003 From: reportlab-users@reportlab.com (Dave Rogers) Date: Fri, 07 Nov 2003 01:08:03 -0500 Subject: [reportlab-users] Printing PDF's References: <200311061728.hA6HS1H14266@probo.probo.com> Message-ID: <3FAB36C3.8090104@StockAlerts.com> --------------030803030202060008020209 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Tim, Tim Roberts wrote: >On Wed, 05 Nov 2003 12:55:29 +0000, "Felix McAllister" > wrote: > > >>I don't know if this is of any help, but we've had similar problems printing >>using Ghostscript. However, we resolved most of these by making sure that >>Ghostscript is printing to a postscript printer and not a PCL printer. >>(We're using HP LJ 4100). i.e. using the PostScript printer driver for the >>HP4100 worked. >> >> > >Here's one thing to check. > >GhostScript comes from Europe, and defaults to A4 paper. If you're in the >United States, you are almost certainly using 8.5" x 11" paper, which is >shorter and fatter than A4. Printing a page formatted for A4 onto 8.5x11 >paper will result in truncated footers. > You had me excited for a minute but as I was going through my GhostScript 7.04 docs, I found this: Ghostscript is distributed configured to use U.S. letter paper as its default page size. There are two ways to select other paper sizes from the command line: ... I may try to tell it to use letter anyway, but it doesn't look good. >-- >- Tim Roberts, timr@probo.com > Providenza & Boekelheide, Inc. > > >_______________________________________________ >reportlab-users mailing list >reportlab-users@reportlab.com >http://two.pairlist.net/mailman/listinfo/reportlab-users > > > -- Dave Rogers DaveRogers@StockAlerts.com http://StockAlerts.com --------------030803030202060008020209 Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit Tim,

Tim Roberts wrote:
On Wed, 05 Nov 2003 12:55:29 +0000, "Felix McAllister"
<felix_mcallister@hotmail.com> wrote:
  
I don't know if this is of any help, but we've had similar problems printing 
using Ghostscript. However, we resolved most of these by making sure that 
Ghostscript is printing to a postscript printer and not a PCL printer. 
(We're using HP LJ 4100). i.e. using the PostScript printer driver for the 
HP4100 worked.
    

Here's one thing to check.

GhostScript comes from Europe, and defaults to A4 paper.  If you're in the
United States, you are almost certainly using 8.5" x 11" paper, which is
shorter and fatter than A4.  Printing a page formatted for A4 onto 8.5x11
paper will result in truncated footers.
You had me excited for a minute but as I was going through my GhostScript 7.04 docs, I found this:

Ghostscript is distributed configured to use U.S. letter paper as its default page size. There are two ways to select other paper sizes from the command line: ...

I may try to tell it to use letter anyway, but it doesn't look good.


--
- Tim Roberts, timr@probo.com
  Providenza & Boekelheide, Inc.


_______________________________________________
reportlab-users mailing list
reportlab-users@reportlab.com
http://two.pairlist.net/mailman/listinfo/reportlab-users

  

-- 
Dave Rogers
DaveRogers@StockAlerts.com
http://StockAlerts.com

--------------030803030202060008020209-- From reportlab-users@reportlab.com Fri Nov 7 14:07:19 2003 From: reportlab-users@reportlab.com (Thomas =?iso-8859-15?q?Schr=F6der?=) Date: Fri, 7 Nov 2003 15:07:19 +0100 Subject: [reportlab-users] Re: unicode [was: any help plz ...] In-Reply-To: <20031106070918.73D8324DD0@two.pairlist.net> References: <20031106070918.73D8324DD0@two.pairlist.net> Message-ID: <200311071507.19846.Thomas.Schroeder@red-sofa.de> Hi Some fundamental things about unicode could be found here http://www.joelonsoftware.com/articles/Unicode.html happy coding tom Am Donnerstag, 6. November 2003 08:09 schrieb=20 reportlab-users-request@reportlab.com: > From: sarah el-lawindy > To: reportlab-users@reportlab.com > Subject: [reportlab-users] any help plz .... > Reply-To: reportlab-users@reportlab.com > > --0-890125540-1068068469=3D:94914 > Content-Type: text/plain; charset=3Dus-ascii > > > dear Jerome Alet > hi , i know u got very bored from my very very primitaive questions, b= ut > i really need any help. ok, do u know anything about unicode thing? i > tried to write a unicode string, but the compiler gave me a error, "not a > valid UTF-8 string" an then i tried another one (i got it from the mailing > list archive), but gave another error " something (i can't remeber) then > ordinal 128" . so do u know the solution for this ? i hope that u reply > back ... > sam ellawindy =2D-=20 Thomas Schr=F6der Im H=E4cklinger Dorfe 7a 21335 L=FCneburg Germany Phone: +49-177-3318 361 eMail: Thomas.Schroeder@red-sofa.de From reportlab-users@reportlab.com Sat Nov 8 22:17:07 2003 From: reportlab-users@reportlab.com (Robin Becker) Date: Sat, 8 Nov 2003 22:17:07 +0000 Subject: [reportlab-users] Re: Subtle bug in pyRXP In-Reply-To: <20031108191211.GA27328@antares.math.rwth-aachen.de> References: <20031108191211.GA27328@antares.math.rwth-aachen.de> Message-ID: <$SOOzLAjtWr$Ewai@jessikat.fsnet.co.uk> ....I spoke too soon about the work needed to make pyRXP threadsafe. We seem to have a global Stderr which is used to collect error information. Logically each parser instance should have its own 'Stderr' so we can see errors properly. I suspect that's too big a set of changes to make without some more thought. Even if I manage that I still haven't thought about the GIL stuff that we would need to make things thread safe for Python. At the very least I need to do Py_BEGIN_ALLOW_THREADS Py_END_ALLOW_THREADS around the main work and take care of the callbacks. Presumably the threadstate would need to be stored in each parser. -- Robin Becker From reportlab-users@reportlab.com Sun Nov 9 00:52:38 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Sun, 9 Nov 2003 00:52:38 -0000 Subject: [reportlab-users] Tracing and Debugging support in Platypus Message-ID: I've been working on debug support for RML2PDF and, as a consequence, for Platypus. I have a checkin ready but would love some second opinions on this... The problems: (1) An error occurs during doc.build (the platypus main loop). But your story was built dynamically out of objects from other places. You want a reasonable way to put in trace info, so you can find out how far the story got and which object is causing trouble. (e.g. an impossible layout constraint or some null data in a table cell, but you don't know which of a zillion tables...) (2) Your story was assembled from lots of code in lots of modules (in our case, often preprocessors assembling chunks of XML from different "source files"). You have the option to add info on where things came from when coding. You'd like to track runtime errors back to the original source files and line numbers, or database records, or whatever. Outline solution: 1. Define a little 'TraceInfo' object which can hold extra info about original source files and line numbers; and could bbe subclassed to hold anything you want (like, maybe a record ID from a database). Every flowable has an attribute _traceInfo which is None by default. 2. the Platypus main loop gets a try/except handler. If an error occurs handling a flowable, AND it has a _traceInfo object, it intercepts the error; grabs the message; and lets the traceInfo object append a second line to the traceback message with the extra info; then re-raises the error. In our own RML product I can now run in a debug mode and get tracebacks telling me the line and character number of the tag which caused the error. However, all this solution does is trap errors. I wonder if it would be even better to allow some kind of logger, and give flowables a chance to write to it? So, you could run in a debug mode and create a file showing where your code got to before it died. We could perhaps even save a text version of the story in a log file in a standard way on the way through. Ideas/requests most welcome. - Andy From reportlab-users@reportlab.com Sun Nov 9 01:09:33 2003 From: reportlab-users@reportlab.com (sarah el-lawindy) Date: Sat, 8 Nov 2003 17:09:33 -0800 (PST) Subject: [reportlab-users] Still Needing Help - BIG one REALLY In-Reply-To: Message-ID: <20031109010933.37210.qmail@web60001.mail.yahoo.com> --0-1666654126-1068340173=:35668 Content-Type: text/plain; charset=us-ascii hi guys, i tried the stuff u told me about it worked well , but ... i am using an arabic font, so when i open the pdf , it contin arabic characters but not the ones i wrote, so anyone faced this thing before ???. i though of changing the locale of my OS but it did not work, i also tried to change the default encoding in the site.py, it did not work either. ANY Suggestions ... sam ellawindy --------------------------------- Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard --0-1666654126-1068340173=:35668 Content-Type: text/html; charset=us-ascii

hi guys,
 i tried the stuff u told me about it worked well , but ... i am using an  arabic font, so when i open the pdf , it contin arabic characters but not the ones i wrote, so anyone faced this thing before ???.
 i though of changing the locale of my OS but it did not work, i also tried to change the default encoding in the site.py, it did not work either.
  ANY Suggestions ...

sam ellawindy


Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard --0-1666654126-1068340173=:35668-- From reportlab-users@reportlab.com Sun Nov 9 01:40:33 2003 From: reportlab-users@reportlab.com (Robin Becker) Date: Sun, 9 Nov 2003 01:40:33 +0000 Subject: [reportlab-users] Tracing and Debugging support in Platypus In-Reply-To: References: Message-ID: <+9S+4IARsZr$EwIH@jessikat.fsnet.co.uk> .... I tried this before with an automatic mechanism for getting file and lineno info at instance creation time if nothing was supplied. A difficulty is deciding where the identity is defined. The difficulty is always that programs can define many flowables at the same point. In the rml2pdf case we often preprocess with preppy or with some other programmatic mechanism. It's often hard to decide where to label things. I create a good label and then later reuse the code and find the outer usage is hidden by the inner label. Perhaps adding to the call chain would be a way to do things compatible with the traceback itself. As for logging I think that should be a separate issue. -- Robin Becker From reportlab-users@reportlab.com Sun Nov 9 08:55:43 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Sun, 9 Nov 2003 08:55:43 -0000 Subject: [reportlab-users] Tracing and Debugging support in Platypus In-Reply-To: <+9S+4IARsZr$EwIH@jessikat.fsnet.co.uk> Message-ID: > .... I tried this before with an automatic mechanism for getting file > and lineno info at instance creation time if nothing was supplied. A > difficulty is deciding where the identity is defined. Yes. My plan is just to let the programmer of the app explicitly add the line info, or any other info they want. It doesn't help to know that a Table instance caused the trouble. It does help to know that it was the table containing the photograph of Customer #14326 in your database, which someone saved 400 pixels wide instead of 100. Let's generalize it a bit. If your flowable has a TraceInfo object attached, the TraceInfo object gets a chance to inspect and modify the Exception object being handled. Then, with RML, we add source file and line number. With something else, you add whatever you want by subclassing it. > As for logging I think that should be a separate issue. Yup. I guess we could pass in a logger object as optional keyword to go(). I like hte logging interface, but it means we need to define a really cut down logger class in reportlab.lib for people below 2.3 - Andy From reportlab-users@reportlab.com Sun Nov 9 10:16:16 2003 From: reportlab-users@reportlab.com (Dinu Gherman) Date: Sun, 9 Nov 2003 11:16:16 +0100 Subject: [reportlab-users] Chart axes bugs Message-ID: Being still confused about where to post bugs, I'll post one here... Very briefly: 1. graphics.charts.axes.ValueAxis has no "visibleLabels" property (like CategoryAxis) 2. so-called Boolean properties don't seem to support the Python Boolean type (True/False) Dinu -- Dinu C. Gherman - http://python.net/~gherman ...................................................................... "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." (Benjamin Franklin) From reportlab-users@reportlab.com Sun Nov 9 10:24:22 2003 From: reportlab-users@reportlab.com (Robin Becker) Date: Sun, 9 Nov 2003 10:24:22 +0000 Subject: [reportlab-users] Chart axes bugs In-Reply-To: References: Message-ID: In article , Dinu Gherman writes >Being still confused about where to post bugs, I'll post one here... >Very briefly: > >1. graphics.charts.axes.ValueAxis has no "visibleLabels" property > (like CategoryAxis) >2. so-called Boolean properties don't seem to support the Python > Boolean type (True/False) > >Dinu > >-- ....that's because Python is unstable :) The code is robust. As for the visibleLabels attribute I'll have a look today. -- Robin Becker From reportlab-users@reportlab.com Sun Nov 9 14:47:00 2003 From: reportlab-users@reportlab.com (Dinu Gherman) Date: Sun, 9 Nov 2003 15:47:00 +0100 Subject: [reportlab-users] Chart axes bugs In-Reply-To: Message-ID: <935030F3-12C3-11D8-A8BA-00039345C610@darwin.in-berlin.de> Robin Becker: >> 1. graphics.charts.axes.ValueAxis has no "visibleLabels" property >> (like CategoryAxis) >> 2. so-called Boolean properties don't seem to support the Python >> Boolean type (True/False) >> > ....that's because Python is unstable :) The code is robust. As for the > visibleLabels attribute I'll have a look today. Lots of stuff can be moved into _AxisG, whatever that G stands for. Stable or not, in the context of Python 2.x lib.validators.isBoolean is not appropriate anymore, then, is it? The chart stuff seems like having made a big entropy jump, where things like _makeLines could probably entirely be replaced with grids. I think it looks more and more like VisualBasic... ;-) Dinu -- Dinu C. Gherman - http://python.net/~gherman ...................................................................... "I never apologize for the United States of America, I don't care what the facts are." (George Bush, Sr.) From reportlab-users@reportlab.com Mon Nov 10 00:08:29 2003 From: reportlab-users@reportlab.com (sarah el-lawindy) Date: Sun, 9 Nov 2003 16:08:29 -0800 (PST) Subject: [reportlab-users] Come on, i am so messed up and i need anything from u In-Reply-To: <20031109010933.37210.qmail@web60001.mail.yahoo.com> Message-ID: <20031110000829.25804.qmail@web60006.mail.yahoo.com> --0-2055006651-1068422909=:23848 Content-Type: text/plain; charset=us-ascii hi guys, i tried the stuff u told me about it worked well , but ... i am using an arabic font, so when i open the pdf , it contin arabic characters but not the ones i wrote, so anyone faced this thing before ???. i though of changing the locale of my OS but it did not work, i also tried to change the default encoding in the site.py, it did not work either. ANY Suggestions ... sam ellawindy do i need to work with iso-8856???????? --------------------------------- Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard --0-2055006651-1068422909=:23848 Content-Type: text/html; charset=us-ascii

hi guys,
 i tried the stuff u told me about it worked well , but ... i am using an  arabic font, so when i open the pdf , it contin arabic characters but not the ones i wrote, so anyone faced this thing before ???.
 i though of changing the locale of my OS but it did not work, i also tried to change the default encoding in the site.py, it did not work either.
  ANY Suggestions ...

sam ellawindy

do i need to work with iso-8856????????


Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard --0-2055006651-1068422909=:23848-- From reportlab-users@reportlab.com Mon Nov 10 03:00:04 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Mon, 10 Nov 2003 03:00:04 -0000 Subject: [reportlab-users] Chart axes bugs In-Reply-To: <935030F3-12C3-11D8-A8BA-00039345C610@darwin.in-berlin.de> Message-ID: > Stable or not, in the context of Python 2.x lib.validators.isBoolean > is not appropriate anymore, then, is it? I think you mean "2.3" not "2.x". Changing the code to return True or False would break earlier versions or need a messy conditional import. And we're trying to make lots of things work under jython (=2.1) these days, so if you want us to use cutting edge features in core code then I suggest you help Samuele Pedroni to catch up with Guido :-) Anyway, these functions partly exist to help when people are setting properties in GUIs, xml files or web forms. The fact that the language permits the symbol 'True' in source code has little to do with what we are doing: accepting strings the user might commonly type like "yes/no" or "True/False" and converting to a (2.1 compatible notion of a) boolean. - Andy From reportlab-users@reportlab.com Mon Nov 10 02:51:01 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Mon, 10 Nov 2003 02:51:01 -0000 Subject: [reportlab-users] Chart axes bugs In-Reply-To: <935030F3-12C3-11D8-A8BA-00039345C610@darwin.in-berlin.de> Message-ID: > The chart stuff seems like having made a big entropy jump, where > things like _makeLines could probably entirely be replaced with > grids. Lots of stuff could be replaced, but it is stable and works. I think the main deficiency is really that it does not have enough documentation on which properties are there for what. I'm much more interested now in trying to position ourselves for a more drastic rewrite which might merge lots of disparate areas, than for refactoring the existing charts. Of course, "position ourselves" basically means getting ReportLab a bit bigger to the point where we can devote the needed resources to this kind of development, and do really good "version 2" rewrites of things based on what we know now. But we're doing well on that front now, with 3 more full time staff than we had in the summer all learning their way around. Hey, we might even have the resources to write a test case or two and set up a bug tracker in 2004 some time :-) > I think it looks more and more like VisualBasic... ;-) I will take that as a compliment. If by that you mean lots of property assignment statements like drawing.chart.xAxis.gridLines.blah.blah = 'spam' then there's a sound reason for this, and in fact for why VB code often looks like it does. If you are making a framework to be edited by GUIs or with preprty editors - and we do have a basic visual editor in our commercial toolkit, albeit not one your mother could use - then pretty soon you realize that "everything must be exposed as a property". In the long run, ideally, entire document workflows should be able to be constructed semi-visually in GUIs, which means setting properties and adding things to their parents. This might mean making our whole framework look like Visual Basic. Or like XML. Or whatever else is fashionable at the time I guess ;-) - Andy From reportlab-users@reportlab.com Mon Nov 10 08:15:03 2003 From: reportlab-users@reportlab.com (Henning von Bargen) Date: Mon, 10 Nov 2003 09:15:03 +0100 Subject: [reportlab-users] Re: Tracing and Debugging support in Platypus Message-ID: <71674BEFF0E2D41196F500600811AA6B5BADA1@TUP-BO1-EXC> > From: "Andy Robinson" > To: > Subject: RE: [reportlab-users] Tracing and Debugging support in Platypus > Date: Sun, 9 Nov 2003 08:55:43 -0000 > Reply-To: reportlab-users@reportlab.com > > > .... I tried this before with an automatic mechanism for getting file > > and lineno info at instance creation time if nothing was supplied. A > > difficulty is deciding where the identity is defined. > > Yes. My plan is just to let the programmer of the app explicitly > add the line info, or any other info they want. It doesn't help > to know that a Table instance caused the trouble. It does > help to know that it was the table containing the photograph > of Customer #14326 in your database, which someone saved > 400 pixels wide instead of 100. > > > Let's generalize it a bit. If your flowable has a TraceInfo > object attached, the TraceInfo object gets a chance to inspect > and modify the Exception object being handled. > > Then, with RML, we add source file and line number. With something > else, you add whatever you want by subclassing it. > > > As for logging I think that should be a separate issue. > > Yup. I guess we could pass in a logger object as optional keyword > to go(). I like hte logging interface, but it means we need > to define a really cut down logger class in reportlab.lib for > people below 2.3 > > - Andy I like your idea. It's very close to what I suggested a few weeks ago. And right now I have an infinite loop while generating a report from DB data, where such a TraceInfo object could definitely help. Henning From reportlab-users@reportlab.com Fri Nov 7 15:22:11 2003 From: reportlab-users@reportlab.com (Dirk Hesse) Date: Fri, 7 Nov 2003 16:22:11 +0100 Subject: [reportlab-users] Two stacked charts on one column Message-ID: <002c01c3a542$ebdd0160$6a02a8c0@ixware> This is a multi-part message in MIME format. ------=_NextPart_000_0029_01C3A54B.4C575D30 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hello all I want to draw a stacked Chart like this example from the = graphicsguide_reference.pdf : =20 def sampleStacked1(): "Simple bar chart using symbol attribute." drawing =3D Drawing(400, 200) data =3D dataSample5 bc =3D VerticalBarChart() bc.categoryAxis.style =3D 'stacked' bc.x =3D 50 bc.y =3D 50 bc.height =3D 125 bc.width =3D 300 bc.data =3D data bc.strokeColor =3D colors.black bc.barWidth =3D 10 bc.groupSpacing =3D 15 bc.valueAxis.valueMin =3D 0 bc.categoryAxis.labels.boxAnchor =3D 'e' bc.categoryAxis.categoryNames =3D ['Ying', 'Yang'] from reportlab.graphics.widgets.grids import ShadedRect bc.bars.symbol =3D ShadedRect() bc.bars.symbol.fillColorStart =3D colors.red bc.bars.symbol.fillColorEnd =3D colors.white bc.bars.symbol.orientation =3D 'vertical' bc.bars.symbol.cylinderMode =3D 1 bc.bars.symbol.strokeWidth =3D 0 bc.bars[1].symbol =3D ShadedRect() bc.bars[1].symbol.fillColorStart =3D colors.magenta bc.bars[1].symbol.fillColorEnd =3D colors.white bc.bars[1].symbol.orientation =3D 'vertical' bc.bars[1].symbol.cylinderMode =3D 1 bc.bars[1].symbol.strokeWidth =3D 0 bc.bars[2].symbol =3D ShadedRect() bc.bars[2].symbol.fillColorStart =3D colors.green bc.bars[2].symbol.fillColorEnd =3D colors.white bc.bars[2].symbol.orientation =3D 'vertical' bc.bars[2].symbol.cylinderMode =3D 1 bc.bars[2].symbol.strokeWidth =3D 0 bc.bars[3].symbol =3D ShadedRect() bc.bars[3].symbol.fillColorStart =3D colors.blue bc.bars[3].symbol.fillColorEnd =3D colors.white bc.bars[3].symbol.orientation =3D 'vertical' bc.bars[3].symbol.cylinderMode =3D 1 bc.bars[3].symbol.strokeWidth =3D 0 drawing.add(bc) return drawing But Is there any Possiblilty to draw 2 stacked Charts on one = column/day?? Thanks D. Hesse ------=_NextPart_000_0029_01C3A54B.4C575D30 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hello all
 
I want to draw a stacked Chart like = this example=20 from the graphicsguide_reference.pdf :
 
   

def = sampleStacked1():

"Simple bar chart using = symbol=20 attribute."

drawing =3D Drawing(400, = 200)

data =3D = dataSample5

bc =3D = VerticalBarChart()

bc.categoryAxis.style =3D=20 'stacked'

bc.x =3D 50

bc.y =3D 50

bc.height =3D 125

bc.width =3D 300

bc.data =3D data

bc.strokeColor =3D = colors.black

bc.barWidth =3D = 10

bc.groupSpacing =3D = 15

bc.valueAxis.valueMin =3D = 0

bc.categoryAxis.labels.boxAnchor =3D=20 'e'

bc.categoryAxis.categoryNames =3D ['Ying',=20 'Yang']

from = reportlab.graphics.widgets.grids=20 import ShadedRect

bc.bars.symbol =3D = ShadedRect()

bc.bars.symbol.fillColorStart =3D=20 colors.red

bc.bars.symbol.fillColorEnd = =3D=20 colors.white

bc.bars.symbol.orientation = =3D=20 'vertical'

bc.bars.symbol.cylinderMode = =3D 1

bc.bars.symbol.strokeWidth = =3D 0

bc.bars[1].symbol =3D=20 ShadedRect()

bc.bars[1].symbol.fillColorStart =3D=20 colors.magenta

bc.bars[1].symbol.fillColorEnd =3D=20 colors.white

bc.bars[1].symbol.orientation =3D=20 'vertical'

bc.bars[1].symbol.cylinderMode =3D=20 1

bc.bars[1].symbol.strokeWidth =3D=20 0

bc.bars[2].symbol =3D=20 ShadedRect()

bc.bars[2].symbol.fillColorStart =3D=20 colors.green

bc.bars[2].symbol.fillColorEnd =3D=20 colors.white

bc.bars[2].symbol.orientation =3D=20 'vertical'

bc.bars[2].symbol.cylinderMode =3D=20 1

bc.bars[2].symbol.strokeWidth =3D=20 0

bc.bars[3].symbol =3D=20 ShadedRect()

bc.bars[3].symbol.fillColorStart =3D=20 colors.blue

bc.bars[3].symbol.fillColorEnd =3D=20 colors.white

bc.bars[3].symbol.orientation =3D=20 'vertical'

bc.bars[3].symbol.cylinderMode =3D=20 1

bc.bars[3].symbol.strokeWidth =3D=20 0

drawing.add(bc)

return=20 drawing

But Is there any Possiblilty to = draw 2 stacked=20 Charts on one column/day??
 
Thanks D. Hesse
 
------=_NextPart_000_0029_01C3A54B.4C575D30-- From reportlab-users@reportlab.com Mon Nov 10 09:35:50 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Mon, 10 Nov 2003 09:35:50 -0000 Subject: [reportlab-users] Chart axes bugs In-Reply-To: Message-ID: > Being still confused about where to post bugs, Let's be accurate. You are not 'confused' where to post them, you are 'annoyed' where to post them. You know this is the correct place because I have told you about 4 times. - Andy From reportlab-users@reportlab.com Mon Nov 10 10:12:28 2003 From: reportlab-users@reportlab.com (Dinu Gherman) Date: Mon, 10 Nov 2003 11:12:28 +0100 Subject: [reportlab-users] Chart axes bugs In-Reply-To: Message-ID: <634464B6-1366-11D8-A8BA-00039345C610@darwin.in-berlin.de> Andy Robinson: > I think you mean "2.3" not "2.x". Changing the code > to return True or False would break earlier versions or need > a messy conditional import. And we're trying to make lots > of things work under jython (=2.1) these days, so if you want us > to use cutting edge features in core code then I suggest you > help Samuele Pedroni to catch up with Guido :-) My, pretty wrong, point was rather that you cannot write now: chart.valueAxis.visible = False because lib.validators.isBoolean doesn't know about True/False, while, in fact, the Gods of Python have hacked Booleans just enough such that using them with validators.isBoolean does ma- gically work: >>> from reportlab.lib.validators import isBoolean >>> isBoolean(False) 1 >>> isBoolean(True) 1 Remember, always test your claim before making it, when possible! OTOH, it still is the kind of background magic discouraged by the Zen of Python. ;-) > If by that you mean lots of property assignment statements like > > drawing.chart.xAxis.gridLines.blah.blah = 'spam' > > then there's a sound reason for this, and in fact for > why VB code often looks like it does. If you are making a framework > to be edited by GUIs or with preprty editors - and we do have a > basic visual editor in our commercial toolkit, albeit not one your > mother could use - then pretty soon you realize that "everything must > be exposed as a property". That's ok iff things are decomposed in some "natural" way which favours reuse, e.g. I'd prefer chart.valueAxis.grid.strokeColor chart.valueAxis.grid.visible over the current chart.valueAxis.gridStrokeColor chart.valueAxis.visibleGrid because it would further simplify composition and increase flexi- bility which is what we both seem to value. > Let's be accurate. You are not 'confused' where > to post them, you are 'annoyed' where to post them. Thanks for the clarification. ;-) Dinu -- Dinu C. Gherman ...................................................................... "He who can read but does not read good books has no advantage over the ones who can't read." (Mark Twain) From reportlab-users@reportlab.com Mon Nov 10 13:44:46 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Mon, 10 Nov 2003 13:44:46 -0000 Subject: [reportlab-users] Chart axes bugs In-Reply-To: <634464B6-1366-11D8-A8BA-00039345C610@darwin.in-berlin.de> Message-ID: > > >>> from reportlab.lib.validators import isBoolean > >>> isBoolean(False) > 1 > >>> isBoolean(True) > 1 > OK, this is a fair point and sorry not to grasp it. It seems someone has checked in the version-conditional fix this morning anyway - probably Robin? - so it should work now. - Andy From reportlab-users@reportlab.com Mon Nov 10 16:49:36 2003 From: reportlab-users@reportlab.com (Robin Becker) Date: Mon, 10 Nov 2003 16:49:36 +0000 Subject: [reportlab-users] Chart axes bugs In-Reply-To: References: <634464B6-1366-11D8-A8BA-00039345C610@darwin.in-berlin.de> Message-ID: In article , Andy Robinson writes >> >> >>> from reportlab.lib.validators import isBoolean >> >>> isBoolean(False) >> 1 >> >>> isBoolean(True) >> 1 >> >OK, this is a fair point and sorry not to grasp it. >It seems someone has checked in the version-conditional >fix this morning anyway - probably Robin? - so it should >work now. > >- Andy I did it yesterday. Funnily I don't get the above I see the following PythonWin 2.3.2 (#49, Oct 2 2003, 20:02:00) [MSC v.1200 32 bit (Intel)] on win32.Portions Copyright 1994-2001 Mark Hammond (mhammond@skippinet.com.au) - see 'Help/About PythonWin' for further copyright information. >>> from reportlab.lib.validators import isBoolean >>> isBoolean(1) True >>> isBoolean(True) True >>> isBoolean(False) True >>> isBoolean('YES') 1 >>> isBoolean('no') 1 >>> That's because I reused the original normalize. I think I need to fix so all the return values are boolean at least from isBoolean. -- Robin Becker From reportlab-users@reportlab.com Mon Nov 10 22:50:01 2003 From: reportlab-users@reportlab.com (Marius Gedminas) Date: Tue, 11 Nov 2003 00:50:01 +0200 Subject: [reportlab-users] Come on, i am so messed up and i need anything from u In-Reply-To: <20031110000829.25804.qmail@web60006.mail.yahoo.com> References: <20031109010933.37210.qmail@web60001.mail.yahoo.com> <20031110000829.25804.qmail@web60006.mail.yahoo.com> Message-ID: <20031110225001.GB32585@gintaras> --vkogqOf2sHV7VnPd Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Nov 09, 2003 at 04:08:29PM -0800, sarah el-lawindy wrote: > hi guys, > i tried the stuff u told me about it worked well , but ... i am using > an arabic font, so when i open the pdf , it contin arabic characters > but not the ones i wrote, so anyone faced this thing before ???.=20 I'd guess not. > i though of changing the locale of my OS but it did not work, i also > tried to change the default encoding in the site.py, it did not work > either. These things should not matter. > ANY Suggestions ... Could you show the code you use that does not work for you? Otherwise it's very hard to understand what the problem might be. > sam ellawindy >=20 > do i need to work with iso-8856???????? I do not think so. Marius Gedminas --=20 C is a language that combines all the elegance and power of assembly langua= ge with all the readability and maintainability of assembly language. --vkogqOf2sHV7VnPd Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.3 (GNU/Linux) iD8DBQE/sBYZkVdEXeem148RAtDVAJ92Ln1+s/E3xPLE0kOSc4ohC1AQdgCfSbS+ PNxLgK+QzhiNVpJpTEhNTmY= =z7a4 -----END PGP SIGNATURE----- --vkogqOf2sHV7VnPd-- From reportlab-users@reportlab.com Mon Nov 10 22:50:01 2003 From: reportlab-users@reportlab.com (Marius Gedminas) Date: Tue, 11 Nov 2003 00:50:01 +0200 Subject: [reportlab-users] Come on, i am so messed up and i need anything from u In-Reply-To: <20031110000829.25804.qmail@web60006.mail.yahoo.com> References: <20031109010933.37210.qmail@web60001.mail.yahoo.com> <20031110000829.25804.qmail@web60006.mail.yahoo.com> Message-ID: <20031110225001.GB32585@gintaras> --vkogqOf2sHV7VnPd Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Nov 09, 2003 at 04:08:29PM -0800, sarah el-lawindy wrote: > hi guys, > i tried the stuff u told me about it worked well , but ... i am using > an arabic font, so when i open the pdf , it contin arabic characters > but not the ones i wrote, so anyone faced this thing before ???.=20 I'd guess not. > i though of changing the locale of my OS but it did not work, i also > tried to change the default encoding in the site.py, it did not work > either. These things should not matter. > ANY Suggestions ... Could you show the code you use that does not work for you? Otherwise it's very hard to understand what the problem might be. > sam ellawindy >=20 > do i need to work with iso-8856???????? I do not think so. Marius Gedminas --=20 C is a language that combines all the elegance and power of assembly langua= ge with all the readability and maintainability of assembly language. --vkogqOf2sHV7VnPd Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.3 (GNU/Linux) iD8DBQE/sBYZkVdEXeem148RAtDVAJ92Ln1+s/E3xPLE0kOSc4ohC1AQdgCfSbS+ PNxLgK+QzhiNVpJpTEhNTmY= =z7a4 -----END PGP SIGNATURE----- --vkogqOf2sHV7VnPd-- From reportlab-users@reportlab.com Mon Nov 10 11:01:44 2003 From: reportlab-users@reportlab.com (DOMSS Master) Date: Mon, 10 Nov 2003 06:01:44 -0500 (EST) Subject: [reportlab-users] [DOMSS] DOMSS Mailing Service Message-ID: <6668874.1068462387453.JavaMail.Administrator@Server-1> DOMSS Mailing Service
 
 
   if you want to unsubscribe Click Here!
 
   
Mailing List Guide
Mailing list is a service which sends you information via e-mail. By joining these lists, you can share information, newsletters and comments with others about Daewoo Machine Tools.

Copyright 2003. DHI&M Ltd. All rights reserved
 
From reportlab-users@reportlab.com Mon Nov 10 16:11:23 2003 From: reportlab-users@reportlab.com (Michael Geddert) Date: Mon, 10 Nov 2003 17:11:23 +0100 Subject: [reportlab-users] Pantone/HKS in RLTK ? Message-ID: <3FAFB8AB.2010800@arche.de> Hi, Is it possible to set Fonts on a given Canvas-Object using Pantone/HKS-Color-Schemes ? I was pointed to "spotcolors" (ok, I found 'spotname' lib/colors.py), but it seems I'm unable to figure this out on my own. :( Thx & Regards, Michael From reportlab-users@reportlab.com Tue Nov 11 09:55:42 2003 From: reportlab-users@reportlab.com (Henning von Bargen) Date: Tue, 11 Nov 2003 10:55:42 +0100 Subject: [reportlab-users] Infinite Loop in tables Message-ID: <71674BEFF0E2D41196F500600811AA6B5BADAA@TUP-BO1-EXC> Hi, I have encountered the following problem using Tables in a production environment: If the header line plus the first data line do not fit entirely on the page, an infinite loop occurs. This is likely to happen when generating tables with DB data where some cells contain long strings, for example a descriptive text. This is causing performance problems on the application server. As a last resort, I have modified the _splitRows method for Table so that it raises an exception when this happens and availHeight > 5cm. Is there any option that allows to split the CELLS inside the row so that the first part of the row will be printed on the current page and the rest will overflow to the next row? Henning From reportlab-users@reportlab.com Tue Nov 11 10:02:49 2003 From: reportlab-users@reportlab.com (Robin Becker) Date: Tue, 11 Nov 2003 10:02:49 +0000 Subject: [reportlab-users] Pantone/HKS in RLTK ? In-Reply-To: <3FAFB8AB.2010800@arche.de> References: <3FAFB8AB.2010800@arche.de> Message-ID: In article <3FAFB8AB.2010800@arche.de>, Michael Geddert writes >Hi, > >Is it possible to set Fonts on a given Canvas-Object using >Pantone/HKS-Color-Schemes ? > >I was pointed to "spotcolors" (ok, I found 'spotname' lib/colors.py), >but it seems I'm unable to figure this out on my own. :( > >Thx & Regards, > >Michael ....Spotnames are currently only of use in some contexts particularly postscript. We have a separating eps renderer that allows printers to split up into different inks correctly. It is possible to do separations in PDF with separation dictionaries and pages represented N times (once for each ink), but we don't currently have any way to do that. However, a first step along that road would be to know the individual colours up front. We currently have only RGB & CMYK colour spaces. There are many Pantone colours and each has its own approximant in CMYK or RGB. -- Robin Becker From reportlab-users@reportlab.com Tue Nov 11 11:11:14 2003 From: reportlab-users@reportlab.com (Oliver Bleutgen) Date: Tue, 11 Nov 2003 12:11:14 +0100 Subject: [reportlab-users] Pantone/HKS in RLTK ? In-Reply-To: References: <3FAFB8AB.2010800@arche.de> Message-ID: <3FB0C3D2.4000407@gmx.net> Robin Becker wrote: > In article <3FAFB8AB.2010800@arche.de>, Michael Geddert > writes > >>Hi, >> >>Is it possible to set Fonts on a given Canvas-Object using >>Pantone/HKS-Color-Schemes ? >> >>I was pointed to "spotcolors" (ok, I found 'spotname' lib/colors.py), >>but it seems I'm unable to figure this out on my own. :( >> >>Thx & Regards, >> >>Michael > > ....Spotnames are currently only of use in some contexts particularly > postscript. We have a separating eps renderer that allows printers to > split up into different inks correctly. It is possible to do separations > in PDF with separation dictionaries and pages represented N times (once > for each ink), but we don't currently have any way to do that. > > However, a first step along that road would be to know the individual > colours up front. > > We currently have only RGB & CMYK colour spaces. There are many Pantone > colours and each has its own approximant in CMYK or RGB. Well the problem with pantone/HKS colors is that they contain also such things as Silver, Gold etc., "special colors" for which a good quality approximation is not possible with the CMYK printing process. One way to solve this is to make a seperate document containing only these "special colors". cheers, oliver From reportlab-users@reportlab.com Tue Nov 11 11:52:12 2003 From: reportlab-users@reportlab.com (Robin Becker) Date: Tue, 11 Nov 2003 11:52:12 +0000 Subject: [reportlab-users] Infinite Loop in tables In-Reply-To: <71674BEFF0E2D41196F500600811AA6B5BADAA@TUP-BO1-EXC> References: <71674BEFF0E2D41196F500600811AA6B5BADAA@TUP-BO1-EXC> Message-ID: In article <71674BEFF0E2D41196F500600811AA6B5BADAA@TUP-BO1-EXC>, Henning von Bargen writes >Hi, > >I have encountered the following problem using Tables in a production >environment: > >If the header line plus the first data line do not fit entirely on the page, >an infinite loop occurs. > >This is likely to happen when generating tables with DB data >where some cells contain long strings, for example a descriptive text. > >This is causing performance problems on the application server. >As a last resort, I have modified the _splitRows method for Table >so that it raises an exception when this happens and availHeight > 5cm. > >Is there any option that allows to split the CELLS inside the row >so that the first part of the row will be printed on the current page >and the rest will overflow to the next row? > >Henning .... This is hard, the flowable wrap, split and draw methods don't know the container size so it's hard to know when a split is absolutely required (or detect the overflow). To take the hard case, what does it mean when the header lines are longer than the page. It ought to be possible to detect the infinite loop though by other means. -- Robin Becker From reportlab-users@reportlab.com Tue Nov 11 12:25:11 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Tue, 11 Nov 2003 12:25:11 -0000 Subject: [reportlab-users] Pantone/HKS in RLTK ? In-Reply-To: <3FAFB8AB.2010800@arche.de> Message-ID: > Hi, > > Is it possible to set Fonts on a given Canvas-Object using > Pantone/HKS-Color-Schemes ? > No. Currently we only output CMYK and RGB color info in our PDF docs, and there is a whole separate area of the PDf spec to do with declaring Color Spaces that we just do not deal with. Our Color objects allow you to attach extra data, but the canvas does not do anything with it; the spot attribute you saw is however used by our Diagra product when making color separating EPS, but not for PDF. Color-separable PDF is a big subject; if someone wants to contribute that feature it would be great, but probably quite a big job involving proper testing with a range of print architectures, and it would rapidly drift into supporting bleed and knockout as well. If we did it ourselves (and there is no scheduled work on this), it would probably go into the commercial parts of our framework. And there are plenty of PDF post-processing tools that do it already AFAIK. Sorry we can't help more just now:-) - Andy From reportlab-users@reportlab.com Tue Nov 11 12:26:58 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Tue, 11 Nov 2003 12:26:58 -0000 Subject: [reportlab-users] Infinite Loop in tables In-Reply-To: <71674BEFF0E2D41196F500600811AA6B5BADAA@TUP-BO1-EXC> Message-ID: > If the header line plus the first data line do not fit entirely > on the page, > an infinite loop occurs. That's a bug. Thanks. We have an algorithm saying "if you can't fit ANYTHING on a page, raise an error" but it is not smart enough to know about the tables. > > This is likely to happen when generating tables with DB data > where some cells contain long strings, for example a descriptive text. > > This is causing performance problems on the application server. > As a last resort, I have modified the _splitRows method for Table > so that it raises an exception when this happens and availHeight > 5cm. > > Is there any option that allows to split the CELLS inside the row > so that the first part of the row will be printed on the current page > and the rest will overflow to the next row? > Not yet, no. Ideas are welcome though. I wonder if the outer loop needs special knowledge of tables, or some 'container' API? - Andy From reportlab-users@reportlab.com Tue Nov 11 21:36:03 2003 From: reportlab-users@reportlab.com (sarah el-lawindy) Date: Tue, 11 Nov 2003 13:36:03 -0800 (PST) Subject: [reportlab-users] Come on, i am so messed up and i need anything from u In-Reply-To: <20031110225001.GB32585@gintaras> Message-ID: <20031111213603.31696.qmail@web60001.mail.yahoo.com> --0-1954263328-1068586563=:30363 Content-Type: text/plain; charset=us-ascii Marius Gedminas , thanks for replying. here is the code i wrote: import reportlab.rl_config reportlab.rl_config.warnOnMissingFontGlyphs = 0 from reportlab.pdfbase import pdfmetrics from reportlab.pdfbase.ttfonts import TTFont from reportlab.pdfgen import canvas c = canvas.Canvas('t.pdf') pdfmetrics.registerFont(TTFont('ArabicRiyadh', 'ArabicRiyadh.ttf')) from reportlab.lib.fonts import addMapping addMapping('ArabicRiyadh', 0, 0, 'ArabicRiyadh') c.setFont('ArabicRiyadh', 32) TEST = u'ÊÇáÈí' #temp = unicode("ÊÇáÈíþ", "ISO-8859-13") c.drawString(100, 700,TEST.encode('utf-8')) c.save() the output was not ÊÇáÈí' at all, it another word. by the way, i am uisng adode acrobat ME , and i used another viewer but the same thing took place. i tried sending the ttf file to u, but the coz of its size, the modrator of the group send me a notification back. thanks in advance, sam ellawindy --------------------------------- Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard --0-1954263328-1068586563=:30363 Content-Type: text/html; charset=us-ascii


Marius Gedminas ,
  thanks for replying. here is the code i wrote:

    import reportlab.rl_config
    reportlab.rl_config.warnOnMissingFontGlyphs = 0
    from reportlab.pdfbase import pdfmetrics
    from reportlab.pdfbase.ttfonts import TTFont
    from reportlab.pdfgen import canvas
    c = canvas.Canvas('t.pdf')
    pdfmetrics.registerFont(TTFont('ArabicRiyadh', 'ArabicRiyadh.ttf'))
    from reportlab.lib.fonts import addMapping
    addMapping('ArabicRiyadh', 0, 0, 'ArabicRiyadh')
    c.setFont('ArabicRiyadh', 32)
    TEST = u'ÊÇáÈí'
    #temp = unicode("ÊÇáÈíþ", "ISO-8859-13")
    c.drawString(100, 700,TEST.encode('utf-8'))
    c.save()
 
the output was not ÊÇáÈí' at all, it another word.
by the way, i am uisng adode acrobat ME , and i used  another viewer but the same thing took place.
i tried sending the ttf file to u, but the coz of its size, the modrator of the group  send me a notification back.
thanks in advance,
sam ellawindy


Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard --0-1954263328-1068586563=:30363-- From reportlab-users@reportlab.com Tue Nov 11 22:39:07 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Tue, 11 Nov 2003 22:39:07 -0000 Subject: [reportlab-users] Come on, i am so messed up and i need anything from u In-Reply-To: <20031111213603.31696.qmail@web60001.mail.yahoo.com> Message-ID: This is a multi-part message in MIME format. ------=_NextPart_000_0039_01C3A8A4.9DD7E2E0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sarah, Thanks for sending this sample code and the font; now perhaps we can help. Attached messages are held until one of us approves them. I just approved it so it should arrive in a few minutes; usually this happens in the mornings UK time. Do you have an example of a real, small PDF document containing this? e.g. could you type the same word in Notepad or Word and distill it to PDF, then send us that? This would let some of us look inside the file to see how things are stored. Thanks, Andy Robinson -----Original Message----- From: reportlab-users-admin@reportlab.com [mailto:reportlab-users-admin@reportlab.com]On Behalf Of sarah el-lawindy Sent: 11 November 2003 21:36 To: reportlab-users@reportlab.com Subject: Re: [reportlab-users] Come on, i am so messed up and i need anything from u Marius Gedminas , thanks for replying. here is the code i wrote: import reportlab.rl_config reportlab.rl_config.warnOnMissingFontGlyphs = 0 from reportlab.pdfbase import pdfmetrics from reportlab.pdfbase.ttfonts import TTFont from reportlab.pdfgen import canvas c = canvas.Canvas('t.pdf') pdfmetrics.registerFont(TTFont('ArabicRiyadh', 'ArabicRiyadh.ttf')) from reportlab.lib.fonts import addMapping addMapping('ArabicRiyadh', 0, 0, 'ArabicRiyadh') c.setFont('ArabicRiyadh', 32) TEST = u'JGaHm' #temp = unicode("JGaHm~", "ISO-8859-13") c.drawString(100, 700,TEST.encode('utf-8')) c.save() the output was not JGaHm' at all, it another word. by the way, i am uisng adode acrobat ME , and i used another viewer but the same thing took place. i tried sending the ttf file to u, but the coz of its size, the modrator of the group send me a notification back. thanks in advance, sam ellawindy ---------------------------------------------------------------------------- -- Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard ------=_NextPart_000_0039_01C3A8A4.9DD7E2E0 Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable
Sarah,
 
Thanks=20 for sending this sample code and the font; now
perhaps we can help.
 
Attached messages are held until one of us approves them.  = I=20 just
approved it so it should arrive in a few minutes; usually this=20 happens
in the=20 mornings UK time. 
 
Do you=20 have an example of a real, small PDF document = containing
this?  e.g. could you type the same word in Notepad or=20 Word
and=20 distill it to PDF, then send us that?  This would let some of=20 us
look=20 inside the file to see how things are stored.
 
Thanks,
 
Andy=20 Robinson
 
 
-----Original Message-----
From:=20 reportlab-users-admin@reportlab.com=20 [mailto:reportlab-users-admin@reportlab.com]On Behalf Of sarah=20 el-lawindy
Sent: 11 November 2003 21:36
To:=20 reportlab-users@reportlab.com
Subject: Re: [reportlab-users] = Come=20 on, i am so messed up and i need anything from u



Marius Gedminas ,
  = thanks for=20 replying. here is the code i wrote:

    import = reportlab.rl_config
   =20 reportlab.rl_config.warnOnMissingFontGlyphs =3D 0 =
    from=20 reportlab.pdfbase import pdfmetrics
    from=20 reportlab.pdfbase.ttfonts import TTFont
    from=20 reportlab.pdfgen import canvas
    c =3D=20 canvas.Canvas('t.pdf')
   =20 pdfmetrics.registerFont(TTFont('ArabicRiyadh',=20 'ArabicRiyadh.ttf'))
    from reportlab.lib.fonts = import=20 addMapping
    addMapping('ArabicRiyadh', 0, 0,=20 'ArabicRiyadh')
    c.setFont('ArabicRiyadh',=20 32)
    TEST =3D u'JGaHm'
    = #temp =3D=20 unicode("JGaHm~", "ISO-8859-13")
    = c.drawString(100,=20 700,TEST.encode('utf-8'))
    c.save()
 
the output was not JGaHm' at all, it another word.
by the way, = i am=20 uisng adode acrobat ME , and i used  another viewer but the same = thing=20 took place.
i tried sending the ttf file to u, but the coz of its = size, the=20 modrator of the group  send me a notification back.
thanks in=20 advance,
sam ellawindy


Do you Yahoo!?
Protect=20 your identity with Yahoo! Mail = AddressGuard ------=_NextPart_000_0039_01C3A8A4.9DD7E2E0-- From reportlab-users@reportlab.com Wed Nov 12 13:43:02 2003 From: reportlab-users@reportlab.com (Marc Stober) Date: Wed, 12 Nov 2003 08:43:02 -0500 Subject: [reportlab-users] RE: Tracing and Debugging support in Platypus Message-ID: <2546C8F5D3D2D411857F00508BDCA4E80125F929@dalbar_mail.dalbar.com> Hi Andy - What you proposed for tracing info sounds great. Maybe we could just add an option that lets you catch an error, trace/log it, skip over that flowable (maybe print a big X or something in the space as a placeholder) and continue printing. My philosophy is it's better to be able to show the report to the boss with one page missing, than have all but one page working and nothing to show for it. This could also provide a way to visually see the problem. Of course, there would have to be a way to turn this off for web-based system where reports are sent directly to the end user. - Marc From reportlab-users@reportlab.com Wed Nov 12 11:16:33 2003 From: reportlab-users@reportlab.com (Robin Becker) Date: Wed, 12 Nov 2003 11:16:33 +0000 Subject: [reportlab-users] ttfonts in renderPM Message-ID: I have had some success in adding TTF support to renderPM. The current state of play is that if freetype2 is available and made known to setup.py we can compile _renderPM to support truetype. It works as follows. 1) register the font in the normal way using pdfmetrics.registerFont(ttfonts.TTFont(fontName, ttf_filename)) 2) use it. String(x, y, text, fontName=fontName, fontSize = fontSize) Internals ========= We are currently still using the original mechanism and also freetype to get the curves for drawing fonts. So when setFont is called on a _renderPM.gstate the search is as follows check to see if any gt1 parsed font is known if yes then use it if pdfmetrics fonts dictionary has a font[name]: if font[name]._ft_face exists: use that for freetype elif font[name]._ttf_data exists: font[name]._ft_face = FT_New_Memory_Face(.....) else: fail return use the _ft_face as the current font. If the above fails we are currently allowing an attempt at using pdfmetrics.getFont(fontName) to locate a suitable font. this currently will only search for T1 fonts. If a font is found in this last gasp we then assume it's T1 and use _renderPM.makeT1Font(fontName,f .face.findT1File(),f.encoding.vector) to get it known. getFont could be extended to dynamically load other fonts, but we would then need to avoid the makeT1Font if the discovered font wasn't of the required kind. If the above succeeds we set the gstate's font to be either a gt1 font or a freetype face. We have to keep extra state to allow the curve generation mechanism to distinguish between the different font kinds. Problems ======== One problem with the above is that we have two mechanisms for font curves, we could use a modified scheme to use FT for type 1 as well. Another problem is that even registered T1 fonts require us to check Future ====== There's no particular preference for TTF in the above. If we start using OTF then it can be adapted easily to do that as well. The current scheme is not caching glyphs/curves so it is probably not very time efficient. It does cache the face (using the _ft_face attribute). -- Robin Becker From reportlab-users@reportlab.com Wed Nov 12 15:07:09 2003 From: reportlab-users@reportlab.com (Richard Austin) Date: Wed, 12 Nov 2003 15:07:09 -0000 Subject: [reportlab-users] Testing Message-ID: Testing. From reportlab-users@reportlab.com Thu Nov 13 09:07:48 2003 From: reportlab-users@reportlab.com (Robin Becker) Date: Thu, 13 Nov 2003 09:07:48 +0000 Subject: [reportlab-users] testing Message-ID: <1AosXKAkn0s$EwDs@jessikat.fsnet.co.uk> This is a test message to see if the list is alive. -- Robin Becker From reportlab-users@reportlab.com Thu Nov 13 19:28:10 2003 From: reportlab-users@reportlab.com (Marius Gedminas) Date: Thu, 13 Nov 2003 21:28:10 +0200 Subject: [reportlab-users] Come on, i am so messed up and i need anything from u In-Reply-To: <20031111213603.31696.qmail@web60001.mail.yahoo.com> References: <20031110225001.GB32585@gintaras> <20031111213603.31696.qmail@web60001.mail.yahoo.com> Message-ID: <20031113192810.GD4789@gintaras> --cHMo6Wbp1wrKhbfi Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Nov 11, 2003 at 01:36:03PM -0800, sarah el-lawindy wrote: > Marius Gedminas , > thanks for replying. here is the code i wrote: >=20 > import reportlab.rl_config > reportlab.rl_config.warnOnMissingFontGlyphs =3D 0=20 > from reportlab.pdfbase import pdfmetrics > from reportlab.pdfbase.ttfonts import TTFont > from reportlab.pdfgen import canvas > c =3D canvas.Canvas('t.pdf') > pdfmetrics.registerFont(TTFont('ArabicRiyadh', 'ArabicRiyadh.ttf')) > from reportlab.lib.fonts import addMapping > addMapping('ArabicRiyadh', 0, 0, 'ArabicRiyadh') > c.setFont('ArabicRiyadh', 32) This line is suspect: > TEST =3D u'?????' This can work only if you use Python 2.3 and have an appropriate character coding specified near the top of the file. As a first step, could you replace real characters with Unicode escapes, e.g. TEST =3D u'\u1234\u5678\u9ABC' Find out the real Unicode numbers for the characters you use; I cannot do that because I only see ASCII question mark characters in your email. If it works, you can try TEST =3D unicode('?????', 'encoding-used-for-arabic-text') Substitute the appropriate encoding up there, I do not know which one is usually used for Arabic. Marius Gedminas --=20 I am right now in the process of reading the Xft source code (the suspense = near the end of Chapter 7 is unbearable) [...] -- Juliusz Chroboczek --cHMo6Wbp1wrKhbfi Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.3 (GNU/Linux) iD8DBQE/s9tKkVdEXeem148RAk1jAJ99/QHEguy2BkLnKCy62ohX3JPBjQCePswn aA6MTXl63X9Uj9BfS3Bvcmo= =26oy -----END PGP SIGNATURE----- --cHMo6Wbp1wrKhbfi-- From reportlab-users@reportlab.com Fri Nov 14 00:54:34 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Fri, 14 Nov 2003 00:54:34 -0000 Subject: [reportlab-users] RE: Tracing and Debugging support in Platypus In-Reply-To: <2546C8F5D3D2D411857F00508BDCA4E80125F929@dalbar_mail.dalbar.com> Message-ID: > Hi Andy - > > What you proposed for tracing info sounds great. Maybe we could > just add an > option that lets you catch an error, trace/log it, skip over that flowable > (maybe print a big X or something in the space as a placeholder) and > continue printing. My philosophy is it's better to be able to show the > report to the boss with one page missing, than have all but one > page working > and nothing to show for it. This could also provide a way to visually see > the problem. Of course, there would have to be a way to turn this off for > web-based system where reports are sent directly to the end user. This makes sense. I will try to add some errorHandlingMode to doctemplate's handleFlowable method on the next pass. Probably at the weekend. - Andy From reportlab-users@reportlab.com Sat Nov 15 11:08:47 2003 From: reportlab-users@reportlab.com (Andreas Jung) Date: Sat, 15 Nov 2003 12:08:47 +0100 Subject: [reportlab-users] Image() hangs Message-ID: <2147483647.1068898127@[192.168.0.101]> I installed latest Reportlab and latest PIL release on Linux and MacOSX. When I run the gfe.py script from the Demos section then everything works fine. When I add "Elements.append(Image('some.jpg'))" then process hangs (I waited for 5 minutes). This behaviour is reproducable under Linux and MacOSX. Any ideas? -aj From reportlab-users@reportlab.com Sat Nov 15 11:12:27 2003 From: reportlab-users@reportlab.com (Jerome Alet) Date: Sat, 15 Nov 2003 12:12:27 +0100 Subject: [reportlab-users] Image() hangs In-Reply-To: <2147483647.1068898127@[192.168.0.101]> References: <2147483647.1068898127@[192.168.0.101]> Message-ID: <20031115111227.GA18852@mail.librelogiciel.com> On Sat, Nov 15, 2003 at 12:08:47PM +0100, Andreas Jung wrote: > I installed latest Reportlab and latest PIL release on Linux and MacOSX. > When I run the gfe.py script from the Demos section then everything works > fine. When I add "Elements.append(Image('some.jpg'))" then process > hangs (I waited for 5 minutes). This behaviour is reproducable under Linux > and MacOSX. Any ideas? Always with the same picture or not ? I've already seen PIL fail miserably (but not hang) with some images which were correct in other tools. bye, Jerome Alet -- "A non-free program is a predatory social system that keeps people in a state of domination and division, and uses the spoils to dominate more." - RMS From reportlab-users@reportlab.com Sat Nov 15 11:17:19 2003 From: reportlab-users@reportlab.com (Jerome Alet) Date: Sat, 15 Nov 2003 12:17:19 +0100 Subject: [reportlab-users] Image() hangs In-Reply-To: <20031115111227.GA18852@mail.librelogiciel.com> References: <2147483647.1068898127@[192.168.0.101]> <20031115111227.GA18852@mail.librelogiciel.com> Message-ID: <20031115111718.GA19085@mail.librelogiciel.com> On Sat, Nov 15, 2003 at 12:12:27PM +0100, Jerome Alet wrote: > On Sat, Nov 15, 2003 at 12:08:47PM +0100, Andreas Jung wrote: > > I installed latest Reportlab and latest PIL release on Linux and MacOSX. > > When I run the gfe.py script from the Demos section then everything works > > fine. When I add "Elements.append(Image('some.jpg'))" then process > > hangs (I waited for 5 minutes). This behaviour is reproducable under Linux > > and MacOSX. Any ideas? > > I've already seen PIL fail miserably (but not hang) with some images > which were correct in other tools. I just remember that jpeg images are dealed with internally in RL. sorry Jerome Alet -- "A non-free program is a predatory social system that keeps people in a state of domination and division, and uses the spoils to dominate more." - RMS From reportlab-users@reportlab.com Sat Nov 15 11:25:21 2003 From: reportlab-users@reportlab.com (Robin Becker) Date: Sat, 15 Nov 2003 11:25:21 +0000 Subject: [reportlab-users] Image() hangs In-Reply-To: <2147483647.1068898127@[192.168.0.101]> References: <2147483647.1068898127@[192.168.0.101]> Message-ID: In article <2147483647.1068898127@[192.168.0.101]>, Andreas Jung writes >I installed latest Reportlab and latest PIL release on Linux and MacOSX. >When I run the gfe.py script from the Demos section then everything works >fine. When I add "Elements.append(Image('some.jpg'))" then process >hangs (I waited for 5 minutes). This behaviour is reproducable under Linux >and MacOSX. Any ideas? > >-aj >_______________________________________________ >reportlab-users mailing list >reportlab-users@reportlab.com >http://two.pairlist.net/mailman/listinfo/reportlab-users > well I tried this in windows Elements.append(Image(r'\code\reportlab\graphics\pmout\renderPM0.jpg')) where that jpg is part of the output of the test built into renderPM.py and it seems to work for me. I put the image in the first element however. Does this happen only for jpegs? Have you tried a gif or png? -- Robin Becker From reportlab-users@reportlab.com Sun Nov 16 09:12:16 2003 From: reportlab-users@reportlab.com (sarah el-lawindy) Date: Sun, 16 Nov 2003 01:12:16 -0800 (PST) Subject: [reportlab-users] Come on, i am so messed up and i need anything from u In-Reply-To: Message-ID: <20031116091216.28125.qmail@web60001.mail.yahoo.com> --0-1233591207-1068973936=:26055 Content-Type: text/plain; charset=us-ascii Sir, i forget telling u something , a warning was araised during compilation : sys:1: DeprecationWarning: Non-ASCII character '\xca' in file wxApp1.py on line 42, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details C:\PYTHON23\lib\reportlab\pdfbase\ttfonts.py:309: FutureWarning: x<Sir,
 i forget telling u something , a warning was araised during compilation :

         sys:1: DeprecationWarning: Non-ASCII character '\xca' in file wxApp1.py on line 42, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
      C:\PYTHON23\lib\reportlab\pdfbase\ttfonts.py:309: FutureWarning: x<<y losing bits or changing sign will return a long in Python 2.4 and up

    ####where line 42 is the unicode string  i want to write in the pdf file

so i fetched the given URL (pep-0263), from it , i understood that if we want to use a certain encoding, then the whole src code of the python should use the same encoding.
 i assumed then that we need to change 1st the file encoding  and then we could use the one that is used in arabic (normally, the arabic encoding used with windows is - AR8MSWIN1256)(p.s. the platform used is win98 )
i got 2 questions then:
  1. whether i got that document wrong or right?
  2. if i got it right, how to change the source code file encoding?

thanks u for ur concern,
   sarah ellawindy

 


Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard --0-1233591207-1068973936=:26055-- From reportlab-users@reportlab.com Sat Nov 15 11:20:28 2003 From: reportlab-users@reportlab.com (Andreas Jung) Date: Sat, 15 Nov 2003 12:20:28 +0100 Subject: [reportlab-users] Image() hangs In-Reply-To: <20031115111227.GA18852@mail.librelogiciel.com> References: <2147483647.1068898127@[192.168.0.101]> <20031115111227.GA18852@mail.librelogiciel.com> Message-ID: <2147483647.1068898828@[192.168.0.101]> --On Samstag, 15. November 2003 12:12 Uhr +0100 Jerome Alet wrote: > On Sat, Nov 15, 2003 at 12:08:47PM +0100, Andreas Jung wrote: >> I installed latest Reportlab and latest PIL release on Linux and MacOSX. >> When I run the gfe.py script from the Demos section then everything works >> fine. When I add "Elements.append(Image('some.jpg'))" then process >> hangs (I waited for 5 minutes). This behaviour is reproducable under >> Linux and MacOSX. Any ideas? > > Always with the same picture or not ? > Also with different pictures. Andreas From reportlab-users@reportlab.com Sat Nov 15 15:31:05 2003 From: reportlab-users@reportlab.com (Dinu Gherman) Date: Sat, 15 Nov 2003 16:31:05 +0100 Subject: [reportlab-users] Image() hangs In-Reply-To: <20031115111227.GA18852@mail.librelogiciel.com> Message-ID: Jerome Alet: > I've already seen PIL fail miserably (but not hang) with some images > which were correct in other tools. Especially TIFFs... Dinu -- Dinu C. Gherman - http://python.net/~gherman ...................................................................... "As long as people believe in absurdities, they will continue to commit atrocities." (Voltaire) From reportlab-users@reportlab.com Tue Nov 18 17:06:58 2003 From: reportlab-users@reportlab.com (Ben Mitchell) Date: Tue, 18 Nov 2003 09:06:58 -0800 Subject: [reportlab-users] Document Security In-Reply-To: References: Message-ID: <1069175218.3fba51b235b91@www.mitchellfamily.com> Hi Folks, I'm new to the list and to ReportLab, and I've read through the documentation but couldn't find much in the way of references to securing the PDFs I generate. If I don't want people to be able to extract / copy / past the text I put into the PDFs I'm generating, is there a good way to do that? I know I've seen PDFs in the past that worked this way - just not sure what the process would be for creating one. Thanks in advance! -Ben From reportlab-users@reportlab.com Tue Nov 18 17:17:54 2003 From: reportlab-users@reportlab.com (Jerome Alet) Date: Tue, 18 Nov 2003 18:17:54 +0100 Subject: [reportlab-users] Document Security In-Reply-To: <1069175218.3fba51b235b91@www.mitchellfamily.com> References: <1069175218.3fba51b235b91@www.mitchellfamily.com> Message-ID: <20031118171754.GA11514@mail.librelogiciel.com> Hi, On Tue, Nov 18, 2003 at 09:06:58AM -0800, Ben Mitchell wrote: > > I'm new to the list and to ReportLab, and I've read through the documentation > but couldn't find much in the way of references to securing the PDFs I generate. I guess ReportLab's commercial products can handle this. bye Jerome Alet -- "A non-free program is a predatory social system that keeps people in a state of domination and division, and uses the spoils to dominate more." - RMS From reportlab-users@reportlab.com Wed Nov 19 08:34:17 2003 From: reportlab-users@reportlab.com (John Leach) Date: Wed, 19 Nov 2003 19:34:17 +1100 Subject: [reportlab-users] Advice on switching from XSL-FO (FOP) to ReportLabs In-Reply-To: References: Message-ID: <200311191934.17259.reportlab@osware.net> > We're in the middle of developing a large ERP system, a big component of > which is a reporting module. I hope that's in Python - that would be lovely. Never had time to finish the one I started. > We're currently evaluating other free and open-source tools. We've played > around with the ReportLabs demos and are impressed, especially with the > speed of execution, so we're asking if anyone familiar with the ReportLabs > toolkit could give us some advice/pointers. I use the wonderful ReportLab to produce invoice/purchase orders etc out of legacy systems like SAP etc. The thing that I notice is how very different these documents can be between companies - some want multiple copies, some want watermarks, etc, etc. So the approach I have adopted is that I have a GUI that allows the header/footer/detail lines/continuation headers/footers to be designed on screen - and this then generates a script which can be tweaked manually using a text editor according to the particular requirements of the user. Others no doubt have different approaches. I've never thought it possible to have a GUI that does everything that people are going to need in a specialsied business document. BTW I highly recommend ReportLab. John Leach http://osware.net From reportlab-users@reportlab.com Wed Nov 19 17:40:53 2003 From: reportlab-users@reportlab.com (Tim Roberts) Date: Wed, 19 Nov 2003 09:40:53 -0800 Subject: [reportlab-users] Document Security In-Reply-To: <20031119070627.821F024E56@two.pairlist.net> Message-ID: <200311191740.hAJHeqH05648@probo.probo.com> On Tue, 18 Nov 2003 09:06:58 -0800, Ben Mitchell wrote: > >If I don't want people to be able to extract / copy / past the text I put into >the PDFs I'm generating, is there a good way to do that? No. >I know I've seen PDFs in the past that worked this way - just not sure >what the process would be for creating one. Your goal is silly. As long as I have a PDF, I can print your document and scan it with an OCR reader. I can use the PrintScreen key to take a snapshot to a bitmap and use an OCR reader. The visually-impaired will curse you for breaking their screen readers. Preventing cut-and-paste gives you a false sense of security. -- - Tim Roberts, timr@probo.com Providenza & Boekelheide, Inc. From reportlab-users@reportlab.com Thu Nov 20 15:19:23 2003 From: reportlab-users@reportlab.com (Ben Mitchell) Date: Thu, 20 Nov 2003 07:19:23 -0800 Subject: [reportlab-users] Document Security In-Reply-To: <200311191740.hAJHeqH05648@probo.probo.com> References: <200311191740.hAJHeqH05648@probo.probo.com> Message-ID: Hey Tim, thanks for the helpful post. Just so you know, you can also use any of the many encrypted-PDF crackers out there to remove the restrictions altogether. Probably a lot faster than your current OCR approach. (Though there is that whole federal criminal offense thing you've gotta worry about with the DMCA and all.) Anyway, it turns out that most people don't have the skills and motivation that someone of your obvious ability does Tim, and they tend to give up pretty easy. It also turns out that I have no delusions about the depth of security generated by such restrictions (but hey, thanks again for assuming the worst of me). Instead, I'm looking to raise the bar a tiny bit to cut down on secondary distribution of my content in a presentation other than the original PDF, which will contain all kinds of good faith reminders that you shouldn't be distributing the thing around in the first place, and some personally identifiable information about the document's purchaser to ensure that he's reluctant to release it into the wild. A motivated individual can obviously thwart this if he cares, but if the documents are priced reasonably in the first place, the incentive is low. So for anyone interested in an ANSWER (rather than useless posts telling me I'm dumb) I've found one. iText (open source from www.lowagie.com) has as part of its distribution a command-line Java utility (which I've now tested on Linux, Mac OS X and Windows without problems) called encrypt_pdf. It takes as input an existing PDF filename, an output filename, passwords to apply, and a bitmask indicating how you'd like the standard PDF security parameters applied, and creates a new PDF as that's encrypted and, if you set the bitmask right, can't be printed, copied, etc (except by my good friend Tim of course). So this works great for me, because I can generate PDFs in my favorite and familiar Python with Reportlab, and then just invoke an external program to encrypt the document as a last step. I'm happy now. Have a great day everyone. Especially you, Tim. -Ben On Nov 19, 2003, at 9:40 AM, Tim Roberts wrote: > On Tue, 18 Nov 2003 09:06:58 -0800, Ben Mitchell > > wrote: >> >> If I don't want people to be able to extract / copy / past the text I >> put into >> the PDFs I'm generating, is there a good way to do that? > > No. > >> I know I've seen PDFs in the past that worked this way - just not sure >> what the process would be for creating one. > > Your goal is silly. As long as I have a PDF, I can print your document > and scan it with an OCR reader. I can use the PrintScreen key to take > a > snapshot to a bitmap and use an OCR reader. The visually-impaired will > curse you for breaking their screen readers. > > Preventing cut-and-paste gives you a false sense of security. > > -- > - Tim Roberts, timr@probo.com > Providenza & Boekelheide, Inc. > > > _______________________________________________ > reportlab-users mailing list > reportlab-users@reportlab.com > http://two.pairlist.net/mailman/listinfo/reportlab-users From reportlab-users@reportlab.com Thu Nov 20 17:12:34 2003 From: reportlab-users@reportlab.com (Dinu Gherman) Date: Thu, 20 Nov 2003 18:12:34 +0100 Subject: [reportlab-users] Adding hyphenation capability to ReportLab ToolKit Message-ID: Hi, I've stumbled several times over situations where having a decent hyphenation feature in RLTK would have made a difference in convin- cing some client to chose RL over other solutions like LaTeX, say. Now that OpenSourceExperts.com has gone live, I think it would be a nice way to get such a feature going (and many others of course). If you don't know yet about it, go here, it's worth a look: http://www.opensourcexperts.com/Tour/index.html Then, I've created a so-called Feature Fund which hopefully will be able to attract other co-funders and a solution provider will even- tually see enough money in the fund to bid for implementing the ul- timate hyphenation solution. The description on the following page lacks some whitespace as you can imagine: http://www.opensourcexperts.com/Tasks/viewTask.html?tid=136 To co-fund the feature you need to register as a client and transfer some money (minimum 1,10 Euro), to bid for implementing the solution you need to register as a solution provider. There are already many such providers on a daily growing list: http://www.opensourcexperts.com/Index/index_html I hope this is a way of accelerating some ToolKit development in ways that depend less on the availability or non-availability of individual ReportLab members, who will still need to approve such solutions somehow, of course. Let me know what you think... Dinu -- Dinu C. Gherman - http://python.net/~gherman ...................................................................... "The best way to predict the future is to invent it." (Alan Kay) From reportlab-users@reportlab.com Fri Nov 21 03:52:11 2003 From: reportlab-users@reportlab.com (Nicholas Riley) Date: Thu, 20 Nov 2003 21:52:11 -0600 Subject: [reportlab-users] pageCatcher doesn't read PDFs created by PIL Message-ID: <20031121035211.GC34053@uiuc.edu> Hi, I'm writing a document management system in Python. It scans pages, makes PDFs of them with PIL, writes the pages to a database, and later constructs aggregate PDFs on demand from a Web interface, using ReportLab. I've had no trouble combining various PDF files using pageCatcher, except when I try to include PIL-generated PDFs. My guess is that PIL is doing something wrong in generating the PDFs, but I'm in the unfortunate position of having several hundred images in the database that I can't get out now. I can't even convert the pages back to another format, because PIL can't read PDF, it can only write it. Here's a very simple test case: from reportlab.pdfgen import canvas from rlextra.pageCatcher.pageCatcher import copyPages import Image Image.new('RGB', (100,100)).save('d:\\pil.pdf') cvs = canvas.Canvas('d:\\output.pdf') copyPages('d:\\pil.pdf', cvs) cvs.save() This gives me: D:\>python22\python copy.py Traceback (most recent call last): File "copy.py", line 7, in ? copyPages('d:\\pil.pdf', cvs) File "_p:rlextra\pageCatcher\pageCatcher.py", line 1242, in copyPages File "_p:rlextra\pageCatcher\pageCatcher.py", line 678, in parse File "_p:rlextra\pageCatcher\pageCatcher.py", line 784, in getindirectObject File "_p:rlextra\pageCatcher\pageCatcher.py", line 822, in gettrue ValueError: `endobj` keyword not found 1290 '5 0 obj\n<<\n/Length 3' I'm using ReportLab 1.18, RLExtra 1.17, Python 2.2.3 and PIL 1.1.4 on Windows 2000 Server. I am not necessarily asking for pageCatcher to be fixed, since I the problem may be in PIL, but I do need to figure out how to fix my PDF files, and get PIL to generate valid ones in the future. Acrobat Reader does not appear to choke on the PIL-generated files, but Ghostscript does (which was my backup solution for page merging...) Help would be gratefully appreciated. Thanks, -- =Nicholas Riley | From reportlab-users@reportlab.com Fri Nov 21 10:24:03 2003 From: reportlab-users@reportlab.com (Dinu Gherman) Date: Fri, 21 Nov 2003 11:24:03 +0100 Subject: [reportlab-users] Adding hyphenation capability to ReportLab ToolKit In-Reply-To: Message-ID: Hi, I realize the fund description is visible right now only for people registered on opensourcexperts.com, which will hopefully change... Until then, I'm citing the current "specification" of that feature fund below for further reference. Of course, it can be further fine- tuned before a bid is accepted... Regards, Dinu "Adding hyphenation capability to ReportLab ToolKit" http://www.opensourcexperts.com/Tasks/viewTask.html?tid=136 --------------------------------------------------------------- Currently the ReportLab ToolKit lacks hyphenation capabilities, both in its basic Pdfgen and Platypus subpackages. This is a major drawback in certain types of applications. The objective of this Feature Fund is to create a hyphenation solution for Pdfgen as well as Platypus, showing the following properties after being included in the RLTK: 1) solution is usable on an optional basis, 2) general performance decrease of less than 20% when enabling the solution, 3) solution allows for multi-language hyphenation dictionaries, 4) used dictionaries must be available under Open Source-like terms, 5) constraints to left-to-right languages are acceptable, but solutions anticipating possibilities to include other writing systems in the future are preferred. Given the property constraint in item 2, a C function is most likely the most promissing route for a successful implementation. The use of LaTeX-like hyphenation dictionaries is recommended, but not mandatory. RLTK: http://www.reportlab.org/rl_toolkit.html -- Dinu C. Gherman - http://python.net/~gherman ...................................................................... "The best way to predict the future is to invent it." (Alan Kay) From reportlab-users@reportlab.com Fri Nov 21 17:40:09 2003 From: reportlab-users@reportlab.com (Tim Roberts) Date: Fri, 21 Nov 2003 09:40:09 -0800 Subject: [reportlab-users] Document Security In-Reply-To: <20031121082846.8E3F724F36@two.pairlist.net> Message-ID: <200311211740.hALHe9H09225@probo.probo.com> On Thu, 20 Nov 2003 07:19:23 -0800, Ben Mitchell wrote: > >Hey Tim, thanks for the helpful post. Unsolicited and unwanted advice at low cost, that's my motto. -- - Tim Roberts, timr@probo.com Providenza & Boekelheide, Inc. From reportlab-users@reportlab.com Sat Nov 22 16:56:12 2003 From: reportlab-users@reportlab.com (Nicholas Riley) Date: Sat, 22 Nov 2003 10:56:12 -0600 Subject: [reportlab-users] Re: pageCatcher doesn't read PDFs created by PIL In-Reply-To: <20031121035211.GC34053@uiuc.edu> References: <20031121035211.GC34053@uiuc.edu> Message-ID: <20031122165612.GA51443@uiuc.edu> On Thu, Nov 20, 2003 at 09:52:11PM -0600, Nicholas Riley wrote: > My guess is that PIL is doing something wrong in generating the > PDFs, but I'm in the unfortunate position of having several hundred > images in the database that I can't get out now. I can't even > convert the pages back to another format, because PIL can't read > PDF, it can only write it. Turned out this was quite easy to fix. I've modified PIL so it generates valid PDFs, and written a script to repair invalid PDFs generated by older PIL versions; now pageCatcher works perfectly. Details are here: -- =Nicholas Riley | From reportlab-users@reportlab.com Tue Nov 25 22:35:56 2003 From: reportlab-users@reportlab.com (Dirk Datzert) Date: Tue, 25 Nov 2003 23:35:56 +0100 Subject: [reportlab-users] pyRXP: python setup.py bdist_rpm Message-ID: <3FC3D94C.4D4CD3ED@rasselstein-hoesch.de> Hi all, please add the following MANIFEST.in file to the CVS of pyRXP MANIFEST.in: global-include *.h The RPM build process does not include header files. Regards, Dirk From reportlab-users@reportlab.com Wed Nov 26 08:09:19 2003 From: reportlab-users@reportlab.com (Robin Becker) Date: Wed, 26 Nov 2003 08:09:19 +0000 Subject: [reportlab-users] pyRXP: python setup.py bdist_rpm In-Reply-To: <3FC3D94C.4D4CD3ED@rasselstein-hoesch.de> References: <3FC3D94C.4D4CD3ED@rasselstein-hoesch.de> Message-ID: In article <3FC3D94C.4D4CD3ED@rasselstein-hoesch.de>, Dirk Datzert writes >Hi all, > >please add the following MANIFEST.in file to the CVS of pyRXP > >MANIFEST.in: >global-include *.h > >The RPM build process does not include header files. > >Regards, >Dirk done. -- Robin Becker From reportlab-users@reportlab.com Wed Nov 26 23:46:19 2003 From: reportlab-users@reportlab.com (Jade Meskill) Date: Wed, 26 Nov 2003 16:46:19 -0700 Subject: [reportlab-users] problem with pdf2ps Message-ID: I am having trouble with some of my ReportLab generated PDFs. When I convert them to postscript using pdf2ps i get the following error: Error: /ioerror in --token-- Operand stack: --dict:6/6(L)-- 2 --dict:82/82(ro)(G)-- --nostringval-- Execution stack: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 1 3 %oparray_pop 1 3 %oparray_pop --nostringval-- 2 1 1 --nostringval-- %for_pos_int_continue --nostringval-- --nostringval-- --nostringval-- --nostringval-- %array_continue --nostringval-- false 1 %stopped_push --nostringval-- %loop_continue --nostringval-- --nostringval-- --nostringval-- Dictionary stack: --dict:1051/1123(ro)(G)-- --dict:0/20(G)-- --dict:92/200(L)-- --dict:92/200(L)-- --dict:97/127(ro)(G)-- --dict:229/230(ro)(G)-- --dict:19/24(L)-- --dict:4/6(L)-- --dict:22/31(L)-- Current allocation mode is local GNU Ghostscript 7.05: Unrecoverable error, exit code 1 This is only happening in a few of my documents, and I can't seem to find a common thread between them. If I open them up in Preview on Mac OS X or in Acrobat Reader I can print it just fine, but printing using lpr on linux causes invalid postscript to be sent to the printer. Can someone give me a hint as to where I can look to see what is causing this error? Thanks, Jade From reportlab-users@reportlab.com Thu Nov 27 00:48:13 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Thu, 27 Nov 2003 00:48:13 -0000 Subject: [reportlab-users] problem with pdf2ps In-Reply-To: Message-ID: > GNU Ghostscript 7.05: Unrecoverable error, exit code 1 > > This is only happening in a few of my documents, and I can't seem to > find a common thread between them. Do the bad ones contain a particular bitmap image or logo? - Andy From reportlab-users@reportlab.com Tue Nov 25 17:03:03 2003 From: reportlab-users@reportlab.com (Mau) Date: Tue, 25 Nov 2003 18:03:03 +0100 Subject: [reportlab-users] Table height Message-ID: <001701c3b375$fd6fbd50$a4ff09d5@KABUTO> This is a multi-part message in MIME format. ------=_NextPart_000_0014_01C3B37E.5EBCF980 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi, Im making an application, where I print into a pdf a data array. I = get each row of the array and place it in each row of a table. I fix the = columns width of the table. I dont fix the rows height of the table, so = when I fill in the data, there are some rows higher than others (that is = what i want). Now, in my pdf i have 3 frames, a header frame, a data frame and a = footer frame. The table goes inside the data frame. I tried to split the = data of the array in several pages by calculating the number of lines I = could place in the data frame and getting the same number of rows from = the table, but as the table has some rows higher than others (a row from = the array can take 3 rows from the table) i cant relay on my previous = calculations. =20 I was thinking of calculating the table's height or each table's row = height , and then split it depending on the data frame's height , but I = dont seem to be able to find the way, if there is one. so, can someone help me with this? is there away to calculate a table's = height or a table's row height? Am I going in the bad direction? Should = I try other methods? =20 well, any help is welcome.=20 cya. Mau ------=_NextPart_000_0014_01C3B37E.5EBCF980 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi,
 
    Im making an = application,=20 where I print into a pdf a data array. I get each row of the array = and=20 place it in each row of a table. I fix the columns width of the table. I = dont=20 fix the rows height  of the table, so when I fill = in the data,=20 there are some rows higher than others (that is what i = want).
    Now, in my pdf i = have 3 frames,=20 a header frame, a data frame and a footer frame. The table goes = inside the=20 data frame. I tried to split the data of the array in several pages = by=20 calculating the number of lines I could place in the data frame and = getting=20 the same number of rows from the table, but as the table has some rows = higher=20 than others (a row from the array can take 3 rows from the table) i cant = relay=20 on my previous calculations. 
    I was thinking of = calculating=20 the table's height or each table's row height , and = then split it=20 depending on the data frame's height , but I dont seem to be able = to find=20 the way, if there is one.
 
 
so, can someone help me with this? is = there away to=20 calculate a table's height or a table's row height? Am I going in the = bad=20 direction? Should I try other methods? 
 
well, any help is welcome.
 
cya.
 
Mau
------=_NextPart_000_0014_01C3B37E.5EBCF980-- From reportlab-users@reportlab.com Wed Nov 26 03:13:34 2003 From: reportlab-users@reportlab.com (Guruprasad) Date: Wed, 26 Nov 2003 11:13:34 +0800 Subject: [reportlab-users] (no subject) Message-ID: This is a multi-part message in MIME format. ------=_NextPart_000_0003_01C3B40E.551FE000 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Dear Sir, Is print capture is possible with Report Lab. V. Guruprasad HOMEDICARE 30, 6TH Main Road, R.A.Puram. Chennai.India. Ph: 24329851/52 ------=_NextPart_000_0003_01C3B40E.551FE000 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Dear=20 Sir,
 
Is print=20 capture is possible with Report Lab.

V.=20 Guruprasad
HOMEDICARE
30,=20 6TH Main Road,
R.A.Puram. Chennai.India.
Ph:=20 24329851/52

------=_NextPart_000_0003_01C3B40E.551FE000-- From reportlab-users@reportlab.com Thu Nov 27 10:57:20 2003 From: reportlab-users@reportlab.com (Andreas Jung) Date: Thu, 27 Nov 2003 11:57:20 +0100 Subject: [reportlab-users] (no subject) In-Reply-To: References: Message-ID: <2147483647.1069934240@[192.168.0.101]> Reportlab is for *creating* PDF and not for capturing. -aj --On Mittwoch, 26. November 2003 11:13 Uhr +0800 Guruprasad wrote: > Dear Sir, > > Is print capture is possible with Report Lab. > V. Guruprasad > HOMEDICARE > 30, 6TH Main Road, > R.A.Puram. Chennai.India. > Ph: 24329851/52 From reportlab-users@reportlab.com Thu Nov 27 19:27:38 2003 From: reportlab-users@reportlab.com (Mau) Date: Thu, 27 Nov 2003 20:27:38 +0100 Subject: [reportlab-users] RE: Table Height Message-ID: <000801c3b51c$85e86ea0$bafa09d5@KABUTO> This is a multi-part message in MIME format. ------=_NextPart_000_0005_01C3B524.E6AC2F80 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi again, Well, seems i made it by myself, i love IDLE , hehe... i made a = table 't' , just after a t._calc(w,h) I could get the height of the = table and of the rows. t._rowHeights (returns an array with all the rows' heights) t._height (returns the table's height) cya. Mau ------=_NextPart_000_0005_01C3B524.E6AC2F80 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi again,
 
    Well, seems i made = it by myself,=20 i love IDLE , hehe... i made a table 't'  , just after a=20 t._calc(w,h) I could get the height of the table and of the=20 rows.
t._rowHeights (returns an array with = all=20 the rows' heights)
t._height (returns the table's = height)
 
 cya.
 
Mau
------=_NextPart_000_0005_01C3B524.E6AC2F80-- From reportlab-users@reportlab.com Fri Nov 28 12:24:40 2003 From: reportlab-users@reportlab.com (Henning von Bargen) Date: Fri, 28 Nov 2003 13:24:40 +0100 Subject: [reportlab-users] RE: Table Height Message-ID: <71674BEFF0E2D41196F500600811AA6B5BADEA@TUP-BO1-EXC> It is not clear what you want to achieve: Do you mean you want to repeat the footer on each page of the table or do you want to see the footer only on the last page? As you probably know, repeating the header on each page is no problem, just use the repeatRows argument in the Table = constructor. If the footer should print only on the last page, there's no problem. If you really want the footer on every page of the table, it becomes difficult. I think you would have to subclass the Table class and implement the footer row yourself. Basically this means changing the _splitRows function. Look for the block following if repeatRows: , you would have to do something similar for the footer, I once = implemented something like this for a test. BTW what information would you print in the footer? Something like a running total? This could be tricky perhaps. What you are trying right now is dividing the long table into many = small tables, is that correct? I guess that's why you are trying to determine the = height yourself. It seems the wrong direction for me, because it contradicts the ideas = of platypus. If you're splitting the table into many small ones just for performance reasons, you should also try my LongTable class (I can send it to you if you = like). It works the same as Table, but performs much better for long tables. Another option you can think about is to put the header and footer = portions into your page templates. Henning > -----Urspr=FCngliche Nachricht----- > Von: reportlab-users-request@reportlab.com [SMTP:reportlab-users-request@reportlab.com] > Gesendet am: Freitag, 28. November 2003 09:06 > An: reportlab-users@reportlab.com > Betreff: reportlab-users digest, Vol 1 #496 - 2 msgs >=20 > Send reportlab-users mailing list submissions to > reportlab-users@reportlab.com >=20 > To subscribe or unsubscribe via the World Wide Web, visit > http://two.pairlist.net/mailman/listinfo/reportlab-users > or, via email, send a message with subject or body 'help' to > reportlab-users-request@reportlab.com >=20 > From: "Mau" > To: > Date: Tue, 25 Nov 2003 18:03:03 +0100 > Subject: [reportlab-users] Table height > Reply-To: reportlab-users@reportlab.com >=20 > Hi, >=20 > Im making an application, where I print into a pdf a data array. = I =3D > get each row of the array and place it in each row of a table. I fix = the =3D > columns width of the table. I dont fix the rows height of the table, = so =3D > when I fill in the data, there are some rows higher than others (that = is =3D > what i want). > Now, in my pdf i have 3 frames, a header frame, a data frame and = a =3D > footer frame. The table goes inside the data frame. I tried to split = the =3D > data of the array in several pages by calculating the number of lines = I =3D > could place in the data frame and getting the same number of rows = from =3D > the table, but as the table has some rows higher than others (a row = from =3D > the array can take 3 rows from the table) i cant relay on my previous = =3D > calculations. > I was thinking of calculating the table's height or each table's = row =3D > height , and then split it depending on the data frame's height , but = I =3D > dont seem to be able to find the way, if there is one. >=20 >=20 > so, can someone help me with this? is there away to calculate a = table's =3D > height or a table's row height? Am I going in the bad direction? = Should =3D > I try other methods? >=20 > well, any help is welcome. >=20 > cya. >=20 > Mau From reportlab-users@reportlab.com Fri Nov 28 12:35:13 2003 From: reportlab-users@reportlab.com (Alexandre Ribeiro) Date: Fri, 28 Nov 2003 10:35:13 -0200 Subject: [reportlab-users] PLEASE REMOVE kra_qq@uenf.br In-Reply-To: <71674BEFF0E2D41196F500600811AA6B5BADEA@TUP-BO1-EXC> References: <71674BEFF0E2D41196F500600811AA6B5BADEA@TUP-BO1-EXC> Message-ID: <200311281035130840.00269259@200.20.228.33> PLEASE REMOVE kra_qq@uenf.br From reportlab-users@reportlab.com Fri Nov 28 13:28:54 2003 From: reportlab-users@reportlab.com (Henning von Bargen) Date: Fri, 28 Nov 2003 14:28:54 +0100 Subject: [reportlab-users] Paragraphs and hyphenation Message-ID: <71674BEFF0E2D41196F500600811AA6B5BADEB@TUP-BO1-EXC> Dinu Gherman and others (included myself) would like to have better hyphenation support for Paragraphs. # Hyphenation support for tables is not necessary IMHO, # because you can use Paragraphs inside table cells I just made some initial steps in this direction. I modified paragraph.py so that it works without painting over the right margin (for example if you have long words in a in narrow table column). AS OF NOW, THIS IS IMPLEMENTED ONLY FOR UNFORMATTED PARAGRAPHS If the word does not fit into the line, the modified paragraph breaklines method - first tries to find good hyphenation points (right now only by looking for "-", ";" "/" in the word). If it finds one, it splits the word at this point and puts the rest into the next line. - if there's no good hyphenation point AND the current line is still empty, the algorithm (at this time) puts as many characters as possible into the line and the rest flows into the next line. - If the word does not fit and the current line is not empty, the word flows into the next line. Example (view with a fixed-width font): Input: Example1: this is a hyphenation-example Example2: Bundesverkehrsministerium Output 9_ Output 12___ Example1: Example1: this is a this is a hyphenati hyphenation- on- example example Example2: Example2: Bundesverkeh Bundesver rsministeriu kehrsmini m sterium The next step would be to optionally attach a hyphenation object to a paragraph (or a fragment). If this hyphenation object is not None, it could be called from inside the breakLines algorithm. The obious solution for english hyphenation would be pyhnj. However, for the German language, pyhnj (libhnj) does not work very well. I developed a prototype for german hyphenation using the basic SiSiSi algorithm (see http://www.ads.tuwien.ac.at/research/SiSiSi/ ). I also asked the author if the SiSiSi solution could be donated to the public, but she denied. But the description of the basic algorithm is public and the basic algorithm is very simple. So I hacked down a (VERY PRE-ALPHA version) of the basic algorithm in Python. The key features of SiSiSi are: - it will only hyphenate words if it sure about what it does (no hyphenation of unknown words or if it not clear where to hypenate) - it knows about the word roots, prefixes and suffix, for example the word Silbentrennung is made up of the word roots "Silbe" and "Trenn" with the suffixes "n" and "ung". - It allows for different rankings of hyphenation points, for example Sil_ben=tren-nungs=ver_fahr-en. = : Very good break - : Medium break _ : Last resort Based on my experience so far, I would like the hyphenation routine to: 1) make use of the different rankings by assigning different penalty values to based on the ranking of the hyphenation position and the unused space in the current line; 2) for a given hyphenation point, tell the breakLines routine if a "shy" character 173 should be added to the first part or not. Example: When hyphenating after a "-", there shouldn't be a shy character. As a first step, we should only define an interface for the hyphenation class and a base implementation that only hyphenates after "-" characters. Other implementions can then use pyhnj or SiSiSi or whatever. If someone is interested in my results so far, I could send the files paragraph.py, longtables.py and the experimental wortzerlegung.py BTW Is there any "contrib" place reachable from reportlab.org where one could post such files? Henning From reportlab-users@reportlab.com Fri Nov 28 13:34:36 2003 From: reportlab-users@reportlab.com (Henning von Bargen) Date: Fri, 28 Nov 2003 14:34:36 +0100 Subject: [reportlab-users] RE: Table Height Message-ID: <71674BEFF0E2D41196F500600811AA6B5BADEC@TUP-BO1-EXC> > Well, seems i made it by myself, i love IDLE , hehe... i made a = > table 't' , just after a t._calc(w,h) I could get the height of the = > table and of the rows. > t._rowHeights (returns an array with all the rows' heights) > t._height (returns the table's height) Well, this may work now, but using internal variables of another object is a very bad idea in python. For example, your solution would not work with my fast LongTable class because it does not precalculate all heights in advance. Henning From reportlab-users@reportlab.com Fri Nov 28 15:12:48 2003 From: reportlab-users@reportlab.com (Robin Becker) Date: Fri, 28 Nov 2003 15:12:48 +0000 Subject: [reportlab-users] Paragraphs and hyphenation In-Reply-To: <71674BEFF0E2D41196F500600811AA6B5BADEB@TUP-BO1-EXC> References: <71674BEFF0E2D41196F500600811AA6B5BADEB@TUP-BO1-EXC> Message-ID: In article <71674BEFF0E2D41196F500600811AA6B5BADEB@TUP-BO1-EXC>, Henning von Bargen writes ......a bit puzzled about what an unformatted paragraph is :) > >Based on my experience so far, I would like the hyphenation routine to: >1) make use of the different rankings by assigning different penalty values >to >based on the ranking of the hyphenation position and the unused space in >the current line; >2) for a given hyphenation point, tell the breakLines routine if a "shy" >character 173 >should be added to the first part or not. >Example: When hyphenating after a "-", there shouldn't be a shy character. > >As a first step, we should only define an interface for the hyphenation >class >and a base implementation that only hyphenates after "-" characters. >Other implementions can then use pyhnj or SiSiSi or whatever. ....seems reasonable > >If someone is interested in my results so far, I could send the files >paragraph.py, longtables.py >and the experimental wortzerlegung.py > Please email me the files and I'll certainly have a look. I think we should have an upload slot, but John who deals with the .org site is on holiday this week so I can't be too positive. >BTW Is there any "contrib" place reachable from reportlab.org where one >could post such files? > >Henning -- Robin Becker From reportlab-users@reportlab.com Fri Nov 28 15:27:15 2003 From: reportlab-users@reportlab.com (Marek) Date: Fri, 28 Nov 2003 16:27:15 +0100 Subject: [reportlab-users] Problem with encoding in PythonPoint In-Reply-To: <20031128150728.915F424E92@two.pairlist.net> References: <20031128150728.915F424E92@two.pairlist.net> Message-ID: <3FC76953.50706@tlen.pl> Hello, First I thanks for very interesting open source solution. I'm newbie in PythonPoint and I have problem with encoding nation specific characters. I set header in my source xml document, but generated PDF still contains only some bushes. I tried to generate documents with nation specific characters by reportlab web site (http://www.reportlab.com/pp_demo.html), but the generated pdf did contained only 2 chars from 18... What should I doing? -- Regards Marek From reportlab-users@reportlab.com Fri Nov 28 16:05:59 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Fri, 28 Nov 2003 16:05:59 -0000 Subject: [reportlab-users] Problem with encoding in PythonPoint In-Reply-To: <3FC76953.50706@tlen.pl> Message-ID: <20031128160451.7C6B16218@smtp.uk.colt.net> > Hello, > First I thanks for very interesting open source solution. > I'm newbie in PythonPoint and I have problem with encoding > nation specific characters. > I set header > in my source xml document, but generated PDF still contains > only some bushes. > I tried to generate documents with nation specific characters > by reportlab web site > (http://www.reportlab.com/pp_demo.html), but the generated > pdf did contained only 2 chars from 18... > > What should I doing? > There is a more specific problem here: Acrobat Reader does not include a unicode font by default. It is necessary first to make sure you have a font which contain the characters, and register the font in a piece of Python code. See the Fonts chapter in the main ReportLab user guide; you can use TrueType or Type 1. We also support Asian languages presuming you have the Acrobat Asian font packs installed. PythonPoint is really dumb - the encoding header has no effect at all. You need to pass in data in your input file in the same encoding as the font. I hope this helps, Andy Robinson From reportlab-users@reportlab.com Fri Nov 28 16:27:39 2003 From: reportlab-users@reportlab.com (Chris K.) Date: Fri, 28 Nov 2003 17:27:39 +0100 Subject: [reportlab-users] frames vs. tables Message-ID: <3FC7777B.1030603@cm-applications.de> Hi, I’m writing an external Zope method based on the rlzope.py example. In contrast to the example I want to create three independent columns that I fill with flowables. Independent means that I need to be able to add a paragraph to a random column. My first approach was to use frames: class MyPDFDoc : class MyPageTemplate1(PageTemplate) : """My 1st page template.""" def __init__(self) : row1 = Frame( 0.3 * cm, 0.7 * cm, 9.3 * cm, 20 * cm, showBoundary=1) PageTemplate.__init__(self, "MyTemplate", [row2]) class MyPageTemplate2(PageTemplate) : """My 1st page template.""" def __init__(self) : row2 = Frame( 10 * cm, 0.7 * cm, 9.3 * cm, 20 * cm, showBoundary=1) PageTemplate.__init__(self, "MyTemplate", [row2]) def __init__(self, context, filename, text) : # save some datas self.context = context self.built = 0 self.objects = [] # we will build an in-memory document self.report = cStringIO.StringIO() # initialise a PDF document using ReportLab's platypus self.document = BaseDocTemplate(self.report) # add our page template self.document.addPageTemplates((self.MyPageTemplate2(self), self.MyPageTemplate1(self))) [… Add some flowables to the frames] However, only MyPageTemplate2 gets drawn. As far as I understand reportlab/platypus/ doctemplate.py, 'addPageTemplates' should be able to handle lists of frames. What’s the trick? Other question: For the above layout: are tables the better approach? Regards Chris From reportlab-users@reportlab.com Fri Nov 28 18:57:20 2003 From: reportlab-users@reportlab.com (Milos Prudek) Date: Fri, 28 Nov 2003 19:57:20 +0100 Subject: [reportlab-users] Embedded subset Message-ID: <3FC79A90.8000704@bvx.cz> Hi, Is it possible to embed only a font subset of a given font using ReportLab? -- Milos Prudek From reportlab-users@reportlab.com Fri Nov 28 21:22:52 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Fri, 28 Nov 2003 21:22:52 -0000 Subject: [reportlab-users] Embedded subset In-Reply-To: <3FC79A90.8000704@bvx.cz> Message-ID: > Hi, > > Is it possible to embed only a font subset of a given font using > ReportLab? > The TrueType code written by Marius Gedminas automatically makes subsets of the fonts. With Type 1 fonts, we have not written any subsetting code. - Andy From reportlab-users@reportlab.com Fri Nov 28 21:40:56 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Fri, 28 Nov 2003 21:40:56 -0000 Subject: [reportlab-users] Community upload area Message-ID: There is valuable code coming in from several people now so I have set up a community FTP area. (This is in addition to our main anonymous FTP area). Anyone is welcome to use it to upload code, examples and so on. You can access this with ftp.reportlab.org user: rptlab2_communal pass: better_bucket I suggest anyone with contributions makes a subdirectory for their name or the project (e.g. "hyphenation"), and places a file called 00readme.txt in the top of that folder. It is also under the web site so you can view it as http://www.reportlab.org/community/ If anyone wants to make web pages, let us know; our site templating system is pretty easy and we could make it traverse through, so people can just write content and have the headers/footers/menus built automatically. But we'll wait until someone asks. Finally, if people get stuff laid out in a rational manner and it's worth keeping, one of us can log in and cvs add/commit files there on request. We won't do this automatically, as I hope we'll find a way to move things to SourceForge shortly and have wider access to specific areas. -- I also promised to put up some collabware of some kind (e.g. Plone) in November. I was wrong, work got away from us and we ran out of time. The revised plan is that in week commencing 7 December, when half of us are at www.xmlconference.org in Philadelphia, the others can start a switch over to a new internal server and be able to build a few more things. We will then ask for volunteers to set it up, and move it up to our public server on a decent URL as soon as there is something useful. So hopefully we'll have all the tools up by Christmas. Best Regards, Andy Robinson CEO/Chief Architect ReportLab Europe Ltd. mobile +44-7976-355742 office +44-20-8544-8049 From reportlab-users@reportlab.com Fri Nov 28 22:23:40 2003 From: reportlab-users@reportlab.com (Ben Mitchell) Date: Fri, 28 Nov 2003 14:23:40 -0800 Subject: [reportlab-users] Returning PDF to a browser? In-Reply-To: References: Message-ID: <847551F2-21F1-11D8-8257-000A95A59C44@mitchellfamily.com> Hi, I'm trying to write a PDF that I've dynamically generated as a result of a form submission back to the requesting browser. I'm having trouble getting it to display in the browser - it just presents itself as the raw PDF data... My (simplified) code looks like this: def go(): print '''Content-Disposition: inline; filename=foo.pdf Content-Type: application/pdf ''' doc = SimpleDocTemplate(sys.stdout) doc.topMargin = inch*2.25 Story = [] style = styles["Normal"] parastr = "foo" p = Paragraph("%s" % parastr, style) Story.append(p) doc.build(Story, pagetemplate, pagetemplate) So if I call "go" as the first and only function after receiving the form input (which I'm now doing for test reasons) I think I'm returning the appropriate headers, followed by the document, which is printing to stdout. But like I said, all I get is a browser full 'o raw PDF. Can anyone point me in the right direction here? Thanks, -Ben From reportlab-users@reportlab.com Sat Nov 29 05:32:08 2003 From: reportlab-users@reportlab.com (Carl Waldbieser) Date: Sat, 29 Nov 2003 00:32:08 -0500 Subject: [reportlab-users] Returning PDF to a browser? References: <847551F2-21F1-11D8-8257-000A95A59C44@mitchellfamily.com> Message-ID: <000801c3b63a$22d37e30$2d9b6620@copernicus> You are a little vague on some points, though I think Iget the general gist of what you are trying to accomplish. I wrote up a little demo at work that uses Reportlab to dynamically create a PDF file and send it back to an Internet Explorer browser as the HTTP response. Like you, I was getting the raw PDF showing up in the browser instead of Acrobat reader popping up in the browser. The trick to making it work was to observe the headers that were sent when I typed in the URL of a static PDF file and observe what headers were returned to the browser. I believe that the "Accept-Ranges: bytes" might do the trick for you, though I won't be back to work to double check until Tuesday due to the holidays here. Carl Waldbieser ----- Original Message ----- From: "Ben Mitchell" To: Sent: Friday, November 28, 2003 5:23 PM Subject: [reportlab-users] Returning PDF to a browser? > Hi, > > I'm trying to write a PDF that I've dynamically generated as a result > of a form submission back to the requesting browser. > > I'm having trouble getting it to display in the browser - it just > presents itself as the raw PDF data... > > My (simplified) code looks like this: > > > def go(): > print '''Content-Disposition: inline; filename=foo.pdf > Content-Type: application/pdf > > ''' > doc = SimpleDocTemplate(sys.stdout) > doc.topMargin = inch*2.25 > Story = [] > style = styles["Normal"] > parastr = "foo" > p = Paragraph(" fontSize=\"10\">%s" % parastr, style) > Story.append(p) > > doc.build(Story, pagetemplate, pagetemplate) > > > So if I call "go" as the first and only function after receiving the > form input (which I'm now doing for test reasons) I think I'm returning > the appropriate headers, followed by the document, which is printing to > stdout. > > But like I said, all I get is a browser full 'o raw PDF. > > Can anyone point me in the right direction here? > > > Thanks, > > -Ben > > _______________________________________________ > reportlab-users mailing list > reportlab-users@reportlab.com > http://two.pairlist.net/mailman/listinfo/reportlab-users From reportlab-users@reportlab.com Sat Nov 29 07:51:25 2003 From: reportlab-users@reportlab.com (David Fraser) Date: Sat, 29 Nov 2003 09:51:25 +0200 Subject: [reportlab-users] Returning PDF to a browser? In-Reply-To: <000801c3b63a$22d37e30$2d9b6620@copernicus> References: <847551F2-21F1-11D8-8257-000A95A59C44@mitchellfamily.com> <000801c3b63a$22d37e30$2d9b6620@copernicus> Message-ID: <3FC84FFD.40400@sjsoft.com> Carl Waldbieser wrote: >You are a little vague on some points, though I think Iget the general gist >of what you are trying to accomplish. I wrote up a little demo at work that >uses Reportlab to dynamically create a PDF file and send it back to an >Internet Explorer browser as the HTTP response. Like you, I was getting the >raw PDF showing up in the browser instead of Acrobat reader popping up in >the browser. The trick to making it work was to observe the headers that >were sent when I typed in the URL of a static PDF file and observe what >headers were returned to the browser. I believe that the "Accept-Ranges: >bytes" might do the trick for you, though I won't be back to work to double >check until Tuesday due to the holidays here. > >Carl Waldbieser > > You should also check for Internet Explorer that the URL actually ends with a .pdf as it sometimes seems to get the type from the extension rather than the Content type in my experience David >----- Original Message ----- >From: "Ben Mitchell" >To: >Sent: Friday, November 28, 2003 5:23 PM >Subject: [reportlab-users] Returning PDF to a browser? > > > > >>Hi, >> >>I'm trying to write a PDF that I've dynamically generated as a result >>of a form submission back to the requesting browser. >> >>I'm having trouble getting it to display in the browser - it just >>presents itself as the raw PDF data... >> >>My (simplified) code looks like this: >> >> >>def go(): >> print '''Content-Disposition: inline; filename=foo.pdf >>Content-Type: application/pdf >> >> ''' >> doc = SimpleDocTemplate(sys.stdout) >> doc.topMargin = inch*2.25 >> Story = [] >> style = styles["Normal"] >> parastr = "foo" >> p = Paragraph(">fontSize=\"10\">%s" % parastr, style) >> Story.append(p) >> >> doc.build(Story, pagetemplate, pagetemplate) >> >> >>So if I call "go" as the first and only function after receiving the >>form input (which I'm now doing for test reasons) I think I'm returning >>the appropriate headers, followed by the document, which is printing to >>stdout. >> >>But like I said, all I get is a browser full 'o raw PDF. >> >>Can anyone point me in the right direction here? >> >> >>Thanks, >> >>-Ben >> >>_______________________________________________ >>reportlab-users mailing list >>reportlab-users@reportlab.com >>http://two.pairlist.net/mailman/listinfo/reportlab-users >> >> > >_______________________________________________ >reportlab-users mailing list >reportlab-users@reportlab.com >http://two.pairlist.net/mailman/listinfo/reportlab-users > > > From reportlab-users@reportlab.com Sat Nov 29 18:25:38 2003 From: reportlab-users@reportlab.com (Milos Prudek) Date: Sat, 29 Nov 2003 19:25:38 +0100 Subject: [reportlab-users] czech characters Message-ID: <3FC8E4A2.8040303@bvx.cz> Hi, what is the proper way to write Czech accented characters? I tried canvas,setfont( "Helvetica", 12 ) canvas.writestring( X, Y, "=EC=B9=E8=F8=BE=FD=E1=ED=E1=E9" ) but it outputs garbage instead of Czech accented characters. Helvetica is a standard font that comes with Acrobat Reader, I presume.=20 This problem appears on Czech MS Windows which contain Czech fonts. --=20 Milos Prudek From reportlab-users@reportlab.com Sat Nov 29 19:01:29 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Sat, 29 Nov 2003 19:01:29 -0000 Subject: [reportlab-users] Returning PDF to a browser? In-Reply-To: <3FC84FFD.40400@sjsoft.com> Message-ID: > You should also check for Internet Explorer that the URL actually ends > with a .pdf as it sometimes seems to get the type from the extension > rather than the Content type in my experience > > David When I first started doing this 3 years ago, the raw PDF would often display as you describe. Changing executable cgi scripts from 'myapp.cgi' to 'myapp.pdf' was more effective than headers. However, I have seen this less often in the last 2 years. It would be good to collect some data on this. Can you repeat the problem with a particular version of IE? Have you tried other browsers? Thanks, Andy Robinson From reportlab-users@reportlab.com Sat Nov 29 21:26:27 2003 From: reportlab-users@reportlab.com (=?ISO-8859-2?Q?=C1brah=E1m_P=E9ter?=) Date: Sat, 29 Nov 2003 22:26:27 +0100 Subject: [reportlab-users] czech characters In-Reply-To: <3FC8E4A2.8040303@bvx.cz> References: <3FC8E4A2.8040303@bvx.cz> Message-ID: <3FC90F03.3010103@mail.datanet.hu> Milos Prudek írta: > what is the proper way to write Czech accented characters? > > canvas,setfont( "Helvetica", 12 ) > canvas.writestring( X, Y, "ì¹èø¾ýáíáé" ) Hi, I'm afraid this isn't so simple at the first sight. Look at my way to create special Hungarian characters. The Czech ones must be similar. More details can be found in the "Chapter 3 Fonts and encoding" section of ReportLab's User Guide. By Peter ----------------------- I've downloaded free Type1 iso-8859-2 coded fonts, (.afm, .pbf) and copied these ones in a separate direcory called "font". ------------ import os import string from reportlab.pdfbase import pdfmetrics class PDF_magyar: def __init__(self): own_code = pdfmetrics.Encoding("iso_8859-2", "WinAnsiEncoding") own_code[189] = "hungarumlaut" own_code[213] = "Ohungarumlaut" own_code[219] = "Uhungarumlaut" own_code[245] = "ohungarumlaut" own_code[251] = "uhungarumlaut" pdfmetrics.registerEncoding(own_code) hun_font = [("ne21003l", "NimbusRomNo9LEE-Regu"), ("ne21004l", "NimbusRomNo9LEE-Medi"), ("ne21023l", "NimbusRomNo9LEE-ReguItal"), ("ne21024l", "NimbusRomNo9LEE-MediItal")] for i in hun_font: afmFile = os.getcwd() + os.sep + "font" + os.sep + str(i[0]) + ".afm" pfbFile = os.getcwd() + os.sep + "font" + os.sep + str(i[0]) + ".pfb" justFace = pdfmetrics.EmbeddedType1Face(afmFile, pfbFile) pdfmetrics.registerTypeFace(justFace) justFont = pdfmetrics.Font(str(i[1]), str(i[1]), "iso_8859-2") pdfmetrics.registerFont(justFont) self.h_font_normal = "NimbusRomNo9LEE-Regu" self.h_font_bold = "NimbusRomNo9LEE-Medi" self.h_font_italic = "NimbusRomNo9LEE-ReguItal" self.h_font_bold_italic = "NimbusRomNo9LEE-MediItal" PDF_alap = PDF_magyar() ... canvas.setFont(PDF_alap.h_font_normal, 12) ... From reportlab-users@reportlab.com Sun Nov 30 00:46:56 2003 From: reportlab-users@reportlab.com (Ben Mitchell) Date: Sat, 29 Nov 2003 16:46:56 -0800 Subject: [reportlab-users] Returning PDF to a browser? In-Reply-To: References: Message-ID: Thanks all, It turned out to be a header issue, not a filename issue. Due to the way I was invoking the write of the PDF into the file, I was getting an extra newline between the end of the headers and the start of the PDF. That was all it took to fix it. The problem was platform agnostic. I do most of my development on a Mac, so I was seeing it in Safari first, but duplicated it reliably on other platforms as well before finally figuring it out by dumping the output on the commandline and looking at it close up. Thanks again for your help! -Ben On Nov 29, 2003, at 11:01 AM, Andy Robinson wrote: >> You should also check for Internet Explorer that the URL actually ends >> with a .pdf as it sometimes seems to get the type from the extension >> rather than the Content type in my experience >> >> David > > When I first started doing this 3 years ago, the raw PDF would often > display as you describe. Changing executable cgi scripts from > 'myapp.cgi' to 'myapp.pdf' was more effective than headers. > However, I have seen this less often in the last 2 years. > It would be good to collect some data on this. > > Can you repeat the problem with a particular version of IE? > Have you tried other browsers? > > Thanks, > > Andy Robinson > > > _______________________________________________ > reportlab-users mailing list > reportlab-users@reportlab.com > http://two.pairlist.net/mailman/listinfo/reportlab-users From reportlab-users@reportlab.com Sun Nov 30 10:02:01 2003 From: reportlab-users@reportlab.com (Milos Prudek) Date: Sun, 30 Nov 2003 11:02:01 +0100 Subject: [reportlab-users] czech characters In-Reply-To: <3FC90F03.3010103@mail.datanet.hu> References: <3FC8E4A2.8040303@bvx.cz> <3FC90F03.3010103@mail.datanet.hu> Message-ID: <3FC9C019.3070509@bvx.cz> > I'm afraid this isn't so simple at the first sight. Look at my way to > create special Hungarian characters. The Czech ones must be similar. > More details can be found in the "Chapter 3 Fonts and encoding" section > of ReportLab's User Guide. Are Hungarian characters contained in iso-8859-2 ? -- Milos Prudek From reportlab-users@reportlab.com Sun Nov 30 11:57:13 2003 From: reportlab-users@reportlab.com (=?ISO-8859-1?Q?=C1brah=E1m_P=E9ter?=) Date: Sun, 30 Nov 2003 12:57:13 +0100 Subject: [reportlab-users] czech characters In-Reply-To: <3FC9C019.3070509@bvx.cz> References: <3FC8E4A2.8040303@bvx.cz> <3FC90F03.3010103@mail.datanet.hu> <3FC9C019.3070509@bvx.cz> Message-ID: <3FC9DB19.4080403@mail.datanet.hu> Milos Prudek írta: >> ...The Czech ones must be similar. More details can be found in the >> "Chapter 3 Fonts and encoding" section of ReportLab's User Guide. > > > Are Hungarian characters contained in iso-8859-2 ? > Yes. iso-8859-2 (latin 2) is the code set for Central European languages using latin letters: Croatian, Czech, Hrvatski, Hungarian, Polish, Romanian, Slovak, Slovenian Peter From reportlab-users@reportlab.com Sun Nov 30 13:00:30 2003 From: reportlab-users@reportlab.com (Milos Prudek) Date: Sun, 30 Nov 2003 14:00:30 +0100 Subject: [reportlab-users] czech characters In-Reply-To: <3FC9DB19.4080403@mail.datanet.hu> References: <3FC8E4A2.8040303@bvx.cz> <3FC90F03.3010103@mail.datanet.hu> <3FC9C019.3070509@bvx.cz> <3FC9DB19.4080403@mail.datanet.hu> Message-ID: <3FC9E9EE.9040606@bvx.cz> >> Are Hungarian characters contained in iso-8859-2 ? >> > Yes. iso-8859-2 (latin 2) is the code set for Central European languages > using latin letters: Croatian, Czech, Hrvatski, Hungarian, Polish, > Romanian, Slovak, Slovenian OK. I do not understand why we, the users of iso-8859-2, need to do the complicated procedure that you used in your approach. Is it true that ReportLab does not support iso-8859-2 ? -- Milos Prudek From reportlab-users@reportlab.com Sun Nov 30 16:41:34 2003 From: reportlab-users@reportlab.com (=?ISO-8859-1?Q?=C1brah=E1m_P=E9ter?=) Date: Sun, 30 Nov 2003 17:41:34 +0100 Subject: [reportlab-users] czech characters In-Reply-To: <3FC9E9EE.9040606@bvx.cz> References: <3FC8E4A2.8040303@bvx.cz> <3FC90F03.3010103@mail.datanet.hu> <3FC9C019.3070509@bvx.cz> <3FC9DB19.4080403@mail.datanet.hu> <3FC9E9EE.9040606@bvx.cz> Message-ID: <3FCA1DBE.4020506@mail.datanet.hu> Milos Prudek írta: >> Yes. iso-8859-2 (latin 2) is the code set for Central European >> languages using latin letters: > > OK. > I do not understand why we, the users of iso-8859-2, need to do the > complicated procedure that you used in your approach. > Is it true that ReportLab does not support iso-8859-2 ? Read the 3rd chapter of the User Guide. It explains everything about the fonts and font encodings. AFAIK iso-8859-1 is the default code set of ReportLab, and the special characters of the other ones must be defined by the mentioned way. So there is no "native" support for iso-8859-2..9 code sets, but if you write a python class defining the special Czech characters once, you can import it many other programs, and you are able to use the advantages of ReportLab. Peter From reportlab-users@reportlab.com Sun Nov 30 17:57:36 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Sun, 30 Nov 2003 17:57:36 -0000 Subject: [reportlab-users] czech characters In-Reply-To: <3FC9DB19.4080403@mail.datanet.hu> Message-ID: > > Yes. iso-8859-2 (latin 2) is the code set for Central European languages > using latin letters: Croatian, Czech, Hrvatski, Hungarian, Polish, > Romanian, Slovak, Slovenian > Can you tell us where you found the free fonts? If they can be redistributed without trouble, we could make a useful extra download: some font files plus a little python file which registers them, and put them in a standard place. So you could do this: import reportlab.fonts.ce reportlab.fonts.ce.register() and have the named fonts available... Best Regards, Andy Robinson From reportlab-users@reportlab.com Sun Nov 30 18:02:24 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Sun, 30 Nov 2003 18:02:24 -0000 Subject: [reportlab-users] czech characters In-Reply-To: <3FC9E9EE.9040606@bvx.cz> Message-ID: > Is it true that ReportLab does not support iso-8859-2 ? The accurate statement is that ReportLab has nothing to do with encodings. You must give it input in the same encoding as the fonts the PDF will be viewed with. The problem is that Acrobat Reader (up to v5 at least) does not contain ISO-8859-2 characters. It ships with 14 standard fonts containing ISO-8859-1 glyphs (and a few more for the Macintosh). So even if we required Unicode input everywhere, all the people with a non-CE Acrobat Reader would see garbage until they downloaded the right font packs. The other approach, which makes bigger files and is slower, is to always use TrueType fonts, give it UTF-8 inputand it will embed the characters in the file. I would really like it if some other people could do a few experiments about making this easier (e.g. assemble fonts and registration scripts and upload them), as we don't really have the time or the language skills, and this is what Open Source is supposed to be good for! thanks, Andy From reportlab-users@reportlab.com Sun Nov 30 18:30:18 2003 From: reportlab-users@reportlab.com (Dirk Datzert) Date: Sun, 30 Nov 2003 19:30:18 +0100 Subject: [reportlab-users] bug in utils3d.py Message-ID: <3FCA3739.327A9AE9@rasselstein-hoesch.de> Hi all, on 'python setup.py bdist' I got an error in graphics/charts/utils3d.py: in byte_compile File "/usr/lib/python2.1/py_compile.py", line 62, in compile codeobject = __builtin__.compile(codestring, dfile or file, 'exec') OverflowError: ('integer literal too large', ('/usr/lib/python2.1/site-packages/rep ortlab/graphics/charts/utils3d.py', 229, None, "D.save(formats=['pdf'],outDir='.',f nRoot='_draw_3d_bar')\n")) To fix this change line 229 to: print find_intersections([[(0,0.5),(1,0.5),(0.5,0),(0.5,1)],[(2.666666667,0.4), (0.1,0.4),(0.1,0.2),(0,0),(1,1)],[(0,1),(0.4,0.1),(1,0.1)]]) 2666666667 should be changed to 2.666666667 or something else. Regards, Dirk From reportlab-users@reportlab.com Sun Nov 30 19:01:46 2003 From: reportlab-users@reportlab.com (Robin Becker) Date: Sun, 30 Nov 2003 19:01:46 +0000 Subject: [reportlab-users] bug in utils3d.py In-Reply-To: <3FCA3739.327A9AE9@rasselstein-hoesch.de> References: <3FCA3739.327A9AE9@rasselstein-hoesch.de> Message-ID: whoops that only went in yesterday :) -- Robin Becker From reportlab-users@reportlab.com Sun Nov 30 19:40:02 2003 From: reportlab-users@reportlab.com (=?ISO-8859-1?Q?=C1brah=E1m_P=E9ter?=) Date: Sun, 30 Nov 2003 20:40:02 +0100 Subject: [reportlab-users] czech characters In-Reply-To: References: Message-ID: <3FCA4792.7070301@mail.datanet.hu> Andy Robinson írta: >>Yes. iso-8859-2 (latin 2) is the code set for Central European languages >>using latin letters: Croatian, Czech, Hrvatski, Hungarian, Polish, >>Romanian, Slovak, Slovenian >> >> >> >Can you tell us where you found the free fonts? > > The xfntscl2.tar.bz2 file is 1 Mb. It contains some free Type 1 iso-8859-2 fonts AFAIK originally made by URW. These fonts are the basis of Redhat and SUSE rpms. I haven't found it on the ftp server where this file was downloaded from, but I can upload it anywhere or attache it an e-mail. Best Regards, Peter From reportlab-users@reportlab.com Sun Nov 30 20:12:46 2003 From: reportlab-users@reportlab.com (Tim Roberts) Date: Sun, 30 Nov 2003 12:12:46 -0800 Subject: [reportlab-users] We have py2pdf; anybody have c2pdf? In-Reply-To: <20031130070811.D056E24E4A@two.pairlist.net> Message-ID: <200311302012.hAUKCn023517@probo.probo.com> The reportlab distribution includes the great sample "py2pdf" that produces a syntax-colored PDF file from a Python source. Has anybody taken the time to produce a "c2pdf" that will produce a syntax-colored PDF file from a C or C++ source? Some of us still have to use those "legacy" languages once in a while... -- - Tim Roberts, timr@probo.com Providenza & Boekelheide, Inc. From reportlab-users@reportlab.com Sun Nov 30 22:21:19 2003 From: reportlab-users@reportlab.com (Andy Robinson) Date: Sun, 30 Nov 2003 22:21:19 -0000 Subject: [reportlab-users] czech characters In-Reply-To: <3FCA4792.7070301@mail.datanet.hu> Message-ID: > The xfntscl2.tar.bz2 file is 1 Mb. It contains some free Type 1 > iso-8859-2 fonts AFAIK originally made by URW. These fonts are the basis > of Redhat and SUSE rpms. I haven't found it on the ftp server where this > file was downloaded from, but I can upload it anywhere or attache it an > e-mail. > Thanks. Were you subscribed to this list on Friday? I set up a contributors FTP area then. If you just joined, I'll repeat the details thanks, Andy Robinson From reportlab-users@reportlab.com Sun Nov 30 22:44:41 2003 From: reportlab-users@reportlab.com (Matej Pivoluska) Date: Sun, 30 Nov 2003 23:44:41 +0100 Subject: [reportlab-users] czech characters In-Reply-To: References: <3FCA4792.7070301@mail.datanet.hu> Message-ID: <20031130224441.GA11035%pivoluska@matfyz.cz> On Sun, Nov 30, 2003 at 10:21:19PM -0000, Andy Robinson wrote: import reportlab.fonts.ce reportlab.fonts.ce.register() > > The xfntscl2.tar.bz2 file is 1 Mb. It contains some free Type 1 > > iso-8859-2 fonts AFAIK originally made by URW. These fonts are the basis > > of Redhat and SUSE rpms. I haven't found it on the ftp server where this > > file was downloaded from, but I can upload it anywhere or attache it an > > e-mail. > > > > Thanks. Were you subscribed to this list on Friday? I set up > a contributors FTP area then. If you just joined, I'll > repeat the details > I think that these fonts are a part of ghostscript distribution. (Nimbus Roman, -Sans, -Mono) I needed to use slovak characters (similar to czech ;). Usage of truetype fonts and everything in utf8 works for me well. But at first moment I was surprised that reportlab didn't worked with python unicode strings. I needed these strings explicitly encoded to utf8. mP From reportlab-users@reportlab.com Sun Nov 30 16:40:13 2003 From: reportlab-users@reportlab.com (Dick Kniep) Date: Sun, 30 Nov 2003 17:40:13 +0100 Subject: [reportlab-users] frames vs. tables In-Reply-To: <3FC7777B.1030603@cm-applications.de> References: <3FC7777B.1030603@cm-applications.de> Message-ID: <200311301740.14105.dick.kniep@lindix.nl> Hi Chris, On Friday 28 November 2003 17:27, Chris K. wrote: > Hi, > > I=92m writing an external Zope method based on the rlzope.py example. > In contrast to the example I want to create three independent columns that > I fill with flowables. Independent means that I need to be able to add a > paragraph to a random column. > I haven't tried this, but it seems to me that you have to set the frame=20 explicitely with the method: handle_currentFrame(self, fx) where fx is the identification of the frame. In the user-guide this is not= =20 described, but in the referenceguide (and the source) you can find this=20 method of BaseDocTemplate there. If it works, please let me know, because I am using this construction also,= =20 but haven't been able to test it yet. Regards, D.Kniep