From Fedora Project Wiki
 
(20 intermediate revisions by 4 users not shown)
Line 19: Line 19:
<!-- The actual name of your proposed change page should look something like: Changes/Your_Change_Proposal_Name.  This keeps all change proposals in the same namespace -->
<!-- The actual name of your proposed change page should look something like: Changes/Your_Change_Proposal_Name.  This keeps all change proposals in the same namespace -->


= Convert Bitmap Font <!-- The name of your change proposal --> =
= Provide OpenType Bitmap Fonts <!-- The name of your change proposal --> =


== Summary ==
== Summary ==
<!-- A sentence or two summarizing what this change is and what it will do. This information is used for the overall changeset summary page for each release.  
<!-- A sentence or two summarizing what this change is and what it will do. This information is used for the overall changeset summary page for each release.  
Note that motivation for the change should be in the Motivation section below, and this part should answer the question "What?" rather than "Why?". -->
Note that motivation for the change should be in the Motivation section below, and this part should answer the question "What?" rather than "Why?". -->
This proposal plans to start converting the bitmap fonts in Fedora from legacy BDF/PCF format to modern OpenType format.
 
This proposal plans to provide some additional popular bitmap fonts in OpenType format to use with pango.
 
By providing some bitmap fonts from BDF/PCF format to OpenType format,
applications like gnome-terminal can continue to use some bitmap fonts
with the pango 1.44 package.


== Owner ==
== Owner ==
Line 32: Line 37:
-->
-->
* Name: [[User:pwu| Peng Wu]]
* Name: [[User:pwu| Peng Wu]]
<!-- Include you email address that you can be reached should people want to contact you about helping with your change, status is requested, or technical issues need to be resolved. If the change proposal is owned by a SIG, please also add a primary contact person. -->
* Email: pwu@redhat.com
* Email: pwu@redhat.com
* Name: [[User:tagoh| Akira Tagoh]]
* Email: tagoh@redhat.com
<!--- UNCOMMENT only for Changes with assigned Shepherd (by FESCo)
<!--- UNCOMMENT only for Changes with assigned Shepherd (by FESCo)
* FESCo shepherd: [[User:FASAccountName| Shehperd name]] <email address>
* FESCo shepherd: [[User:FASAccountName| Shehperd name]] <email address>
Line 52: Line 58:
CLOSED as NEXTRELEASE -> change is completed and verified and will be delivered in next release under development
CLOSED as NEXTRELEASE -> change is completed and verified and will be delivered in next release under development
-->
-->
* Tracker bug: <will be assigned by the Wrangler>
* Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=1797604 #1797604]
* Release notes tracker: <will be assigned by the Wrangler>
* Release notes tracker: [https://pagure.io/fedora-docs/release-notes/issue/443 #443]


== Detailed Description ==
== Detailed Description ==
Line 59: Line 65:
<!-- Expand on the summary, if appropriate.  A couple sentences suffices to explain the goal, but the more details you can provide the better. -->
<!-- Expand on the summary, if appropriate.  A couple sentences suffices to explain the goal, but the more details you can provide the better. -->


In Fedora 31, pango has been upgraded to 1.44, and switch to use harfbuzz library.
In Fedora 31, pango has been upgraded to 1.44, and switched to use the HarfBuzz library instead of FreeType.


But harfbuzz doesn't support bitmap fonts or Adobe Type 1 fonts.
But HarfBuzz doesn't support bitmap fonts or Adobe Type 1 fonts.
In gnome-terminal, the bitmap fonts can't be used.
In gnome-terminal, the bitmap fonts can't be used.


In order to use the bitmap fonts with pango 1.44.
In order to use the bitmap fonts with pango 1.44,
We propose to convert the bitmap fonts to OpenType fonts by fonttosfnt tool.
we propose to provide some additional popular bitmap fonts in OpenType format by using fonttosfnt tool.
 
The bitmap font in OpenType format will be contained in new sub package.
User can choose to install the bitmap font either in legacy format or OpenType format from different sub packages.
 
If install both legacy format and OpenType format fonts, sometimes it is not clear which format of the bitmap font is used.
Plan to add some Conflicts line between legacy format and OpenType format font packages to avoid confusion.
 
We plan to provide 5-10 bitmap fonts in OpenType format in some packages.
The current font candidates are bitmap-lucida-typewriter-fonts, terminus-fonts and ucs-miscfixed-font.


== Benefit to Fedora ==
== Benefit to Fedora ==
Line 97: Line 112:
-->
-->


Some bitmap fonts are used by many users.
Some popular bitmap fonts are used by many users.


After converted the bitmap fonts, users can continue to use the bitmap fonts in gnome-terminal, etc.
After providing the bitmap fonts in OpenType format, users can continue to use the bitmap fonts in gnome-terminal, etc.


== Scope ==
== Scope ==
* Proposal owners: Fonts SIG
* Proposal owners:
** Convert the following bitmap fonts packages to OpenType format and make them sub-packaged.
*** bitmap-lucida-typewriter-fonts
*** terminus-fonts
*** ucs-miscfixed-font
<!-- What work do the feature owners have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
<!-- What work do the feature owners have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->


* Other developers: X.Org Maintainers <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Other developers: N/A (not a System Wide Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
** Need to update the fonttosfnt tool in the xorg-x11-font-utils package.
<!-- What work do other developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
<!-- What work do other developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->


* Release engineering: [https://pagure.io/releng/issues #Releng issue number] (a check of an impact with Release Engineering is needed) <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Release engineering: [https://pagure.io/releng/issues/9130 Releng issue 9130] (a check of an impact with Release Engineering is needed) <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- Does this feature require coordination with release engineering (e.g. changes to installer image generation or update package delivery)?  Is a mass rebuild required?  include a link to the releng issue.  
<!-- Does this feature require coordination with release engineering (e.g. changes to installer image generation or update package delivery)?  Is a mass rebuild required?  include a link to the releng issue.  
The issue is required to be filed prior to feature submission, to ensure that someone is on board to do any process development work and testing, and that all changes make it into the pipeline; a bullet point in a change is not sufficient communication -->
The issue is required to be filed prior to feature submission, to ensure that someone is on board to do any process development work and testing, and that all changes make it into the pipeline; a bullet point in a change is not sufficient communication -->


* Policies and guidelines: Fonts Policy <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Policies and guidelines: N/A (not a System Wide Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- Do the packaging guidelines or other documents need to be updated for this feature?  If so, does it need to happen before or after the implementation is done?  If a FPC ticket exists, add a link here. -->
<!-- Do the packaging guidelines or other documents need to be updated for this feature?  If so, does it need to happen before or after the implementation is done?  If a FPC ticket exists, add a link here. -->


Line 123: Line 141:


<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
N/A (not a System Wide Change)


It depends on how we package the converted OpenType fonts.
* If we keep the converted OpenType fonts or both fonts in the same package, the upgrade path is simple.
* If we introduce new sub package for bitmap fonts or OpenType fonts, the upgrade path need to be considered.
** One possible solution for upgrade is to include the converted OpenType fonts in the original package, but provide the bitmap fonts in some compatibility package.


== How To Test ==
== How To Test ==
Line 146: Line 160:


<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
Please install the terminus-fonts package.


# Install the converted OpenType bitmap fonts.
Check if the "Terminus Regular" fonts is available in gnome-terminal,
# Check whether the converted bitmap fonts is listed in gnome-terminal, gedit, etc.
and use "Terminus Regular" fonts in gnome-terminal.
# Compare the font rendering with Fedora 30, the converted fonts should look similar with the original bitmap fonts.


== User Experience ==
== User Experience ==
Line 163: Line 177:
-->
-->


After converting the bitmap fonts, users will be able to use the new OpenType Bitmap font again with pango 1.44 in gnome-terminal, etc.
After converting the bitmap fonts, users will be able to use the popular bitmap fonts again with pango 1.44 in gnome-terminal, etc.


The converted bitmap fonts should have the similar shape for each glyph.
The OpenType bitmap fonts should have the similar shape for each glyph, compared with the original bitmap fonts.


== Dependencies ==
== Dependencies ==
Line 171: Line 185:


<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
 
N/A (not a System Wide Change)
Update the fonttosfnt package in xorg-x11-font-utils, which is the needed tool for bitmap font conversion.
 
And we plan to pick 5-10 most popular bitmap fonts for conversion.
 
We will try to find the better way for the conversion, then update more bitmap fonts in later updates or next Fedora release.


== Contingency Plan ==
== Contingency Plan ==


<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "Revert the shipped configuration".  Or it might not (e.g. rebuilding a number of dependent packages).  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "Revert the shipped configuration".  Or it might not (e.g. rebuilding a number of dependent packages).  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
* Contingency mechanism: Fonts SIG will revert the changed 5-10 bitmap font packages. <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Contingency mechanism: N/A (not a System Wide Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- When is the last time the contingency mechanism can be put in place?  This will typically be the beta freeze. -->
<!-- When is the last time the contingency mechanism can be put in place?  This will typically be the beta freeze. -->
* Contingency deadline: Beta Freeze <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Contingency deadline: N/A (not a System Wide Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- Does finishing this feature block the release, or can we ship with the feature in incomplete state? -->
<!-- Does finishing this feature block the release, or can we ship with the feature in incomplete state? -->
* Blocks release? No <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Blocks release? N/A (not a System Wide Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Blocks product? product <!-- Applicable for Changes that blocks specific product release/Fedora.next -->
* Blocks product? product <!-- Applicable for Changes that blocks specific product release/Fedora.next -->


Line 192: Line 201:


<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
This change will enable Fedora 32 to use bitmap fonts with pango 1.44 again.
N/A (not a System Wide Change)


== Release Notes ==
== Release Notes ==
Line 203: Line 212:
In Fedora 32, we provide bitmap fonts with modern font format (OpenType Bitmap Font) to use with gnome-terminal and other applications which uses pango for font rendering.
In Fedora 32, we provide bitmap fonts with modern font format (OpenType Bitmap Font) to use with gnome-terminal and other applications which uses pango for font rendering.


[[Category:ChangePageIncomplete]]
[[Category:ChangeAcceptedF32]]
<!-- When your change proposal page is completed and ready for review and announcement -->
<!-- When your change proposal page is completed and ready for review and announcement -->
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->
Line 210: Line 219:


<!-- Select proper category, default is Self Contained Change -->
<!-- Select proper category, default is Self Contained Change -->
<!-- [[Category:SelfContainedChange]] -->
[[Category:SelfContainedChange]]
[[Category:SystemWideChange]]
<!-- [[Category:SystemWideChange]] -->

Latest revision as of 07:15, 25 February 2020


Provide OpenType Bitmap Fonts

Summary

This proposal plans to provide some additional popular bitmap fonts in OpenType format to use with pango.

By providing some bitmap fonts from BDF/PCF format to OpenType format, applications like gnome-terminal can continue to use some bitmap fonts with the pango 1.44 package.

Owner

Current status

Detailed Description

In Fedora 31, pango has been upgraded to 1.44, and switched to use the HarfBuzz library instead of FreeType.

But HarfBuzz doesn't support bitmap fonts or Adobe Type 1 fonts. In gnome-terminal, the bitmap fonts can't be used.

In order to use the bitmap fonts with pango 1.44, we propose to provide some additional popular bitmap fonts in OpenType format by using fonttosfnt tool.

The bitmap font in OpenType format will be contained in new sub package. User can choose to install the bitmap font either in legacy format or OpenType format from different sub packages.

If install both legacy format and OpenType format fonts, sometimes it is not clear which format of the bitmap font is used. Plan to add some Conflicts line between legacy format and OpenType format font packages to avoid confusion.

We plan to provide 5-10 bitmap fonts in OpenType format in some packages. The current font candidates are bitmap-lucida-typewriter-fonts, terminus-fonts and ucs-miscfixed-font.

Benefit to Fedora

Some popular bitmap fonts are used by many users.

After providing the bitmap fonts in OpenType format, users can continue to use the bitmap fonts in gnome-terminal, etc.

Scope

  • Proposal owners:
    • Convert the following bitmap fonts packages to OpenType format and make them sub-packaged.
      • bitmap-lucida-typewriter-fonts
      • terminus-fonts
      • ucs-miscfixed-font
  • Other developers: N/A (not a System Wide Change)
  • Release engineering: Releng issue 9130 (a check of an impact with Release Engineering is needed)
  • Policies and guidelines: N/A (not a System Wide Change)
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

N/A (not a System Wide Change)


How To Test

Please install the terminus-fonts package.

Check if the "Terminus Regular" fonts is available in gnome-terminal, and use "Terminus Regular" fonts in gnome-terminal.

User Experience

After converting the bitmap fonts, users will be able to use the popular bitmap fonts again with pango 1.44 in gnome-terminal, etc.

The OpenType bitmap fonts should have the similar shape for each glyph, compared with the original bitmap fonts.

Dependencies

N/A (not a System Wide Change)

Contingency Plan

  • Contingency mechanism: N/A (not a System Wide Change)
  • Contingency deadline: N/A (not a System Wide Change)
  • Blocks release? N/A (not a System Wide Change)
  • Blocks product? product

Documentation

N/A (not a System Wide Change)

Release Notes

In Fedora 32, we provide bitmap fonts with modern font format (OpenType Bitmap Font) to use with gnome-terminal and other applications which uses pango for font rendering.