jasperreports-fonts:process-fonts

Full name:

com.yinzara:jasperreports-fonts-maven-plugin:0.1.1:process-fonts

Description:

Scans the source directories for fonts, writes a Jasper fonts XML file, writes a jasperreports_extensions.properties file then packages as a JAR.

Attributes:

Optional Parameters

Name Type Since Description
<attachArtifact> boolean -

Should the output jar be attached as an artifact to the current project (has no effect in standalone).


Default value is: false.
<classifier> String -

If attachArtifact is true, this is the classifier of the attached artifact.


Default value is: fonts.
User property is: jasperreports.fonts.classifier.
<copyOnRename> boolean -

When renaming font families, should the original name be mapped too?


Default value is: true.
<deploymentPath> String -

This parameter is only used if packageFonts is false (the default value).

This path will be included in the outputted fonts configuration as the location of the font files (i.e. the directory) on the system running Jasper.

If unspecified in standalone mode this will default to the absolute path resolved from the srcPath parameter

If unspecified in a project, no path will be prepended to the fonts and it is assumed that all fonts in srcPath will be installed at the root of the classpath on the system running Jasper


User property is: jasperreports.fonts.deploymentPath.
<excludes> String -

Since specifying a fileSet in command line mode is impossible, this parameter allows you to specify a comma separated list of "excludes".


<failOnBadFont> boolean -

If true and a font is unable to be read, the build will fail.

If false (the default value), fonts that are unable to be read will be skipped


Default value is: false.
User property is: jasperreports.fonts.failOnBadFont.
<familyRenames> FamilyRename[] -

If required, you can rename families read from the font files to other families. This allows you to say use "Helvetica" (the default Jasper font) to a font file you have that isn't Helvetica.

Overrides anything specified in the renames parameter


<includes> String -

Since specifying a fileSet in command line mode is impossible, this parameter allows you to specify a comma separated list of "includes".


Default value is: **/*.ttf,**/*.TTF.
<jarName> String -

The name of the output jar file.

In standalone, this defaults to "fonts.jar"

In a project, this defaults to ${project.build.finalName}-${classifier}.jar where ${classifier} is the classifier configuration property of this plugin


User property is: jarName.
<outputPath> String -

The directory to output the artifacts to.

In standalone mode this defaults to a subfolder "target" from the current directory

In a project this defaults to ${project.build.directory}


User property is: outputPath.
<packageFonts> boolean -

Should the fonts processed by the plugin be packaged in the resulting jar file?

If true all font files will be copied into the resultant jar file and this can be installed directly in the root of the classpath on the system running Jasper. However, if you do not have rights to distribute these fonts, be careful about violating licenses.


Default value is: false.
User property is: packageFonts.
<pdfEmbedded> boolean -

The value of the "pdfEmbedded" XML element in the fonts XML file.

The default is almost always appropriate


Default value is: true.
<pdfEncoding> String -

The value of the "pdfEncoding" XML element in the fonts XML file.

The default value is almost always appropriate


Default value is: Identity-H.
<renames> String -

Related to the familyRenames parameter, this can be used in standalone mode to rename certain font families to another.

Ignored if familyRenames is specified

Of the syntax:


oldFamilyName1:newFamilyName1,oldFamilyName2:newFamilyName2


User property is: jasperreports.fonts.renames.
<requireNormalFonts> boolean -

If a given font family does not have a normal type face font (i.e. not bold or italic), should one of the other type faces be mapped as the normal font as well.

This will ensure a <normal> element appears for every fontFamily in the output xml


Default value is: true.
User property is: jasperreports.fonts.requireNormalFonts.
<srcPath> String -

This is the location where fonts will be searched from and all font paths will be relative to if packageFonts is false (the default value).

In standalone mode this defaults to the current directory

In a project this defaults to "${basedir}/src/fonts


User property is: srcPath.
<workPath> String -

This parameter controls where the .properties and .xml files needed for deployment are created.

In standalone mode this defaults to the resolved deploymentPath

In in a project this defaults to ${project.build.outputDirectory}. This will cause the .properties and .xml files to be in the classpath of your project (either jar or war). If set to an empty element, it will default to ${project.build.directory}/fonts.


User property is: jasperreports.fonts.outputDirectory.
<xmlFileName> String -

This is the name of the XML file used to store the font information for jasper.

In a standalone mode, this defaults to "jasper_fonts.xml"

In a project this defaults to ${project.build.finalName}-${classifier}.xml where classifier is the classifier parameter

The default value is almost always appropriate unless you have other font libraries on the same running Jasper application


User property is: jasperreports.fonts.xmlFileName.

Parameter Details

<attachArtifact>

Should the output jar be attached as an artifact to the current project (has no effect in standalone).

  • Type: boolean
  • Required: No
  • Default: false

<classifier>

If attachArtifact is true, this is the classifier of the attached artifact.

  • Type: java.lang.String
  • Required: No
  • User Property: jasperreports.fonts.classifier
  • Default: fonts

<copyOnRename>

When renaming font families, should the original name be mapped too?

  • Type: boolean
  • Required: No
  • Default: true

<deploymentPath>

This parameter is only used if packageFonts is false (the default value).

This path will be included in the outputted fonts configuration as the location of the font files (i.e. the directory) on the system running Jasper.

If unspecified in standalone mode this will default to the absolute path resolved from the srcPath parameter

If unspecified in a project, no path will be prepended to the fonts and it is assumed that all fonts in srcPath will be installed at the root of the classpath on the system running Jasper

  • Type: java.lang.String
  • Required: No
  • User Property: jasperreports.fonts.deploymentPath

<excludes>

Since specifying a fileSet in command line mode is impossible, this parameter allows you to specify a comma separated list of "excludes".

  • Type: java.lang.String
  • Required: No

<failOnBadFont>

If true and a font is unable to be read, the build will fail.

If false (the default value), fonts that are unable to be read will be skipped

  • Type: boolean
  • Required: No
  • User Property: jasperreports.fonts.failOnBadFont
  • Default: false

<familyRenames>

If required, you can rename families read from the font files to other families. This allows you to say use "Helvetica" (the default Jasper font) to a font file you have that isn't Helvetica.

Overrides anything specified in the renames parameter

  • Type: com.yinzara.jasperreports.fonts.maven.plugin.FamilyRename[]
  • Required: No

<includes>

Since specifying a fileSet in command line mode is impossible, this parameter allows you to specify a comma separated list of "includes".

  • Type: java.lang.String
  • Required: No
  • Default: **/*.ttf,**/*.TTF

<jarName>

The name of the output jar file.

In standalone, this defaults to "fonts.jar"

In a project, this defaults to ${project.build.finalName}-${classifier}.jar where ${classifier} is the classifier configuration property of this plugin

  • Type: java.lang.String
  • Required: No
  • User Property: jarName

<outputPath>

The directory to output the artifacts to.

In standalone mode this defaults to a subfolder "target" from the current directory

In a project this defaults to ${project.build.directory}

  • Type: java.lang.String
  • Required: No
  • User Property: outputPath

<packageFonts>

Should the fonts processed by the plugin be packaged in the resulting jar file?

If true all font files will be copied into the resultant jar file and this can be installed directly in the root of the classpath on the system running Jasper. However, if you do not have rights to distribute these fonts, be careful about violating licenses.

  • Type: boolean
  • Required: No
  • User Property: packageFonts
  • Default: false

<pdfEmbedded>

The value of the "pdfEmbedded" XML element in the fonts XML file.

The default is almost always appropriate

  • Type: boolean
  • Required: No
  • Default: true

<pdfEncoding>

The value of the "pdfEncoding" XML element in the fonts XML file.

The default value is almost always appropriate

  • Type: java.lang.String
  • Required: No
  • Default: Identity-H

<renames>

Related to the familyRenames parameter, this can be used in standalone mode to rename certain font families to another.

Ignored if familyRenames is specified

Of the syntax:


oldFamilyName1:newFamilyName1,oldFamilyName2:newFamilyName2

  • Type: java.lang.String
  • Required: No
  • User Property: jasperreports.fonts.renames

<requireNormalFonts>

If a given font family does not have a normal type face font (i.e. not bold or italic), should one of the other type faces be mapped as the normal font as well.

This will ensure a <normal> element appears for every fontFamily in the output xml

  • Type: boolean
  • Required: No
  • User Property: jasperreports.fonts.requireNormalFonts
  • Default: true

<srcPath>

This is the location where fonts will be searched from and all font paths will be relative to if packageFonts is false (the default value).

In standalone mode this defaults to the current directory

In a project this defaults to "${basedir}/src/fonts

  • Type: java.lang.String
  • Required: No
  • User Property: srcPath

<workPath>

This parameter controls where the .properties and .xml files needed for deployment are created.

In standalone mode this defaults to the resolved deploymentPath

In in a project this defaults to ${project.build.outputDirectory}. This will cause the .properties and .xml files to be in the classpath of your project (either jar or war). If set to an empty element, it will default to ${project.build.directory}/fonts.

  • Type: java.lang.String
  • Required: No
  • User Property: jasperreports.fonts.outputDirectory

<xmlFileName>

This is the name of the XML file used to store the font information for jasper.

In a standalone mode, this defaults to "jasper_fonts.xml"

In a project this defaults to ${project.build.finalName}-${classifier}.xml where classifier is the classifier parameter

The default value is almost always appropriate unless you have other font libraries on the same running Jasper application

  • Type: java.lang.String
  • Required: No
  • User Property: jasperreports.fonts.xmlFileName