首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Maven pdf插件:放置userconfig.xml的位置

Maven pdf插件:放置userconfig.xml的位置
EN

Stack Overflow用户
提问于 2016-08-13 05:48:53
回答 1查看 384关注 0票数 1

由于我的语言中的一些特殊字符,我需要在PDF文件中嵌入字体。我读了很多关于FOP的页面,我想我需要这样的配置文件:

代码语言:javascript
复制
<?xml version="1.0"?>
<fop>
  <renderers>
    <renderer mime="application/pdf">       
      <fonts>                           
            <font kerning="yes"  embed-url="file:///C:/windows/fonts/arial.ttf">
                  <font-triplet name="Arial" style="normal" weight="normal"/>
                </font>                     
        </fonts>
    </renderer>
  </renderers>     
</fop>

不幸的是,当我运行mvn pdf:pdf -X时,我看到行

代码语言:javascript
复制
[DEBUG] userconfig is null

看起来配置已经加载了。我应该把配置文件放在哪里,我如何告诉pdf插件在哪里看?

EN

回答 1

Stack Overflow用户

发布于 2016-08-13 22:12:08

我找到了解决方案,但我仍然不相信它是理想的。我使用Exec Maven插件,并使用从Maven Pdf插件创建的结果运行fop。最终的解决方案如下所示:

pom.xml

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <groupId>cz.kosina</groupId>
   <artifactId>pdf-generate</artifactId>
   <version>1.0-SNAPSHOT</version>
   <packaging>jar</packaging>
   <name>PDF generation</name>
   <repositories />
   <build>
      <plugins>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-pdf-plugin</artifactId>
            <version>1.3</version>
            <configuration>
               <locales>cs_CZ</locales>
            </configuration>
         </plugin>
         <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>exec-maven-plugin</artifactId>
            <version>1.2.1</version>
            <configuration>
               <mainClass>org.apache.fop.cli.Main</mainClass>
               <arguments>
                  <argument>-fo</argument>
                  <argument>.\target\pdf\maven-pdf-plugin.fo</argument>
                  <argument>-c</argument>
                  <argument>.\target\pdf\fop.xconf</argument>
                  <argument>file.pdf</argument>
               </arguments>
            </configuration>
         </plugin>
      </plugins>
   </build>
   <dependencies>
      <dependency>
         <groupId>org.apache.xmlgraphics</groupId>
         <artifactId>fop</artifactId>
         <version>2.1</version>
      </dependency>
   </dependencies>
</project>

fop.xconf:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<fop>
   <renderers>
      <renderer mime="application/pdf">
         <fonts>
            <font kerning="yes" embed-url="file:///C:/windows/fonts/arial.ttf">
               <font-triplet name="Arial" style="normal" weight="normal" />
            </font>
         </fonts>
      </renderer>
   </renderers>
</fop>

fop.xconf存储在与pdf-config.xml相邻的站点/资源中,并由maven pdf插件复制到目标中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38926929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档