Position texts based on x-y

View: New views
2 Messages — Rating Filter:   Alert me  

Position texts based on x-y

by bright :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I am totally new in xsl but I need this quite urgently. so my apology if I ask silly questions.

basically what i have is a set of texts and an image of a form.
I know the x-y position of each field to be filled in for this form, and and i have values for each of these fields.

What i want to do is, I want to set this image as the background, and position text values for each field according to their x-y position.

then I'll use this xml/xsl file pair together with FOP to generate a pdf document.

I generate this xml file using a java program with information such as field value & field coordinates, and form image provided.

My question is, how do I define xsl file and so that I can create my xml file with x-y position as attributes and field values so that I can use it to generate a pdf file?


eg.

image: C:/form1.jpg
FIELD1 = "this is my name";
FIELD1 x position = 102px;
FIELD1 y position = 250px;
FIELD2 = "my addresss";
FIELD2 x position = 132px;
FIELD2 y position = 290px;

so how do i go about with the above example?


What I want is more like a floating drawing objects for each of these items.

Also for the background image, it should be the background of whole page rather than inserting an image. It can be an image ON the page if everything is "floating" rather than "inline".


Cheers

Re: Position texts based on x-y

by Andreas Delmelle-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 02 Jul 2009, at 08:05, bright wrote:

Hi

> basically what i have is a set of texts and an image of a form.
> I know the x-y position of each field to be filled in for this form,  
> and and
> i have values for each of these fields.
>
> What i want to do is, I want to set this image as the background, and
> position text values for each field according to their x-y position.
> <snip />
> My question is, how do I define xsl file and so that I can create my  
> xml
> file with x-y position as attributes and field values so that I can  
> use it
> to generate a pdf file?

You will most definitely need to look into using fo:block-containers  
that are absolute-positioned on the page[*]. One FOP limitation to  
keep in mind, is the lack of support for the z-index property. IIRC,  
FOP behaves such that block-containers that appear earlier in the  
input document are rendered below the later ones.

You could define one block-container containing the basic image (as an  
fo:external-graphic), and then add block-containers for the text that  
is to be rendered on top further on. The advantage of using  
fo:external-graphic, as opposed to background-image, is that you could  
even scale the image to fit the page if it is not the intended size.

If you're going to use widths in pixels, do remember that the default  
target-resolution for PDF is 72dpi, which may or may not match the  
resolution of your image. Recalculating the px-widths into something  
more absolute is recommended for predictable results.

[*] http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/examples/fo/basic/blockcontainer.fo?revision=333038


HTH!

Andreas

---------------------------------------------------------------------
To unsubscribe, e-mail: fop-users-unsubscribe@...
For additional commands, e-mail: fop-users-help@...