Thread copied below for reference... I found how to do this. In 
the build.xml, in the <fop> section of the target, include the parm:

userconfig="./fop.xconf"

Then, in the fop.conf file, the following can be added, along with the sections 
where I have now found, you can specify fonts:

<renderer mime="application/pdf">
  <encryption-params>
     <encryption-length>128</encryption-length>
     <user-password>testuserpass</user-password>
     <owner-password>testownerpass</owner-password>
     <noprint/>
     <nocopy/>
     <noedit/>
     <noannotations/>
     <nofillinforms/>
     <noaccesscontent/>
     <noassembledoc/>
     <noprinthq/>
  </encryption-params>
</renderer>Unfortunately, it doesn't support all command-line options, e.g. -d 
is not supported, only valid userconfs. The point being, in an ant task, -c can 
in some cases be replaced by a call to a userconfs file.

Thanks,
Walter Kruse

X---------------------------------------------------------------------snip

Mar 09, 2011; 8:09am
        
                                        
                FOP command-line option in ant task
        
                                
                        
                
                
                        
                                
                                        
                
                        


        
        
                
        
        
        
        

        
                                
                                
                                        
        
        
        
                




I build PDF from DocBook with Ant in Eclipse. All works well.

I
want to pass the FOP command line args for -noprint, -nocopy, -noedit
and -noannotations. I read about this in the FOP docs under
security/encryption 
(http://xmlgraphics.apache.org/fop/0.95/pdfencryption.html). However, I 
cannot seem to find how to do this in my
Ant build.xml 

The built-in ant task (http://xmlgraphics.apache.org/fop/0.95/anttask.html) 
makes provision for indir, outdir
etc. parameters. How do I include the FOP command-line options though ?


My target is as follows:

<target name="build-pdf" depends="depends" 
        description="Generates PDF files from DocBook XML">
        <echo message="Running 'build-pdf' at ${timestamp}" />

        <echo message="******************************************" />
        <xslt style="${fo.stylesheet}" extension=".fo" 
            basedir="${source.dir}" destdir="${fo.dir}">

            <classpath refid="xalan.classpath" />
            <include name="RubyRecipesForTesters.xml" />

        </xslt>
        <taskdef name="fop" classname="org.apache.fop.tools.anttasks.Fop">

            <classpath>
                <fileset dir="${fop.home}/lib">
                    <include name="*.jar" />
                </fileset>
                <fileset dir="${fop.home}/build">

                    <include name="fop.jar" />
                    <include name="fop-hyph.jar" />
                </fileset>
            </classpath>
        </taskdef>

        

        <fop format="application/pdf" 
fofile="${fo.dir}/RubyRecipesForTesters.fo"
            outfile="${target.dir}/RubyRecipesForTesters.pdf"/>
        <copy file="${target.dir}/RubyRecipesForTesters.pdf" 
tofile="${publish.dir}/${pub.dir}/RubyRecipesforTesters.pdf"/>

    </target>

Thanks in advance
Walter Kruse
                                          


        
        
        
        
        
                                                

                                                
                                        
                                        
                                                

                                        
                        
                                
                        
                
        
        
                
                        
                                
                                        Jeremias Maerki-2
                                
                                
                                        Reply |
                                        Threaded
        
         |
                                        More 
        
                                         
                                        
        
        
                                        
                
                
        
        
        
                                
                                
                                        
                                        
                Mar 09, 2011; 11:27am
        
                                        
                Re: FOP command-line option in ant task
        
                                
                        
                
                
                        
                                

                                
                                        
        
        
        
                The command-line and Ant task are completely different 
front-ends to FOP.

The Ant task did not get as much love as the command-line so may not

expose all features offered from the command-line. If you know a bit

about Java it should be fairly easy for you to extend the Ant task to

expose the features you're missing. We'll gladly consider any patch you

post to FOP's Bugzilla.


On 09.03.2011 07:09:37 Walter Kruse wrote:

> 

> I build PDF from DocBook with Ant in Eclipse. All works well.

> 

> I

> want to pass the FOP command line args for -noprint, -nocopy, -noedit

> and -noannotations. I read about this in the FOP docs under

> security/encryption 
> (http://xmlgraphics.apache.org/fop/0.95/pdfencryption.html). However, I 
> cannot seem to find how to do this in my

> Ant build.xml 

> 

> The built-in ant task (http://xmlgraphics.apache.org/fop/0.95/anttask.html) 
> makes provision for indir, outdir

> etc. parameters. How do I include the FOP command-line options though ?

> 

> 

> My target is as follows:

> 

> <target name="build-pdf" depends="depends" 

>         description="Generates PDF files from DocBook XML">

>         <echo message="Running 'build-pdf' at ${timestamp}" />

> 

>         <echo message="******************************************" />

>         <xslt style="${fo.stylesheet}" extension=".fo" 

>             basedir="${source.dir}" destdir="${fo.dir}">

> 

>             <classpath refid="xalan.classpath" />

>             <include name="RubyRecipesForTesters.xml" />

> 

>         </xslt>

>         <taskdef name="fop" classname="org.apache.fop.tools.anttasks.Fop">

> 

>             <classpath>

>                 <fileset dir="${fop.home}/lib">

>                     <include name="*.jar" />

>                 </fileset>

>                 <fileset dir="${fop.home}/build">

> 

>                     <include name="fop.jar" />

>                     <include name="fop-hyph.jar" />

>                 </fileset>

>             </classpath>

>         </taskdef>

> 

>         

> 

>         <fop format="application/pdf" 
> fofile="${fo.dir}/RubyRecipesForTesters.fo"

>             outfile="${target.dir}/RubyRecipesForTesters.pdf"/>

>         <copy file="${target.dir}/RubyRecipesForTesters.pdf"
 tofile="${publish.dir}/${pub.dir}/RubyRecipesforTesters.pdf"/>

> 

>     </target>

> 

> Thanks in advance

> Walter Kruse

>                                         
... [show rest of quote]



Jeremias Maerki



---------------------------------------------------------------------

To unsubscribe, e-mail: [hidden email]

For additional commands, e-mail: [hidden email]




        
        
        
        
        
                        
                                
                        
                
        
        
                
                        
                                
                                        Peter Hancock-2
                                
                                
                                        Reply |
                                        Threaded
        
         |
                                        More 
        
                                         
                                        
        
        
                                        
                
                
        
        
        
                                
                                
                                        
                                        
                Mar 09, 2011; 11:43am
        
                                        
                Re: FOP command-line option in ant task
        
                                
                        
                
                
                        
                                
                                        
                
                        


        
        
                
        
        
        
        

        
                                
                                
                                        
        
        
                                In reply to this post by Walter Kruse-2
                        
        
                Hi Walter,


Have you tried running FOP from the command line? This is the

preferred way to run FOP as a stand alone application.  If you can

invest a little time to set this up you will be rewarded with the

ability to fully configure FOP.


If you think you are truly bound to the ant task, then a modest

modification to org.apache.fop.tools.anttasks.Fop to parse the

properties for the encryption parameters, as suggested by Jeremias.

This is handled from the command line arguments by

org.apache.fop.cli.CommandLineOptions, which you may want to use for

inspiration.


Good luck,


Peter



On Wed, Mar 9, 2011 at 6:09 AM, Walter Kruse <[hidden email]> wrote:

> I build PDF from DocBook with Ant in Eclipse. All works well.

>

> I want to pass the FOP command line args for -noprint, -nocopy, -noedit and

> -noannotations. I read about this in the FOP docs under security/encryption

> (http://xmlgraphics.apache.org/fop/0.95/pdfencryption.html). However, I

> cannot seem to find how to do this in my Ant build.xml

>

> The built-in ant task (http://xmlgraphics.apache.org/fop/0.95/anttask.html)

> makes provision for indir, outdir etc. parameters. How do I include the FOP

> command-line options though ?

>

> My target is as follows:

>

> <target name="build-pdf" depends="depends"

>         description="Generates PDF files from DocBook XML">

>         <echo message="Running 'build-pdf' at ${timestamp}" />

>         <echo message="******************************************" />

>         <xslt style="${fo.stylesheet}" extension=".fo"

>             basedir="${source.dir}" destdir="${fo.dir}">

>             <classpath refid="xalan.classpath" />

>             <include name="RubyRecipesForTesters.xml" />

>

>         </xslt>

>         <taskdef name="fop" classname="org.apache.fop.tools.anttasks.Fop">

>             <classpath>

>                 <fileset dir="${fop.home}/lib">

>                     <include name="*.jar" />

>                 </fileset>

>                 <fileset dir="${fop.home}/build">

>                     <include name="fop.jar" />

>                     <include name="fop-hyph.jar" />

>                 </fileset>

>             </classpath>

>         </taskdef>

>

>

>         <fop format="application/pdf"

> fofile="${fo.dir}/RubyRecipesForTesters.fo"

>             outfile="${target.dir}/RubyRecipesForTesters.pdf"/>

>         <copy file="${target.dir}/RubyRecipesForTesters.pdf"

> tofile="${publish.dir}/${pub.dir}/RubyRecipesforTesters.pdf"/>

>     </target>

>

> Thanks in advance

> Walter Kruse

>
... [show rest of quote]
---------------------------------------------------------------------

To unsubscribe, e-mail: [hidden email]

For additional commands, e-mail: [hidden email]
                                          

Reply via email to