Date: prev next · Thread: first prev next last
2013 Archives by date, by thread · List index


Thanks Lubos

I should clarify, I already have an eot->ttf converter working; proof
positive that MS and Monotype's documentation is sufficient :). I just need
to clean up the code, write some unit tests, etc. before I am comfortable
submitting it to LibreOffice.

I'll take a look at EmbeddedFontsHelper


On Tue, Aug 27, 2013 at 8:25 AM, Lubos Lunak <l.lunak@suse.cz> wrote:

On Tuesday 27 of August 2013, Brennan T Vincent wrote:
Hi all,

One of the most commonly-occurring problems with .pub import is the fact
that we don't respect embedded fonts. Now that LibreOffice supports
embedded fonts, it should be possible to make this work.

 That depends. EOT is a Microsoft proprietary font format (which has been
submitted to W3C, but AFAICT pretty much everybody else ignores it). There
are tools to convert e.g. TTF fonts to EOT, but I couldn't find absolutely
anything that'd convert from EOT and the only thing capable of at least
reading it is MS Windows itself. As far as I understand it, the available
documentation on it is unsufficient for implementing a reader if you'd
decide
it'd be worth the effort (I'm not entirely sure on this part, feel free to
do
your own research).

 Here are some links that I found on the topic:

http://blog.yezhucn.com/gdi/t2embed_TTLoadEmbeddedFont.htm
http://www.pptfaq.com/FAQ00076_Embedding_fonts.htm


http://graphicdesign.stackexchange.com/questions/16234/are-there-any-free-tools-to-convert-eot-files-to-ttf-otf-or-any-other-font-f
http://www.w3.org/Submission/2008/SUBM-EOT-20080305/
http://www.w3.org/Submission/2008/SUBM-MTX-20080305/
http://lists.w3.org/Archives/Public/www-style/2008Apr/0227.html
http://securitylabs.websense.com/content/Blogs/3114.aspx

A few questions:

(1) Do we support Embedded OpenType fonts currently? (.eot)

 No.

(2) If not (which I suspect), I can contribute some code to do this.
Microsoft and Monotype recently granted a perpetual, irrevocable free
patent and copyright license to implement the .eot format, so there
should
be no legal issues. I have written a C library to convert from .eot to
.ttf
and would like to know who to talk to in order to get this included in
LibreOffice.

 Yes, adding support for export should be fairly easy, given that TTF->EOT
conversion is possible, but that's the easier part and it doesn't really
help
LO much.

 A kind of limited import support should be also doable, as the Windows
TTLoadEmbeddedFont() function can load such a font for use (unlike the
normal
Windows function for opening fonts). See the attached hackish proof of
concept patch. That'd make import of it Windows-only, unless you find a way
to use EOT on other platforms. It'd also most probably require some changes
in VCL's font handling, as I couldn't get the activated font listed among
available fonts (which is what otherwise the current reading of embedded
fonts does, it adds the new font temporarily in whichever way the
underlying
font system supports and then just uses it normally as if it was a system
font).

 There's a class EmbeddedFontsHelper in VCL that I created for handling
embedded fonts, that should be the place to start if you want to give
implementing this a try.

--
 Lubos Lunak
 l.lunak@suse.cz

_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice



Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.