2016-08-29 5 views
2

Я использую Apache FOP для создания документа в формате PDF, который включает в себя штрих-код PDF417, и когда я с помощью командной строки это работает:Встраивание штрих-коды с помощью Apache FOP в Java

fop -fo source.fo -pdf result.pdf 

Но когда я использую Java альтернатива, штрих-код отображается пустой и журнал показывает эти предупреждения:

Unknown formatting object "{http://barcode4j.krysalis.org/ns}barcode" encountered (a child of fo:instream-foreign-object}. (See position 88:1266) 
Unknown formatting object "{http://barcode4j.krysalis.org/ns}pdf417" encountered (a child of barcode}. (See position 89:45) 

Я включил эту зависимость в Maven:

<!-- https://mvnrepository.com/artifact/org.apache.xmlgraphics/fop --> 
<dependency> 
    <groupId>org.apache.xmlgraphics</groupId> 
    <artifactId>fop</artifactId> 
    <version>2.1</version> 
</dependency> 

<!-- https://mvnrepository.com/artifact/net.sf.barcode4j/barcode4j --> 
<dependency> 
    <groupId>net.sf.barcode4j</groupId> 
    <artifactId>barcode4j</artifactId> 
    <version>2.1</version> 
</dependency> 

Что мне не хватает?

Заранее благодарен!

ответ

2

Ответ был очень прост, вместо того, чтобы использовать Maven зависимые пакеты:

<!-- https://mvnrepository.com/artifact/net.sf.barcode4j/barcode4j --> 
<dependency> 
    <groupId>net.sf.barcode4j</groupId> 
    <artifactId>barcode4j</artifactId> 
    <version>2.1</version> 
</dependency> 

мне нужно использовать:

<!-- https://mvnrepository.com/artifact/net.sf.barcode4j/barcode4j-fop-ext --> 
<dependency> 
    <groupId>net.sf.barcode4j</groupId> 
    <artifactId>barcode4j-fop-ext</artifactId> 
    <version>2.1</version> 
</dependency> 

Довольно сейчас очевидно. Благодаря себе! :)

Смежные вопросы