DO NOT REPLY [Bug 4588] New: - ps options
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=4588. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=4588 ps options Summary: ps options Product: Fop Version: all Platform: Other OS/Version: Linux Status: NEW Severity: Minor Priority: Other Component: general AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] Hi, I just needed to ask a question because I could not find anything about this in the documentation. I wanted to ask: can you specify and page device commands when rendering to post script? If this is not possible, do you have any suggestions of how I could add page device commands to the postscript. (I am already considering editing the ps document) Thank you very very much... Amit - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: two different fo:page-sequence
At 01:53 2-11-2001, Jörg Flotho wrote: Does anyone know how to use two fo:page-sequence? Yes, but this question is probably better on one of the XSL-FO lists or the XSL list, as it is not specific to FOP. One for odd pages and one for even pages. They content different static-content for mirroring the page-number on the outside of the page. If I understand you correctly, the only difference between odd and even pages is the position of the page numbers; the text flows from recto to verso and back again (i.e., you're not doing any parallel multi-lingual content or anything like that). In that case, you don't want multiple page-sequences. You want a single page-sequence, with an alternating page-sequence-master. If you're using FOP, see docs/examples/pagination/franklin_alt.fo for an example. ~Chris -- Christopher R. Maden, Principal Consultant, HMM Consulting Int'l, Inc. DTDs/schemas - conversion - ebooks - publishing - Web - B2B - training URL: http://www.hmmci.com/ URL: http://crism.maden.org/consulting/ PGP Fingerprint: BBA6 4085 DED0 E176 D6D4 5DFC AC52 F825 AFEC 58DA PGP signature
Why doesn't SVG viewBox work?
Hi all, I embedding some SVG into my XSL-FO to create small graphics. But itdoesn't seem like the viewBox attribute works. For instance: fo:blockfo:instream-foreign-object svg xmlns="http://www.w3.org/2000/svg" width="1in" height="1in"viewBox="0 0 100 100" preserveAspectRatio="none" circle cx="50" cy="50" r="49" stroke-width="2" stroke="grey"fill="none"/ /svg /fo:instream-foreign-object/fo:block When I run the above thru FOP, my circle is clipped. The bottom and rightparts of the circle are not displayed. Why is that? No matter what theactual width or height, shouldn't my coordinate system always be from 0 to100 along both axis? This SVG works fine in Adobe's SVG viewer. I don't know if this is a Batik problem or a FOP problem, so I'm posting toboth lists. Thanks,Scott
Re: Why doesn't SVG viewBox work?
Scott Moore wrote: Hi all, I embedding some SVG into my XSL-FO to create small graphics. But it doesn't seem like the viewBox attribute works. For instance: [...] When I run the above thru FOP, my circle is clipped. The bottom and right parts of the circle are not displayed. Why is that? No matter what the actual width or height, shouldn't my coordinate system always be from 0 to 100 along both axis? This SVG works fine in Adobe's SVG viewer. I don't know if this is a Batik problem or a FOP problem, so I'm posting to both lists. Thanks, Scott Hi Scott, I had the same problem with a COREL generated SVG also containing a view box. As Batik's SVG viewer showed it correctly, it seems to be more a FOP problem. I solved it more or less by removing the view box and adding appropriate transformations. BTW, I had a horizontal positioning problem with the left margin of the outer fo:block. It seemed to be applied twice to the SVG. Unfortunately, I had no time to track down that problem. regards, Klaus - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: two different fo:page-sequence
Hi Jörg, have a look at docs\examples\pagination\franklin-alt.fo. This does exactly what you need. - Corinna - Original Message - From: Jörg Flotho [EMAIL PROTECTED] To: Fop-Dev [EMAIL PROTECTED] Sent: Friday, November 02, 2001 10:53 AM Subject: two different fo:page-sequence Does anyone know how to use two fo:page-sequence? One for odd pages and one for even pages. They content different static-content for mirroring the page-number on the outside of the page. I would appreciate, if someone could help me. Thanks Jörg - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
[GUMP] Build Failure - Fop
This email is autogenerated from the output from: http://jakarta.apache.org/builds/gump/2001-11-02/xml-fop.html Buildfile: build.xml init-avail: init-filters-xalan2: [copy] Copying 1 file to /home/rubys/jakarta/xml-fop/build/src/codegen init: [echo] --- Fop 1.0dev [1999-2001] prepare: [echo] Preparing the build directories [mkdir] Created dir: /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/fo/properties [mkdir] Created dir: /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts [mkdir] Created dir: /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/svg [mkdir] Created dir: /home/rubys/jakarta/xml-fop/build/classes/conf [mkdir] Created dir: /home/rubys/jakarta/xml-fop/build/classes/hyph [copy] Copying 3 files to /home/rubys/jakarta/xml-fop/build/classes/conf codegen: [echo] Resetting codegen directory [copy] Copying 34 files to /home/rubys/jakarta/xml-fop/build/src/codegen [echo] Generating the java files from xml resources [xslt] [xslt] xslt [xslt] in: ./build/src/codegen/allprops.xml [xslt] style: ./build/src/codegen/genconst.xsl [xslt] out: ./build/src/org/apache/fop/fo/properties/Constants.java [xslt] [xslt] [xslt] xslt [xslt] in: ./build/src/codegen/foproperties.xml [xslt] style: ./build/src/codegen/properties.xsl [xslt] out: ./build/src/org/apache/fop/fo/properties/fo_ignore_this.java [xslt] [xslt] [xslt] xslt [xslt] in: ./build/src/codegen/foproperties.xml [xslt] style: ./build/src/codegen/propmap.xsl [xslt] out: ./build/src/org/apache/fop/fo/properties/FOPropertyMapping.java [xslt] [xslt] [xslt] xslt [xslt] in: ./build/src/codegen/foproperties.xml [xslt] style: ./build/src/codegen/enumgen.xsl [xslt] out: ./build/src/org/apache/fop/fo/properties/foenums_ignore_this.java [xslt] [xslt] [xslt] xslt [xslt] in: ./build/src/codegen/extproperties.xml [xslt] style: ./build/src/codegen/properties.xsl [xslt] out: ./build/src/org/apache/fop/fo/properties/ext_ignore_this.java [xslt] [xslt] [xslt] xslt [xslt] in: ./build/src/codegen/extproperties.xml [xslt] style: ./build/src/codegen/propmap.xsl [xslt] out: ./build/src/org/apache/fop/fo/properties/ExtensionPropertyMapping.java [xslt] [xslt] [xslt] xslt [xslt] in: ./build/src/codegen/extproperties.xml [xslt] style: ./build/src/codegen/enumgen.xsl [xslt] out: ./build/src/org/apache/fop/fo/properties/extenums_ignore_this.java [xslt] [xslt] [xslt] xslt [xslt] in: ./build/src/codegen/charlist.xml [xslt] style: ./build/src/codegen/code-point-mapping.xsl [xslt] out: ./build/src/org/apache/fop/render/pdf/CodePointMapping.java [xslt] [xslt] [xslt] xslt [xslt] in: ./build/src/codegen/Courier.xml [xslt] style: ./build/src/codegen/font-file.xsl [xslt] out: ./build/src/org/apache/fop/render/pdf/fonts/Courier.java [xslt] [xslt] [xslt] xslt [xslt] in: ./build/src/codegen/Courier-Oblique.xml [xslt] style: ./build/src/codegen/font-file.xsl [xslt] out: ./build/src/org/apache/fop/render/pdf/fonts/CourierOblique.java [xslt] [xslt] [xslt] xslt [xslt] in: ./build/src/codegen/Courier-Bold.xml [xslt] style: ./build/src/codegen/font-file.xsl [xslt] out: ./build/src/org/apache/fop/render/pdf/fonts/CourierBold.java [xslt] [xslt] [xslt] xslt [xslt] in: ./build/src/codegen/Courier-BoldOblique.xml [xslt] style: ./build/src/codegen/font-file.xsl [xslt] out: ./build/src/org/apache/fop/render/pdf/fonts/CourierBoldOblique.java [xslt] [xslt] [xslt] xslt [xslt] in: ./build/src/codegen/Helvetica.xml [xslt] style: ./build/src/codegen/font-file.xsl [xslt] out: ./build/src/org/apache/fop/render/pdf/fonts/Helvetica.java [xslt] [xslt] [xslt] xslt [xslt] in: ./build/src/codegen/Helvetica-Oblique.xml
RE: Why doesn't SVG viewBox work?
Klaus, Could you give me an example of the transformations you used? Right now, I'm just specifying the width and height in inches and more or less guessing the number of pixels in my view area. Not the most robust way to do it. Thanks, Scott -Original Message- From: Klaus Malorny [mailto:[EMAIL PROTECTED]] Sent: Friday, November 02, 2001 6:44 AM To: [EMAIL PROTECTED] Subject: Re: Why doesn't SVG viewBox work? Scott Moore wrote: Hi all, I embedding some SVG into my XSL-FO to create small graphics. But it doesn't seem like the viewBox attribute works. For instance: [...] When I run the above thru FOP, my circle is clipped. The bottom and right parts of the circle are not displayed. Why is that? No matter what the actual width or height, shouldn't my coordinate system always be from 0 to 100 along both axis? This SVG works fine in Adobe's SVG viewer. I don't know if this is a Batik problem or a FOP problem, so I'm posting to both lists. Thanks, Scott Hi Scott, I had the same problem with a COREL generated SVG also containing a view box. As Batik's SVG viewer showed it correctly, it seems to be more a FOP problem. I solved it more or less by removing the view box and adding appropriate transformations. BTW, I had a horizontal positioning problem with the left margin of the outer fo:block. It seemed to be applied twice to the SVG. Unfortunately, I had no time to track down that problem. regards, Klaus - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
2 fo:page-sequences
(franklin_2pageseqs.fo) The example is similar but in critical points different: This is what I needed: fo:layout-master-set fo:simple-page-master master-name=rightpage page-width=210mm page-height=297mm margin-top=1.5cm margin-bottom=0.5cm margin-left=3.5cm margin-right=2.5cm orphans=2 widows=2 fo:region-before extent=1cm/ fo:region-after extent=1.5cm/ fo:region-body margin-top=1cm margin-bottom=1.5cm margin-left=0cm margin-right=0cm/ /fo:simple-page-master fo:simple-page-master master-name=leftpage page-width=210mm page-height=297mm margin-top=1.5cm margin-bottom=0.5cm margin-left=2.5cm margin-right=3.5cm orphans=2 widows=2 fo:region-before extent=1cm/ fo:region-after extent=1.5cm/ fo:region-body margin-top=1cm margin-bottom=1.5cm margin-left=0cm margin-right=0cm/ /fo:simple-page-master fo:page-sequence-master master-name=odd_pages fo:repeatable-page-master-alternatives fo:conditional-page-master-reference master-name=rightpage odd-or-even=odd/ /fo:repeatable-page-master-alternatives /fo:page-sequence-master fo:page-sequence-master master-name=even_pages fo:repeatable-page-master-alternatives fo:conditional-page-master-reference master-name=leftpage odd-or-even=even/ /fo:repeatable-page-master-alternatives /fo:page-sequence-master /fo:layout-master-set fo:page-sequence master-name=odd_pages fo:static-content flow-name=xsl-region-after fo:block text-align=end fo:page-number/ /fo:block /fo:static-content fo:flow flow-name=xsl-region-body xsl:apply-templates/ /fo:flow /fo:page-sequence fo:page-sequence master-name=even_pages fo:static-content flow-name=xsl-region-after fo:block text-align=start fo:page-number/ /fo:block /fo:static-content fo:flow flow-name=xsl-region-body xsl:apply-templates/ /fo:flow /fo:page-sequence But it doesn't work! I found two reasons: a) It seems that the attribute 'odd-or-even' in fo:conditional-page-master-reference has to be used as a pair. b) I have to use fo:flow and xsl:apply-templates twice. Has anyone an idea to find another way? Jörg - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: Why doesn't SVG viewBox work?
Scott Moore wrote: Klaus, Could you give me an example of the transformations you used? Right now, I'm just specifying the width and height in inches and more or less guessing the number of pixels in my view area. Not the most robust way to do it. Thanks, Scott Well, I just assumed that one unit in the user space would correspond to one point, i.e. a 1/72 inch. If the viewbox is x y w h and I want to have the graphic at a size of width W and height H (converted to points), then I can use the following transformation transform=scale(W/w, H/h) translate(-x,-y) of course, you have to replace the expressions with the precalculated values. I just re-read the SVG spec and saw that the assumption above (1 unit = 1 pt) is not correct, although it seems to be o.k. in FOP. SVG/CSS says that the default unit is one pixel if no viewport/size is specified, whereas the definition of one pixel is device dependent. There is some description how the abstract size of a pixel should be determined on non-raster oriented media (like PDF), but I don't know to what conclusion the FOP/SVG integrators came to. By the way, to avoid the problem completely, I suggest to use absolute units e.g. circle cx=50pt cy=50pt r=49pt/ (never tried this with FOP, in addition it may become a bit problematic if you attempt to scale such graphics via a transformation) Klaus - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: 2 fo:page-sequences
Hi again, you should use it like in the example franklin_alt.fo: 1. give the region-before and region-after elements in your simple-page-masters different names (say region-before-even, region-before-odd etc.); 2. create only one page-sequence-master: fo:page-sequence-master master-name=document fo:repeatable-page-master-alternatives fo:conditional-page-master-reference master-name=rightpage odd-or-even=odd/ fo:conditional-page-master-reference master-name=leftpage odd-or-even=even/ /fo:repeatable-page-master-alternatives /fo:page-sequence-master 3. create only one page-sequence for your page-sequence-master. In this sequence you can define four different fo:static-content with flow-names region-before-even, region-before-odd etc. HTH, Corinna - Original Message - From: Jörg Flotho [EMAIL PROTECTED] To: Fop-Dev [EMAIL PROTECTED] Sent: Friday, November 02, 2001 2:05 PM Subject: 2 fo:page-sequences (franklin_2pageseqs.fo) The example is similar but in critical points different: This is what I needed: [...] But it doesn't work! I found two reasons: a) It seems that the attribute 'odd-or-even' in fo:conditional-page-master-reference has to be used as a pair. b) I have to use fo:flow and xsl:apply-templates twice. Has anyone an idea to find another way? Jörg - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
force-page-count attribute in fo:page-sequence
Has anyone used the force-page-count attribute in fo:page-sequence ? I am using FOP 0.19 and when I render to PDF it reports that it is ignoring the force-page-count attribute. TIA, -- Dinesh Patel Britannic Assurance. This email and any accompanying documents are intended only for the named recipient, are confidential and may be privileged.If you are not the intended recipient please notify us immediately by email to [EMAIL PROTECTED] and you must not copy, disclose or otherwise use this message. Unauthorised use is strictly prohibited and may be unlawful. The content of this e-mail represents the view of the individual and not the company. The company reserves the right to monitor the content of all e-mails in accordance with lawful business practice. Whilst attachments are virus checked before transmission, Britannic Assurance plc does not accept any liability in respect of any virus which is not detected. Britannic Assurance plc, No. 3002 is registered in England and maintains its registered office at 1 Wythall Green Way, Wythall, Birmingham B47 6WG. Telephone 01564 82 88 88 Fax: 01564 82 88 22 Website: www.britannicassurance.com Britannic Assurance plc, Britannic Unit Linked Assurance Limited and Britannic ISA Managers Limited are regulated by the Personal Investment Authority. Britannic Unit Trust Managers Limited is regulated by IMRO. Each of these companies is a member of the Britannic marketing group which only advises on and sells its own life assurance, pensions, unit trust and ISA products. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: Why doesn't SVG viewBox work?
Scott, Batik displays your example ok (I checked the current code base, 1.1rc2 and 1.1rc3). Do you see only a quarter of the image (upper left?). V. Scott Moore wrote: Hi all, I embedding some SVG into my XSL-FO to create small graphics. But it doesn't seem like the viewBox attribute works. For instance: fo:block fo:instream-foreign-object svg xmlns=http://www.w3.org/2000/svg; width=1in height=1in viewBox=0 0 100 100 preserveAspectRatio=none circle cx=50 cy=50 r=49 stroke-width=2 stroke=grey fill=none/ /svg /fo:instream-foreign-object /fo:block When I run the above thru FOP, my circle is clipped. The bottom and right parts of the circle are not displayed. Why is that? No matter what the actual width or height, shouldn't my coordinate system always be from 0 to 100 along both axis? This SVG works fine in Adobe's SVG viewer. I don't know if this is a Batik problem or a FOP problem, so I'm posting to both lists. Thanks, Scott - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
RE: Why doesn't SVG viewBox work?
Vincent, Yeah, just the upper left. I wonder if it's because FOP uses an older version of Batik? I tried using Batik 1.1rc3 with FOP, but that didn't work. The newer Batik library doesn't have backwards compatibility with FOP 0.20.1. Scott -Original Message- From: Vincent Hardy [mailto:[EMAIL PROTECTED]] Sent: Friday, November 02, 2001 11:56 AM To: Batik Users Cc: FOP List Subject: Re: Why doesn't SVG viewBox work? Scott, Batik displays your example ok (I checked the current code base, 1.1rc2 and 1.1rc3). Do you see only a quarter of the image (upper left?). V. Scott Moore wrote: Hi all, I embedding some SVG into my XSL-FO to create small graphics. But it doesn't seem like the viewBox attribute works. For instance: fo:block fo:instream-foreign-object svg xmlns=http://www.w3.org/2000/svg; width=1in height=1in viewBox=0 0 100 100 preserveAspectRatio=none circle cx=50 cy=50 r=49 stroke-width=2 stroke=grey fill=none/ /svg /fo:instream-foreign-object /fo:block When I run the above thru FOP, my circle is clipped. The bottom and right parts of the circle are not displayed. Why is that? No matter what the actual width or height, shouldn't my coordinate system always be from 0 to 100 along both axis? This SVG works fine in Adobe's SVG viewer. I don't know if this is a Batik problem or a FOP problem, so I'm posting to both lists. Thanks, Scott - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
FOP: Critical Problem
Hello! I have seen many posts regarding the lack of support of the linefeed-preserve tag. Since August, I have been corresponding with one of the FOP Independent Members of the Apache Software Foundation, Arved Sandstrom, to get this problem resolved. We have had no success to date. We have a critical application that relies on this functionality. This will be used by over 5,000 Cariologists. This is a fairly sophisticated application which enables doctors to view, edit and then print a final copy of their transcriptions. It will enable the success of our company and also be a great benchmark for the FOP technology. We are ready to roll out the application once this is completed. We would greatly appreciate any help to get this feature working. Our java programmers would be willing to work closely with your team to get this issue resolved. Thank you kindly, Rachael Blank Medical Archival Systems, Inc. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: FOP: Critical Problem
At 09:52 AM 11/2/01 -0800, you wrote: Our application also needs linefeeds preserved in certain cases. We convert them at the stylesheet level. Here's how we do it: [ SNIP ] Like I said, I have no idea if you're even using stylesheets. I have a feeling if you're talking with Arved, this avenue has already been explored. But I figured I'd throw it out there just in case. By the way if anyone knows of a slicker method to do what I'm doing above (ie some sort of Perl-style replace, or Java-style string tokenizer functionality), please chime in. This possibility, or something essentially similar, came up. That is, I suggested a workaround. Rachael explained the production scenario, and it appears to make sense to me that extra processing of the content before it gets to the formatter is not acceptable. So unless something has changed we are definitely talking about source code changes. I did Rachael a disservice by underestimating the scope of the fix (I looked at the FOP code and started working on this, and it wasn't so straightforward) and overestimating the amount of time I had available to do something about it. Work at my last company was pretty crazy for a lot of this year, and I should have taken that into account, and I apologize for being naively optimistic. In any case that last company has now folded and at the moment I am _not_ in a position to assist. :-) Regards, Arved Sandstrom - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: force-page-count attribute in fo:page-sequence
At 03:06 PM 11/2/01 -, Dinesh Patel wrote: Has anyone used the force-page-count attribute in fo:page-sequence ? I am using FOP 0.19 and when I render to PDF it reports that it is ignoring the force-page-count attribute. The CHANGES file will say for sure when that property was supported. Off the top of my head it showed up in 0.20. Regards, Arved Sandstrom - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: FOP: Critical Problem
I work for a giant healthcare company, and it's still hard for me to imagine how the data comes from --somewhere-- then is inserted into an fo: document with no chance for any text manipulation. Not saying I don't believe it, Id just love to hear the situation. So what about some kind of quick n' dirty little extension to do the work until linespace-treatment=preserve is implemented. (Is it in the plans to attempt to implement everything in the FO spec?) I haven't started on my table-header with (Cont) extension yet, but when I do I'll let the group know how it goes. Arved Sandstrom wrote: At 09:52 AM 11/2/01 -0800, you wrote: Our application also needs linefeeds preserved in certain cases. We convert them at the stylesheet level. Here's how we do it: [ SNIP ] Like I said, I have no idea if you're even using stylesheets. I have a feeling if you're talking with Arved, this avenue has already been explored. But I figured I'd throw it out there just in case. By the way if anyone knows of a slicker method to do what I'm doing above (ie some sort of Perl-style replace, or Java-style string tokenizer functionality), please chime in. This possibility, or something essentially similar, came up. That is, I suggested a workaround. Rachael explained the production scenario, and it appears to make sense to me that extra processing of the content before it gets to the formatter is not acceptable. So unless something has changed we are definitely talking about source code changes. I did Rachael a disservice by underestimating the scope of the fix (I looked at the FOP code and started working on this, and it wasn't so straightforward) and overestimating the amount of time I had available to do something about it. Work at my last company was pretty crazy for a lot of this year, and I should have taken that into account, and I apologize for being naively optimistic. In any case that last company has now folded and at the moment I am _not_ in a position to assist. :-) Regards, Arved Sandstrom - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: FOP: Critical Problem
Rachael, sounds interesting. I'm guessing you're using an XSLT stylesheet to convert the XML you receive either to HTML or FO--which then goes into FOP and comes out PDF. Is that right? If so, I'm still not sure why you couldn't put some extra logic in that stylesheet. I'd also be very intersted in anything you can say about how you're implementing the edit feature. Here's what we're doing: Our application is a mostly read-only internet reporting application that provides ongoing lab results and some canned management reports to our clinical trials customers. We plan to add more features in the future. (I don't think I'm giving away anything here.) We get the data for a given report from Oracle (incremental data is received from a MUMPS system and fed to Oracle 8 times a day) by executing stored procedures which can return any number of result sets representing levels in the data (study, doctor, patient, visit, test, etc...). We convert these result-sets straight into XML using the built in Oracle tool. Then we have a Java piece which combines the flat-strucuted XML result-sets into one XML document(report) which reflects the structure of the data. The nice part about this piece is that it gets specific instructions about how to assmeble each report from a fairly straightforward XML template. Finally we use a collection of report-specific XSLT stylesheets to convert the report XML into FO-PDF, HTML, or delimited text. The end user can also request data in straight XML, though we doubt any of our customers will be ready for that for a while. The nice part about the tailored structure of the XML is that the stylesheets come out very simple, mostly just dropping from one template to the next. We've tried to relegate report-specific logic to a few places, keeping data-manipulation in the data layer (the stored procs), presentation in the stylesheets, and have the Java piece be essentially a dumb conduit. But as always we've had to cheat a little here and there. I've discovered that you can do almost anything in a stylesheet, it's just a matter of how much you want to complicate things. For instance, in one of the reports we're doing a full transpose of row data into columns, with a break at every fifth column. IE - the first set of columns could take up 3 pages, with columns 6-10 starting at page 4. We decided to put this piece in the stylesheet because the number of columns printed varies, which makes defining a result-set that emulates the report difficult (the max number of columns is technically 9,999 - don't ask). But in practice the max number of columns and rows is low (20/100), so we don't have to worry about XSLT memory or performance issues arising from the transpose. On that note, we've also discovered that when the report XML is already in a fairly pristine data structure, the stylesheet seems to have no issues rendering some of our other reports which can get huge. On large reports, the FOP transformation, stored proc call, and Oracle XML conversion all take longer than the XSLT piece by a factor of 10. So anyway, if you really can't do anything special before your data gets to FOP I guess you can either wait for these guys to implement linefeed-treatment=preserve or try to write your own extension. Like I said I've got an extension I need to create. But I've got a million little loose ends to tie up before I start on it. Just out of curiosity has anyone ever offered the active FOP developers money to work faster or on a specific piece? I can't imagine trying to convince my company to shell out $50k for something like this, even if it would save them a million in the long run. It just wouldn't compute. But $50k for third-party penetration testing, where they come back with pearls like Use POST instead of GET??? - No problem. Sorry guys. Matt Rachael Blank wrote: Matt, Thanks again for your help. I haven't gotten it to work yet, but I am still plugging away at it. As a developer in the healthcare industry, I can understand your curiousity. My company handles the archival of millions of records at UPMC. Essentially, we parse disparate data and archive it so that users can access data from different systems in one place. Great idea...huh? We have a subsidiary company which offers a transcription service, Scribes Online. It is an Internet-based transcription service for which I developed the interim solution for the online retrieval of their physician's dictations. There is currently now a small team of us who are wrapping up development of the replacement to my interim solution. The only road block seems to be the linefeed-preserve issue. I can't get into details without breeching non-disclosure agreements and such, but here it is... A Physican dictates a report via phone The Medical Trancriptionist transcribes the document into an application which feeds into Oracle. We pull the document from Oracle using JSP and servlets. The XML is generated on