[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: ODF 1.2 comment: support for font embedding
Note: since this concerns a missing feature in ODF, the choice of which part of the spec (1 or 3) this should be addressed is up to the editors. ODF currently does not describe how applications may embed fonts, leading to situations where applications that do support such a feature technically some way or another (e.g. Wordperfect Office, Microsoft Office, etc) cannot safely use it when saving to ODF - even when documents are used for personal consumption. For documents that contain non-ubiquitous fonts, for collaboration on documents and presentations across platforms or in the browser, this can be awkward and lead to a degraded user experience. For archiving purposing, fonts are often an issue in office documents as well. Applications may currently already choose to embed fonts in the ODF package, but they are not protected by the current specification against other applications deleting them while editing or reviewing. Many fonts that are used by default in modern office applications as well as a growing amount of other fonts can be legally distributed for free (such as GPL, OFL or public domain fonts). There is also a significant amount of fonts that are only available under copyright conditions that legally limit some forms of distribution of the entire font - although I am not aware of limitation of use in well-known standards such as ISO 15930, ISO 19005 and ISO 32000, nor of any patent issues for such mechanisms. To satisfy both use cases as well as concerns that ODF could potentially become subject to patent litigation for describing specific implementations of font embedding, I propose to add a light-weight mechanism that would enable multiple font embedding technologies to be used in ODF and that I propose SHALL be kept intact by all ODF 1.2 compliant applications: - file locations in the container (or URI if available online * ) - a URI describing the font embedding method - (if available) the mimetype of the font - Dublin core data on the font such as the font name, making it easy for applications to determine if they even need to bother to open - and if they are (- optional: a digital signature from the foundry) - the possibility to add additional parameters specific to the embedding method (in RDF) Can probably be easily defined in terms of part 3, section 5 (Metadata Manifest Files)... Embedded font support should not be mandatory, in order not to burden those implementers that have no need for it. However, for the use case of freely distributable fonts, from an archiving point of view it would make sense to require applications that do support font embedding to always have the simplest available embedding method (just putting in the raw font files) available as well as any potentially proprietary methods juggling about glyphs and metrics. Applications do not have to support every font embedding technology, which would leave them and more specifically their users in the current situation: the font would not be available. All applications should just recognise the generic method with which applications can choose to support it, and (while we are at it) should not be allowed to destroy parts of odf files concerning embedded fonts either. I think it is completely backwards compatible as currently, applications that receive an ODF file do not have any additional font data. Even if a proprietary or patent encumbered embedded technology is used, there are still a number of use cases where uses could significantly benefit from font embedding. Best, Michiel Leenaars P.S. A special case to consider would be the use of embedded fonts in hybrid ODF/PDF-files (a PDF with attached original ODF such as produced by a number of tools, or ODF with a PDF preview such as created by NeoOffice). It would be magic if fonts could be either referenced/discovered/shared among those two instances of the same document.
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]