Page 1 of 5
Printing isn't correct on every printers
Posted: Tue Sep 05, 2006 4:46 pm
by marcpleysier
Printing Rv formated texts (with ReportBuilderWrapper) doesn't work correctly on every printers.
I've tested same RV text on about 10 printers.
(See screen/print shots in next post)
On 3 of them, some words are printed on previous word (as if the space character have a negative size), some characters are printed on previous character, some lines are missing, some underlined words dont have the bottom of the character, etc.
The printers are recent:
Epson Stylius Color 84 (Ink Jet)
Brother HL5140 (laser)
Lexmark X215 (laser)
Posted: Tue Sep 05, 2006 5:03 pm
by Sergey Tkachenko
Can you tell me resolutions of the printers (dpi)?
Posted: Tue Sep 05, 2006 8:42 pm
by marcpleysier
Epson Stylus C84 : 5760x1440
Brother HL-5140 : 2400x600
Lexmark X215 : 600x600
Example with Stylus :
TRichView
TppRichView print result
Example with Brother :
TRichView
TppRichView print result
Posted: Tue Sep 05, 2006 9:30 pm
by marcpleysier
When previewing with ReportBuilder, it is ok.
When printing with ReportBuilder (ppRichView), there is the problem.
When previewing with RichViewAction editor, it is ok.
When printing with RichViewAction editor, it is ok.
Posted: Wed Sep 06, 2006 5:02 pm
by Sergey Tkachenko
When printing using RVPrint, trichview formats document in the printer resolution, so there must be no problems.
As for ReportBuilder's ppRichView, it formats document in higher resolution, then draws it on both screen and on printer as preview (prividing WYSIWYG mode).
I think the problem is because this "higher resolution" is not high enough.
It is defined in ppRichView.pas as
TPPRICHVIEWREFCANVASPPI = 1440;
Try to change it to larger value, for example 14400.
For existing ppRichViews, you need to change InternalPixelsPerInch property to the same value.
Posted: Wed Sep 06, 2006 8:29 pm
by marcpleysier
For the moment, I only change TPPRICHVIEWREFCANVASPPI.
14400 is too hight, the report crash.
After several tests, 4525 seem to be the optimal value for the Stylus.
I will test tomorow with the other printers. I hope optimal value will be the same for all printers!
I haven't understood InternalPixelsPerInch. This property isn't visible in IDE (F11). Can I initialise InternalPixelsPerInch in ppRichView.Create ?
Posted: Thu Sep 07, 2006 8:39 am
by Sergey Tkachenko
What's your version of ReportBuilder and ppRichView (see ppRichView.pas, comments in the beginning)
Posted: Thu Sep 07, 2006 10:43 am
by marcpleysier
there is v1.6 in ppRichView.
I use RB 7.04.
Posted: Thu Sep 07, 2006 6:33 pm
by Sergey Tkachenko
This property is only in the wrapper for RB9&10.
The wrapper for RB7 (by the way, the latest version is 1.8) always uses resolution specified in that constant.
If you'll find an optimal value for it, please inform me.
Posted: Mon Sep 11, 2006 7:41 am
by marcpleysier
Infortunately, there is no optimal value
When I optimize the value for one problem on one printer, the other problem increase.
Example:
With standard value (1440), problem 1 (Bold/no bold transition) don't exist with Brother and Lexmark printers, problem 2 (word "EBAVURER") exist.
With problem 2 optimised value (4525), problem 2 don't exist, problem 1 exist (but negative : the space between bold and no bold is too large).
So there is something else somewhere...
Posted: Tue Sep 12, 2006 11:55 am
by marcpleysier
After more tests, I confirm that there is no optimal TPPRICHVIEWREFCANVASPPI value :
- With the same printer,optimal value for one problem is not optimal for another problem.
- For the same problem, optimal value on one printer is not optimal on another printer.
Changing printer resolution (in the settings of the printer) change nothing.
Posted: Tue Sep 12, 2006 9:49 pm
by marcpleysier
Sergey Tkachenko wrote:This property is only in the wrapper for RB9&10.
The wrapper for RB7 (by the way, the latest version is 1.8 ) always uses resolution specified in that constant.
If you'll find an optimal value for it, please inform me.
I download again the RB wrapper. It's v1.6. Where can I find this v1.8?
Posted: Mon Sep 18, 2006 7:17 am
by JPR
Hi,
I 've looked for this trouble. I think that TPPRICHVIEWREFCANVASPPI mustn't be a constant but a variable. Depends of printer. I think the solution is to catch the PPI of printer when I print or preview a document.
Sergey, is it a good solution ?
Regards,
JPR
Posted: Tue Sep 19, 2006 3:45 pm
by JPR
Heu...........
Just an answer sergey to solve or to explain problem. Is it very important for our application (Software).
Thank
JPR
Posted: Fri Sep 22, 2006 8:28 am
by JPR
Dear Sergey,
We have bought your component because it was complete but also because Wrapper with ReportBuilder exist.
we spent much time to integrate your component in our software and now we are blocked because there is a bug on the level of the wrapper.
I would like to know why we don't have answer of you ? Just a solution ?
Thank
Regards
Jean-Philippe RENOU