itextsharp spliting a row in multiple page (at Absolute position) - itext

I'm in a situation where I need to split a (large) row into multiple page with ITextSharp.
My main difficulty is linked to the fact I need to put the table at position (x,y), so using WriteSelectedRows instead of Document.add().
In this case, SplitLate & SplitRows are useless.
If anyone knows how to split a row on multiple pages, you are more than welcome.

Related

How to pdf print multiple cards with fixed size?

How should I design a pdf in flutter that prints exactly sized i.e. on perforated paper.
My goal is a pdf with two columns and multiple rows. Inside the rows should be precisely positioned cards. The cards consist of images, QRCodes and tables generated from database data.
Should I use a pw.Stack or the pw.GridView or a pw.Table?
Where does positioning work best?

Report labels match a dropdown in report builders

I have a report that is designed to allow users who aren't proficient in Tableau visualize data in the form of a bar graph. There are some drop downs on the side that allow them to select some dimensions. These dimensions then populate the graph. The labels in the graph, however, do not match the dimension name selected, and I was curious how to do this. So for instance on the right hand side Dimension 1 is set to Item Subcategory, and I'd like it to say that in the graph as well, instead of being labeled Dimension 1.
The drop downs on the right are generated from this code in the dimension itself:
If anyone has any ideas on how to do this, I'd really appreciate it. Thanks!
The way I would do this would be to hide the column headers on the sheet itself, or edit their aliases to just a bunch of spaces so it appears blank.
You can then create a sheet with the Dimension 1 parameter on the Text shelf, formatted to look like a column header (or formatted however you want it to look), and add that sheet to the dashboard as a floating sheet. Repeat for the other two dimension parameters, position the sheet above the column so it looks like the header, and there you go! Whenever the parameter changes, the column header will change to match too.
I would note that this only works if the sheet is on a fixed-size dashboard, since floating sheets don't usually play nice with auto-sizing dashboards.

ag-grid is not rendering all my rows.

I am scratching my head on this one but I am starting to think it may be a bug in ag-grid.
I have a grid that is (inconsistently) only rendering 3 rows of data when I am expecting 5. There is a blank space for the 2 missing rows.
The pager says 5 rows, and the grid seems to know there are 5 rows (when I step through the javascript debugger). In fact, if I sort on the grid, or resize the window such that the grid provides scrollbars, the other 2 rows suddenly appear.
Has anyone seen anything like this?
----More detail but may not be relevant:
On this particular page, I have 2 grids. There is a main grid that has links in it, and when you click into a link, it hides the main grid and shows you the other grid. I was concerned that that was coming into play somehow, but I actually have seen this on another page I'm working on that has just 1 grid.
Based on various explanations I have seen online, I tried this and it appears to be working:
setTimeout(function ()
{
$scope.gridOptions.api.refreshView();
}, 0);
I call this after
params.successCallback(pResponse.data);
which invokes the grid's callback
Based on your observations that sorting or resizing the window makes the data appear, I get the feeling that the code needs to force the screen refresh somehow.
this.gridOptions.api.refreshView();
I had a similar issue and discovered that my gridOptions.rowHeight value did not match the actual height of my rows (I had a checkbox element in each row that was pushing the height taller).
As it turns out, the AgGrid row renderer uses absolute pixel location to calculate which rows should be visible. So if your actual row heights result in the rows not being in the exact position they are expected to be in, the renderer will skip them.
Ironically, the positioning code uses actual position, so the rows that do get rendered are positioned as if the skipped rows are still there, resulting in the blank space described by the OP.

Is there an easy way to specify table locations in Oracle SQL Developer Data Modeler?

I'm trying to align five or so tables at the top of a page so that they are vertically aligned with one another. I've been doing this by zooming in and overlapping the table lines (since they change colors when you do that) and then I just move it over a bit to separate the tables. Is there an easily way to do this in Oracle SDDM? Perhaps there is a hidden X,Y coordinate system that I'm not finding where you can specific where to put them?
I did manage to find a coordinate system that showing the entire page with dots every few pixels apart, but this does not help since the software does not auto place tables to be in line with one another. If anyone has an easy way to set these tables up in line with one another, please lend a hand! Thanks in advance.

iText split PdfPCell when cell is kept together

I am using a table to create a semblance of what is depicted below. The content I'm generating isn't known before hand. The blue sections of the columns are cells that are kept together in the table and I am using ColumnText to display the table. For clarification I have outlined a sample cell layout in the top right of the image. The problem I'm running into is that when I use setSplitLate(false) with setSplitRows(true) alongside with using keepRowsTogether(int[] rows) the splitting doesn't work correctly. Most of the top right section should be able to fit into the bottom left but as shown in the image it is all moved to the top of the next column.
Is there a way to cause the cell to split as well as keep together with it's header? When I remove the keepRowsTogether(int[] rows) call the cell splitting works as expected.
Also, in my situation I only want it to split if there are two lines at the end of the column and two at the beginning of the next. In other words the cell would only split if it contained 4 lines of text. How would I go about doing this?
I modified the top right column as depicted below, blue representing the rows that are kept together.
As depicted, I have a cell for the header as before but I've split up the paragraph into many different cells. The first and last contain cells with two lines of text and the rest contain one line of text. This way I'm guaranteed that the header will stick with at least the first two lines of the bulleted paragraph. If the last two lines, or the last cell, end up not fitting in the column then because the cell contains two lines, I'm guaranteed that at least two lines will be carried over to the next column, if not more, depending on how many of the middle lines carry over as well.