2
* ===========================================
3
* LibFonts : a free Java font reading library
4
* ===========================================
6
* Project Info: http://reporting.pentaho.org/libfonts/
8
* (C) Copyright 2006-2007, by Pentaho Corporation and Contributors.
10
* This library is free software; you can redistribute it and/or modify it under the terms
11
* of the GNU Lesser General Public License as published by the Free Software Foundation;
12
* either version 2.1 of the License, or (at your option) any later version.
14
* This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
15
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16
* See the GNU Lesser General Public License for more details.
18
* You should have received a copy of the GNU Lesser General Public License along with this
19
* library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
20
* Boston, MA 02111-1307, USA.
22
* [Java is a trademark or registered trademark of Sun Microsystems, Inc.
23
* in the United States and other countries.]
26
* $Id: MonospaceFontFamily.java 3523 2007-10-16 11:03:09Z tmorgner $
28
* (C) Copyright 2006-2007, by Pentaho Corporation.
31
package org.jfree.fonts.monospace;
33
import org.jfree.fonts.registry.FontFamily;
34
import org.jfree.fonts.registry.FontRecord;
37
* Creation-Date: 13.05.2007, 13:14:25
39
* @author Thomas Morgner
41
public class MonospaceFontFamily implements FontFamily
43
private String familyName;
44
private FontRecord[] fonts;
46
public MonospaceFontFamily(final String familyName)
48
if (familyName == null)
50
throw new NullPointerException();
52
this.familyName = familyName;
53
this.fonts = new FontRecord[4];
57
* Returns the name of the font family (in english).
61
public String getFamilyName()
66
public String[] getAllNames()
68
return new String[]{ familyName };
72
* This selects the most suitable font in that family. Italics fonts are preferred over oblique fonts.
78
public FontRecord getFontRecord(final boolean bold, final boolean italics)
89
if (fonts[index] != null)
93
fonts[index] = new MonospaceFontRecord(this, bold, italics);
97
public boolean equals(final Object o)
103
if (o == null || getClass() != o.getClass())
108
final MonospaceFontFamily that = (MonospaceFontFamily) o;
110
if (!familyName.equals(that.familyName))
118
public int hashCode()
120
return familyName.hashCode();