Return-Path: Delivered-To: apmail-pdfbox-dev-archive@www.apache.org Received: (qmail 60223 invoked from network); 9 Feb 2010 07:05:51 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 9 Feb 2010 07:05:51 -0000 Received: (qmail 87514 invoked by uid 500); 9 Feb 2010 07:05:51 -0000 Delivered-To: apmail-pdfbox-dev-archive@pdfbox.apache.org Received: (qmail 87439 invoked by uid 500); 9 Feb 2010 07:05:50 -0000 Mailing-List: contact dev-help@pdfbox.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@pdfbox.apache.org Delivered-To: mailing list dev@pdfbox.apache.org Received: (qmail 87419 invoked by uid 99); 9 Feb 2010 07:05:49 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 09 Feb 2010 07:05:49 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 09 Feb 2010 07:05:48 +0000 Received: from brutus.apache.org (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 516E8234C4A8 for ; Mon, 8 Feb 2010 23:05:28 -0800 (PST) Message-ID: <299321019.142291265699128332.JavaMail.jira@brutus.apache.org> Date: Tue, 9 Feb 2010 07:05:28 +0000 (UTC) From: =?utf-8?Q?Andreas_Lehmk=C3=BChler_=28JIRA=29?= To: dev@pdfbox.apache.org Subject: [jira] Resolved: (PDFBOX-542) Support for Adobe CFF/Type2 fonts MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/PDFBOX-542?page=3Dcom.atlassia= n.jira.plugin.system.issuetabpanels:all-tabpanel ] Andreas Lehmk=C3=BChler resolved PDFBOX-542. --------------------------------------- Resolution: Fixed Fix Version/s: 1.0.0 The java 6 dependencies are removed. I've added some comments to the code t= o look for after the release.=20 At this point everything is done, so that I set this to resolved. The CFF/Type2 support is a great improvement of PDFBox. Thanks to Villu for= his effort. > Support for Adobe CFF/Type2 fonts > --------------------------------- > > Key: PDFBOX-542 > URL: https://issues.apache.org/jira/browse/PDFBOX-542 > Project: PDFBox > Issue Type: New Feature > Components: FontBox, PDModel > Affects Versions: 0.8.0-incubator > Reporter: Villu Ruusmann > Assignee: Andreas Lehmk=C3=BChler > Fix For: 1.0.0 > > Attachments: fontbox-r818793.patch, pdfbox-r823839.patch, with-cf= f.png, without-cff.png > > > PDFBox should support embedded font types, most prominently the Adobe CFF= /Type2 (aka Type1C) font type. The desired functionality includes both glyp= h metrics (for PDF text extraction using org.apache.pdfbox.util.PDFTextStri= pper) and glyph painting (for PDF rendering using org.apache.pdfbox.pdfview= er.PageDrawer). > I have implemented the basics of Adobe CFF/Type2 font specification. If t= he other project members find my work substantial, I would like to see it i= ncorporated into FontBox/PDFBox projects. Please see the attached patch fil= es. > Design considerations. A PDF FontFile3 stream can be parsed into CFFFont = objects by class CFFParser. CFFFont contains a map of glyph names to Type2 = charstrings, which can be converted to Type1 charstrings by class CharStrin= gConverter and rendered by class CharStringRenderer. Glyph metrics is attai= ned by formatting the result as AFM by class AFMFormatter, which plugs nice= ly with existing PDFBox infrastructure. Glyph painting is attained by forma= tting the result as PostScript Type1 font by class Type1FontFormatter, whic= h can be loaded via java.awt.Font#createFont(int, InputStream). > The current implementation does not support synthetic CFF fonts nor CID-k= eyed CFF fonts. Also, the conversion of certain Type2 features (stemming, h= inting, flex) is missing. --=20 This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.