]> source.dussan.org Git - xmlgraphics-fop.git/commit
Directly use FOP fonts to lay out SVG images for PDF, PS and AFP outputs.
authorVincent Hennebert <vhennebert@apache.org>
Mon, 29 Jul 2013 21:45:20 +0000 (21:45 +0000)
committerVincent Hennebert <vhennebert@apache.org>
Mon, 29 Jul 2013 21:45:20 +0000 (21:45 +0000)
commitf8e822efe1de8bd8192dbb8ff035b9a79f876614
tree8d38f873dd101e6ed0c2ba3b4dfa29e1eb0fdc60
parentc0b99ad44d0e1409008886e2f687c46f4ac05d9d
Directly use FOP fonts to lay out SVG images for PDF, PS and AFP outputs.
The metrics are now taken from FOP configured fonts and no longer from AWT equivalents. That avoids discrepancies in case AWT and FOP use slightly different fonts, or if the font is not installed on the system. That actually also avoids having to install the font on the system.
FOP is also used for the primary layout of text (prior to SVG-specific transforms like translation or rotation) for consistency between SVG and XSL-FO.
This is a joint work from Peter Hancock and myself.

git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/Temp_FopFontsForSVG@1508208 13f79535-47bb-0310-9956-ffa450edef68
102 files changed:
build.xml
findbugs-exclude.xml
lib/batik-all-1.7.jar [deleted file]
lib/batik-all-trunk-patch1041.jar [new file with mode: 0644]
src/codegen/fonts/Courier.xml
src/codegen/fonts/CourierBold.xml
src/codegen/fonts/CourierBoldOblique.xml
src/codegen/fonts/CourierOblique.xml
src/codegen/fonts/Helvetica.xml
src/codegen/fonts/HelveticaBold.xml
src/codegen/fonts/HelveticaBoldOblique.xml
src/codegen/fonts/HelveticaOblique.xml
src/codegen/fonts/Symbol.xml
src/codegen/fonts/TimesBold.xml
src/codegen/fonts/TimesBoldItalic.xml
src/codegen/fonts/TimesItalic.xml
src/codegen/fonts/TimesRoman.xml
src/codegen/fonts/ZapfDingbats.xml
src/codegen/fonts/font-file.xsl
src/java/org/apache/fop/afp/AFPEventProducer.java
src/java/org/apache/fop/afp/fonts/AFPFont.java
src/java/org/apache/fop/afp/fonts/AbstractOutlineFont.java
src/java/org/apache/fop/afp/fonts/CharacterSet.java
src/java/org/apache/fop/afp/fonts/CharacterSetBuilder.java
src/java/org/apache/fop/afp/fonts/CharacterSetOrientation.java
src/java/org/apache/fop/afp/fonts/DoubleByteFont.java
src/java/org/apache/fop/afp/fonts/FopCharacterSet.java
src/java/org/apache/fop/afp/fonts/IntegerKeyStore.java [new file with mode: 0644]
src/java/org/apache/fop/afp/fonts/OutlineFont.java
src/java/org/apache/fop/afp/fonts/RasterFont.java
src/java/org/apache/fop/afp/goca/GraphicsCharacterString.java
src/java/org/apache/fop/afp/svg/AFPBridgeContext.java
src/java/org/apache/fop/afp/svg/AFPFontFamilyResolver.java [new file with mode: 0644]
src/java/org/apache/fop/afp/svg/AFPTextHandler.java
src/java/org/apache/fop/afp/svg/AFPTextPainter.java
src/java/org/apache/fop/fo/FOText.java
src/java/org/apache/fop/fonts/Base14Font.java
src/java/org/apache/fop/fonts/CIDFont.java
src/java/org/apache/fop/fonts/CustomFont.java
src/java/org/apache/fop/fonts/FontInfo.java
src/java/org/apache/fop/fonts/FontMetrics.java
src/java/org/apache/fop/fonts/GlyphMapping.java [new file with mode: 0644]
src/java/org/apache/fop/fonts/LazyFont.java
src/java/org/apache/fop/fonts/MultiByteFont.java
src/java/org/apache/fop/fonts/SingleByteFont.java
src/java/org/apache/fop/fonts/TextFragment.java [new file with mode: 0644]
src/java/org/apache/fop/fonts/truetype/TTFFile.java
src/java/org/apache/fop/fonts/truetype/TTFFontLoader.java
src/java/org/apache/fop/fonts/type1/AFMCharMetrics.java
src/java/org/apache/fop/fonts/type1/Type1FontLoader.java
src/java/org/apache/fop/image/loader/batik/ImageConverterSVG2G2D.java
src/java/org/apache/fop/image/loader/batik/PreloaderSVG.java
src/java/org/apache/fop/layoutmgr/inline/TextLayoutManager.java
src/java/org/apache/fop/render/AbstractGenericSVGHandler.java
src/java/org/apache/fop/render/afp/AFPSVGHandler.java
src/java/org/apache/fop/render/java2d/CustomFontMetricsMapper.java
src/java/org/apache/fop/render/java2d/Java2DFontMetrics.java
src/java/org/apache/fop/render/java2d/Java2DSVGHandler.java
src/java/org/apache/fop/render/java2d/SystemFontMetricsMapper.java
src/java/org/apache/fop/render/pdf/PDFImageHandlerSVG.java
src/java/org/apache/fop/render/ps/AbstractPSTranscoder.java
src/java/org/apache/fop/render/ps/PSImageHandlerSVG.java
src/java/org/apache/fop/render/ps/PSSVGHandler.java
src/java/org/apache/fop/render/ps/PSTextPainter.java
src/java/org/apache/fop/svg/ACIUtils.java
src/java/org/apache/fop/svg/AbstractFOPTextPainter.java
src/java/org/apache/fop/svg/AbstractFOPTranscoder.java
src/java/org/apache/fop/svg/NativeTextPainter.java
src/java/org/apache/fop/svg/PDFTextPainter.java
src/java/org/apache/fop/svg/PDFTextUtil.java
src/java/org/apache/fop/svg/PDFTranscoder.java
src/java/org/apache/fop/svg/SVGUserAgent.java
src/java/org/apache/fop/svg/SimpleSVGUserAgent.java
src/java/org/apache/fop/svg/font/AggregatingFontFamilyResolver.java [new file with mode: 0644]
src/java/org/apache/fop/svg/font/FOPFontFamilyResolver.java [new file with mode: 0644]
src/java/org/apache/fop/svg/font/FOPFontFamilyResolverImpl.java [new file with mode: 0644]
src/java/org/apache/fop/svg/font/FOPGVTFont.java [new file with mode: 0644]
src/java/org/apache/fop/svg/font/FOPGVTFontFamily.java [new file with mode: 0644]
src/java/org/apache/fop/svg/font/FOPGVTGlyphVector.java [new file with mode: 0644]
src/java/org/apache/fop/svg/font/FilteringFontFamilyResolver.java [new file with mode: 0644]
test/java/org/apache/fop/afp/fonts/IntegerKeyStoreTestCase.java [new file with mode: 0644]
test/java/org/apache/fop/fonts/DejaVuLGCSerifTestCase.java
test/java/org/apache/fop/fonts/FontEventProcessingTestCase.java
test/java/org/apache/fop/fonts/svg-fonts.fo [deleted file]
test/java/org/apache/fop/fonts/truetype/TTFFileTestCase.java
test/java/org/apache/fop/fonts/type1/AFMParserTestCase.java
test/java/org/apache/fop/fonts/type1/underline.afm [new file with mode: 0644]
test/java/org/apache/fop/svg/NativeTextPainterTest.java [new file with mode: 0644]
test/java/org/apache/fop/svg/OperatorValidator.java [new file with mode: 0644]
test/java/org/apache/fop/svg/PDFTextPainterTestCase.java [new file with mode: 0644]
test/java/org/apache/fop/svg/PSTextPainterTestCase.java [new file with mode: 0644]
test/java/org/apache/fop/svg/baseline-shift.svg [new file with mode: 0644]
test/java/org/apache/fop/svg/dx-dy.svg [new file with mode: 0644]
test/java/org/apache/fop/svg/font/BasicGlyphVectorTestCase.java [new file with mode: 0644]
test/java/org/apache/fop/svg/font/FOPFontFamilyResolverTestCase.java [new file with mode: 0644]
test/java/org/apache/fop/svg/font/FOPGVTFontTestCase.java [new file with mode: 0644]
test/java/org/apache/fop/svg/font/FOPGVTGlyphVectorTest.java [new file with mode: 0644]
test/java/org/apache/fop/svg/font/FontInfoBuilder.java [new file with mode: 0644]
test/java/org/apache/fop/svg/font/GlyphLayoutTestCase.java [new file with mode: 0644]
test/java/org/apache/fop/svg/glyph-orientation.svg [new file with mode: 0644]
test/java/org/apache/fop/svg/rotated-glyph.svg [new file with mode: 0644]
test/java/org/apache/fop/svg/spacing.svg [new file with mode: 0644]