I have a chart for windows phone 7.1. However the display name on the X-axis is too long and causing a overlapping to one another. Example of it:
How can I solve this ? As I need to display 7 more columns of hawker name. Removing the series at the side will only help a little. Guide on this thanks !
Let me give you some practical advice since I have been down this road before:
1) Have a limit to the max chars in header and show ... after that
2) If someone from marketing argues about that, show them that it looks ugly in every program including Excel
3) Try using new lines to fit things better
4) Reduce font size
The algorithm should try to play around with new lines and font sizes to get a best fit and if the text is too large trim the end of it.
If someone from marketing/management argues about that, show them that it looks ugly in every program including Excel
Related
I am working with Visual Studio 2010 ReportViewer WinForms.
I have been unable to figure out how to fix the rectangle height in a report. I've tried using a table within the rectangle, also a table in a sub report that is placed in the rectangle of the main report with no success.
Basically, I am setting up an invoice-type report that must keep its' form and should not be allowed to grow so that elements are pushed onto a second page.
Both rectangle and tables will always grow vertically based on the content. There is no way to really stop this.
There are a couple of properties that might be able to help you get the correct page breaking in place:
KeepTogether indicates whether to keep all sections of the data region together on pane page.
When set on true and the region is to large to fit the page, this will add a page-break before the start of the region to try and fit as much as possible on a single page.
So if you wish for the region to start at the initial location but break afterwards, make sure this is to false.
PageBreak has the parameter BreakLocation which can be used to determine a fixed place to add a page-break. You can set it on Start, End, StartAndEnd or Between.
You could split your report in fixed pages and use these to add standard page-breaks in the desired (fixed) locations.
These properties alone might not be enough to get your desired result. Especially when working with tables it is hard to add a page-break after a fixed amount of rows.
It is hard to give you a detailed description of a possible approach with the amount of information you gave me, but here is some general advice.
You should split your data in the correct intervals before sending the datasource to the reporter. You can for example use grouping to place them in the correct intervals and add page-breaks based on the grouping.
Another solution is to add them in separate containers, this will require you to have enough spare data regions at your disposal. If there are too many you can always hide the empty ones based on an expression set for the Hidden property.
It won't be easy to set this up correctly so that it can dynamically grow. It takes a lot of puzzling from your end but pretty much any layout should be possible to achieve.
I wish I could give you a more specific solution to your problem and am willing to help you further if you give me an example to work with. But ultimately this is something you should be able to achieve on your own.
I want to be able to reproduce something like this image (taken from NBA.com )
What I have :
- A court with the white lines
- A list of Position for each shot and I know if they are made or missed.
But I'm stuck on the method to realize the image :
Should I create images for each part of the field using photoshop/paint.net and then color it in c# ?
Of course the best way would be to have an equation for each part so I can check easily if the position is in and I could also draw it.
How would you do it ?
You need to first decide on how replicable you need the solution. If you need it for a 1-10 pictures, then don't bother with code- it will most surely take much longer to fine tune it.
If was to work on this specific image, I would probably take my time to find expressions for all lines to make calculations more precise though.
Here's something I've not been able to solve. We've moved over from FONET to Reporting to provide decent PDF exporting and printing. There's no (free) way to print generated PDF's we could find without using an outdated version of Adobe Reader, and we can't install a third party program everywhere.
We are making invoices this way, with a variable numbers of invoice lines (which are variable in height too), and an optional remark. This in a subreport. At the bottom of the last page, we want the totals without VAT, the total VAT and the totals including VAT. When there is no VAT in this invoice, these lines are hidden.
However, there is no way we found to anchor these totals to the bottom of the last page. We are already using the footer to show something on each page, and abusing the header to show the column headers for the invoice lines, as the row headers are not repeated on the next page.
What we've tried:
- We've tried adding a footer to the invoice lines subreport to show this, but this can't contain a Tablix and doesn't show.
- Adding whitespace between the invoice lines and totals only works with a few invoice lines. When more than 4, it places the totals on the beginning of the next page. Removing the whitespace places the totals right after the invoice lines, while we want it at the bottom of the last page.
- We could work around this in FONET, by using an absolute table, but we have not seen this possibility in Reporting.
- We would use another system if it's simply not possible. We need something which supports designing, tables which can be populated with DataSets or IEnumerables, anchoring, embedded images, direct printing and exporting to PDF. Localization (strings based on language using default resource files) support would be a huge plus.
Thanks in advance,
Nick
My answer is a year late, but maybe this will help someone
Had a similar problem while printing an envelope cover with a title at the bottom. I found questions like yours, but no answers. After banging my head for a couple of hours, i've got it.
Keep the controls with variable heights in a rectangle & make the rectangle as lengthy as you wish and keep the other controls (which you wish to print after a variable gap) below the rectangle - Check the image below
Now, if the 'CanGrow' controls inside the rectangle grows, it does so without pushing the controls outside the rectangle. But beware, if the controls grow beyond the size of the rectangle, then the rectangle will grow & push the rest down.
That's it. But Wait!!! I moved this report from VS 2008 to ReportBuilder 2 (& 3) and this did not work. After pulling my hair for another 2 hours - here's the issue
Select the Report (not the body) and set the 'ConsumeContainerWhitespace' property to True for this to work. Whitespaces are consumed both to the right & bottom within a container - I guess this is the default & only behavior in VS 2008 & VS 2005's report runtime.
-I've been developing on the .Net platform for the past 6 years, comfortable with almost everything, but this damned fine reporting component never fails to annoy me!
The purpose of my Program is to capture multiple areas on the screen. I'm choosing between 2 methods to write this program:
Making one big screenshot 800x600 for further cropping (10+ areas)
Or making multiple Small screenshots with given coordinates. (10+)
what's better in terms of performance?
another question which is also related to this question is:
where do I keep all crop coordinates? I'll need at least one Column to specify numbering, Next two columns will have X and Y coordinates and last two - W and H. I was thinking about making a dictionary for a separate crop.. or maybe a table, SQL, INI, array ?? that's the second question. Easiness of use and performance are top priorities.
thanks
Edit: Rephrasing the question. What's faster - To capture a screenshot of whole screen and Crop it into 100 small areas (W:10 & H:100) OR to capture 100 small Screenshots without the need to crop anything?
The answer is to measure this. We can't know the answer without trying. It also probably depends on the exact count and sized of the screenshot areas.
Basically I'm reading vehicle license plates using tessract OCR, however despite being able to emphasise text easily enough via changing contrast, reducing noise an so on, some 'parts' of the vehicle remain on the image which does cause the OCR to throw bad results.
For example take:
I can change this easily enough, such as:
I'm looking to eliminate the edges off each plate, here's another example:
I could remove the edges using pixel manipulation algorithm, however I don't feel it's the right method, and would cause quite a lot of problems.
I've been using the following application to test various methods such as morphology and eliminating the unwanted data, so far I haven't been successful.
http://www.codeproject.com/KB/GDI-plus/Image_Processing_Lab.aspx
However someone with knowledge of this could use the application on the article above to achieve want I'm trying, so feel free to give it a try.
Thanks
Please try to use stroke width transformation concept.
This concept use to segment text from natural images.....
I already did such an algorithm. I just can say that it works great. The secret is, that you need to know that the light is coming just from one side perhaps. You cannot set the image to "black/white" just by using ONE threshold.
Detect the average luminance of parts of the image and use this luminance calculation to set the threshold for each region.
For example, if the left top is lighter, you need a lower threshold to make these parts not to bright. And if the bottom right has low light, you need to set the threshold higher to receive all existing light information.
Then, you need just to drive into the image from each side by using the method:
IsPixelAboveThreshold ?
If it is below, you are on the border, if it is above, you can say you are on the middle of the image with more brightness.
Regards