TeeChart printing with C++ Builder XE5 not the same as preview - c++builder

C++ Builder XE5, 32 bit
Drop TChart object on form
Right click and select EDIT CHART
Click the add button, click OK
Click on the word PRINT
Click the 'Print' button.
The printed graph looks nothing like the preview. I've tried a few different types of graphs and none print anything like the preview. The preview looks perfect, the printed graph is ENLARGED, the title on the paper is almost an inch high, the numbers for the left axis are huge (about 3/4" high), the graph itself is only 2 inches wide by about 4.5 inches high.
Here is the printout www.rcscoringpro.com/tracks/Chart.pdf
Thanks for looking!
Doug

This was fixed with the free update here:
http://cc.embarcadero.com/item/29708

Related

TeeChart printing Labels scalling issues after Update to Delphi 10.2 Tokyo

After Update Delphi 2009 to Delphi 10.2 Tokyo when printing Charts the labeling looks like crushed or false scaled. On Screen all looks ok and on print the Chart himself looks also good, only the Labels are not good.
For printing we use the TPrinter and printpartial method from teechart to print more Charts together in the same page.
We nothing changes on the source Code.
Version of TeeChart: 9.0.1.0
Printing-Method: PrintPartial
1:
Someone with the same Problems or maybe a solution? Thanks
Thank you Yeray for answer.
I found the issues by changing between many times D2009 and D10.2.
If none Default Canvas is set (D2009) the print will be good.
After saving (D10.2) the Tchart will change the "DefaultCanvas = 'TGDIPlusCanvas'", the print is not good.
If i set the Canvas in source Code to "Chart1.Canvas := TTeeCanvas3D.Create" the print is good.
So what Kind of Canvas do you prefer for printing? Do i have to change the canvas before every printing? The TGDIPlusCanvas looks better on Screen than TTeeCanvas3D.
Thanks

Impression of tickets in thermal printer FastReport 5

I have a problem on impression of tickets in continuous paper thermal printer. I have done a report with paper size "custom", height 50 cm and I have checked "Endless page height" option, but when I print the ticket, it ends when he has a height of a Din A4 page.
Any idea why? I need to configure any more?
I use FastReport 5 in Seattle 10
I have searched info about this but nothing found.
try to mark check Large height in design mode, not Endless page height in report options, and set paper size = custom, with correct width and height (in your case 50 cm).
I have exactly the same problem without founded yet a solution until today that I'm working with C++Builder 11.1.
As a work-around, I divided the entire long report into some few different groups, each of them printed onto a new page. The grouping could be by category or some other valid concept for the user, if any.
The resulting report is going to be few pages cut at a small length than the original, but it will allow to show the whole expected information. It is not what I wanted originally but is a valid alternative solution for me.
Do you finally found a solution to reach your objective to print the report on a longer than Din A4 page?

Using Printer Control Language (PCL) to Increase Left Margin

We have a very old program that we print from where you are unable to change the left print margin in the program. I need to get it printing further from the left edge, ideally about 1 inch for binding. No issue with text going over the right edge as it doesn't get near that side of the page.
My idea was to use a custom separator page https://support.microsoft.com/en-us/kb/131714 to issue a PCL command to increase the left margin.
We are using HP printers and I have tried using the standard windows example C:\Windows\System32\pcl.sep which works exactly as expected.
This is my attempt at a .sep file (am saving in the system32 folder)
\
\H1B\L%-12345X
\H1B\LE
\H1B\L&l4000U
\H1B\L&a+3000H
\
I've tried a couple of variations, but it does absolutely nothing, my document just prints like normal.
Any help much appreciated.
My guess is that the application is explicitly setting the margins,
thus undoing anything you are trying in the .sep file. I am not familiar with the .sep file at all.
In the PCL context, if you are printing in duplex you want the extra binding on the left for the front side and on the right for the backside. The PCL command to end up with a 1 inch binding margin would be something like &l540U The 540U shifts the image 3/4 inch which when added to the existing minimum 1/4 inch margin gives you a 1 inch total.
Can you direct your output to a file to see what is actually being sent to the printer?

Delphi TeeChart doesnt rotate labels

I tried rotating labels by settings the Chart.BottomAxis.LabelsAngle := 45 but that doesn't work no matter to what value i change it i want my labels to be displayed vertically because not some labels overlap one another:
my settings are:
any ideas of how to fix this issue
P.S my chart is stacked
What i have already tried:
tried changing the LabelsAngle property to 0,45,90,135 none seem to have any effect, the teechart version is the one that comes with Delphi, Currently using Delphi XE5.
Chart is used in FastReport
tried with non stacked chart and it seems to work upper stacked chart lower not stacked any idea what can cause this?:
This works fine for me with TeeChart 2014.11.140512, which is the latest version available. Does this work fine using a TChart component without FastReports? You could also check if the free TeeChart update for XE5 Update 2 solves the problem for you: cc.embarcadero.com/Item/29708
If you are using MS Sans Serif you can try Tahoma.

Suggestions for a report designer to produce a 4 quadrant page for printing?

I have a project that needs to produce reports in Delphi XE2 that have 4 elements per page. For instance, one page (11 x 8.5) landscape needs four quadrants
Rich text bulleted items in quadrant one
Bar chart in quadrant two and quadrant three
Pie chart in the final quadrant
Today, these reports are produced with a combination of Excel and Powerpoint which is very time consuming and I'd like to automate the process with a Delphi App.
I've had experience with Report Builder and Rave Reports, but I never ran into a situation where I needed to divide the page up into four areas. It was always the traditional single graph per page design.
Use Fastreport, it has Rich text and Chart objects and can make the layout that you want.
Just put one Rich text object and 3 chart objects on the page and fill them in the code.
You can use fastReport with subReports. Also you can activate the pages columns=2 and I think its possible to do it.
In FastReport you have all you say you need:
Pie Chart
Bar Codes
Ritch ext
And Group & master Detail Lists
One solution is to create you report and export it in pdf or jpeg, and then use another tool to produce the 4 quadrant.
Have a look to (free) PosteRazor application.
http://posterazor.sourceforge.net/
You can use the report generated by code, as available in our mORMot framework.
Each page is rendered in a TMetaFile content. In fact, you can use QuickReport or other report able to export the pages as meta files. The same occurs for charts: you save the chart as EMF content, then you draw it on the TGDIPages report.
Then it is easy to use a 2nd report instance to draw 4 pages per page.
Then you'll have preview, print or native pdf export at hand.

Resources