1 //========================================================================
5 // This file was automatically generated by makeFontInfo.
7 // Copyright 1996 Derek B. Noonburg
9 //========================================================================
14 //------------------------------------------------------------------------
15 // Character encodings.
16 //------------------------------------------------------------------------
18 #define standardEncodingSize 335
19 static char *standardEncodingNames[standardEncodingSize] = {
356 static FontEncoding standardEncoding(standardEncodingNames,
357 standardEncodingSize);
359 #define symbolEncodingSize 257
360 static char *symbolEncodingNames[symbolEncodingSize] = {
619 static FontEncoding symbolEncoding(symbolEncodingNames,
622 #define zapfDingbatsEncodingSize 270
623 static char *zapfDingbatsEncodingNames[zapfDingbatsEncodingSize] = {
895 static FontEncoding zapfDingbatsEncoding(zapfDingbatsEncodingNames,
896 zapfDingbatsEncodingSize);
898 #define macRomanEncodingSize 256
899 static char *macRomanEncodingNames[macRomanEncodingSize] = {
1157 static FontEncoding macRomanEncoding(macRomanEncodingNames,
1158 macRomanEncodingSize);
1160 #define winAnsiEncodingSize 256
1161 static char *winAnsiEncodingNames[winAnsiEncodingSize] = {
1419 static FontEncoding winAnsiEncoding(winAnsiEncodingNames,
1420 winAnsiEncodingSize);
1422 //------------------------------------------------------------------------
1423 // Character widths for built-in fonts.
1424 //------------------------------------------------------------------------
1426 static Gushort courierWidths[335] = {
1427 0, 0, 0, 0, 0, 0, 0, 0,
1428 0, 0, 0, 0, 0, 0, 0, 0,
1429 0, 0, 0, 0, 0, 0, 0, 0,
1430 0, 0, 0, 0, 0, 0, 0, 0,
1431 600, 600, 600, 600, 600, 600, 600, 600,
1432 600, 600, 600, 600, 600, 600, 600, 600,
1433 600, 600, 600, 600, 600, 600, 600, 600,
1434 600, 600, 600, 600, 600, 600, 600, 600,
1435 600, 600, 600, 600, 600, 600, 600, 600,
1436 600, 600, 600, 600, 600, 600, 600, 600,
1437 600, 600, 600, 600, 600, 600, 600, 600,
1438 600, 600, 600, 600, 600, 600, 600, 600,
1439 600, 600, 600, 600, 600, 600, 600, 600,
1440 600, 600, 600, 600, 600, 600, 600, 600,
1441 600, 600, 600, 600, 600, 600, 600, 600,
1442 600, 600, 600, 600, 600, 600, 600, 0,
1443 0, 0, 0, 0, 0, 0, 0, 0,
1444 0, 0, 0, 0, 0, 0, 0, 0,
1445 0, 0, 0, 0, 0, 0, 0, 0,
1446 0, 0, 0, 0, 0, 0, 0, 0,
1447 0, 600, 600, 600, 600, 600, 600, 600,
1448 600, 600, 600, 600, 600, 600, 600, 600,
1449 0, 600, 600, 600, 600, 0, 600, 600,
1450 600, 600, 600, 600, 600, 600, 0, 600,
1451 0, 600, 600, 600, 600, 600, 600, 600,
1452 600, 0, 600, 600, 0, 600, 600, 600,
1453 600, 0, 0, 0, 0, 0, 0, 0,
1454 0, 0, 0, 0, 0, 0, 0, 0,
1455 0, 600, 0, 600, 0, 0, 0, 0,
1456 600, 600, 600, 600, 0, 0, 0, 0,
1457 0, 600, 0, 0, 0, 600, 0, 0,
1458 600, 600, 600, 600, 0, 0, 0, 0,
1459 600, 600, 600, 600, 600, 600, 600, 600,
1460 600, 600, 600, 600, 600, 600, 600, 600,
1461 600, 600, 600, 600, 600, 600, 600, 600,
1462 600, 600, 600, 600, 600, 600, 600, 600,
1463 600, 600, 600, 600, 600, 600, 600, 600,
1464 600, 600, 600, 600, 600, 600, 600, 600,
1465 600, 600, 600, 600, 600, 600, 600, 600,
1466 600, 600, 600, 600, 600, 600, 600, 600,
1467 600, 600, 600, 600, 600, 600, 600, 600,
1468 600, 600, 600, 600, 600, 600, 600
1471 static Gushort courierBoldWidths[335] = {
1472 0, 0, 0, 0, 0, 0, 0, 0,
1473 0, 0, 0, 0, 0, 0, 0, 0,
1474 0, 0, 0, 0, 0, 0, 0, 0,
1475 0, 0, 0, 0, 0, 0, 0, 0,
1476 600, 600, 600, 600, 600, 600, 600, 600,
1477 600, 600, 600, 600, 600, 600, 600, 600,
1478 600, 600, 600, 600, 600, 600, 600, 600,
1479 600, 600, 600, 600, 600, 600, 600, 600,
1480 600, 600, 600, 600, 600, 600, 600, 600,
1481 600, 600, 600, 600, 600, 600, 600, 600,
1482 600, 600, 600, 600, 600, 600, 600, 600,
1483 600, 600, 600, 600, 600, 600, 600, 600,
1484 600, 600, 600, 600, 600, 600, 600, 600,
1485 600, 600, 600, 600, 600, 600, 600, 600,
1486 600, 600, 600, 600, 600, 600, 600, 600,
1487 600, 600, 600, 600, 600, 600, 600, 0,
1488 0, 0, 0, 0, 0, 0, 0, 0,
1489 0, 0, 0, 0, 0, 0, 0, 0,
1490 0, 0, 0, 0, 0, 0, 0, 0,
1491 0, 0, 0, 0, 0, 0, 0, 0,
1492 0, 600, 600, 600, 600, 600, 600, 600,
1493 600, 600, 600, 600, 600, 600, 600, 600,
1494 0, 600, 600, 600, 600, 0, 600, 600,
1495 600, 600, 600, 600, 600, 600, 0, 600,
1496 0, 600, 600, 600, 600, 600, 600, 600,
1497 600, 0, 600, 600, 0, 600, 600, 600,
1498 600, 0, 0, 0, 0, 0, 0, 0,
1499 0, 0, 0, 0, 0, 0, 0, 0,
1500 0, 600, 0, 600, 0, 0, 0, 0,
1501 600, 600, 600, 600, 0, 0, 0, 0,
1502 0, 600, 0, 0, 0, 600, 0, 0,
1503 600, 600, 600, 600, 0, 0, 0, 0,
1504 600, 600, 600, 600, 600, 600, 600, 600,
1505 600, 600, 600, 600, 600, 600, 600, 600,
1506 600, 600, 600, 600, 600, 600, 600, 600,
1507 600, 600, 600, 600, 600, 600, 600, 600,
1508 600, 600, 600, 600, 600, 600, 600, 600,
1509 600, 600, 600, 600, 600, 600, 600, 600,
1510 600, 600, 600, 600, 600, 600, 600, 600,
1511 600, 600, 600, 600, 600, 600, 600, 600,
1512 600, 600, 600, 600, 600, 600, 600, 600,
1513 600, 600, 600, 600, 600, 600, 600
1516 static Gushort courierBoldObliqueWidths[335] = {
1517 0, 0, 0, 0, 0, 0, 0, 0,
1518 0, 0, 0, 0, 0, 0, 0, 0,
1519 0, 0, 0, 0, 0, 0, 0, 0,
1520 0, 0, 0, 0, 0, 0, 0, 0,
1521 600, 600, 600, 600, 600, 600, 600, 600,
1522 600, 600, 600, 600, 600, 600, 600, 600,
1523 600, 600, 600, 600, 600, 600, 600, 600,
1524 600, 600, 600, 600, 600, 600, 600, 600,
1525 600, 600, 600, 600, 600, 600, 600, 600,
1526 600, 600, 600, 600, 600, 600, 600, 600,
1527 600, 600, 600, 600, 600, 600, 600, 600,
1528 600, 600, 600, 600, 600, 600, 600, 600,
1529 600, 600, 600, 600, 600, 600, 600, 600,
1530 600, 600, 600, 600, 600, 600, 600, 600,
1531 600, 600, 600, 600, 600, 600, 600, 600,
1532 600, 600, 600, 600, 600, 600, 600, 0,
1533 0, 0, 0, 0, 0, 0, 0, 0,
1534 0, 0, 0, 0, 0, 0, 0, 0,
1535 0, 0, 0, 0, 0, 0, 0, 0,
1536 0, 0, 0, 0, 0, 0, 0, 0,
1537 0, 600, 600, 600, 600, 600, 600, 600,
1538 600, 600, 600, 600, 600, 600, 600, 600,
1539 0, 600, 600, 600, 600, 0, 600, 600,
1540 600, 600, 600, 600, 600, 600, 0, 600,
1541 0, 600, 600, 600, 600, 600, 600, 600,
1542 600, 0, 600, 600, 0, 600, 600, 600,
1543 600, 0, 0, 0, 0, 0, 0, 0,
1544 0, 0, 0, 0, 0, 0, 0, 0,
1545 0, 600, 0, 600, 0, 0, 0, 0,
1546 600, 600, 600, 600, 0, 0, 0, 0,
1547 0, 600, 0, 0, 0, 600, 0, 0,
1548 600, 600, 600, 600, 0, 0, 0, 0,
1549 600, 600, 600, 600, 600, 600, 600, 600,
1550 600, 600, 600, 600, 600, 600, 600, 600,
1551 600, 600, 600, 600, 600, 600, 600, 600,
1552 600, 600, 600, 600, 600, 600, 600, 600,
1553 600, 600, 600, 600, 600, 600, 600, 600,
1554 600, 600, 600, 600, 600, 600, 600, 600,
1555 600, 600, 600, 600, 600, 600, 600, 600,
1556 600, 600, 600, 600, 600, 600, 600, 600,
1557 600, 600, 600, 600, 600, 600, 600, 600,
1558 600, 600, 600, 600, 600, 600, 600
1561 static Gushort courierObliqueWidths[335] = {
1562 0, 0, 0, 0, 0, 0, 0, 0,
1563 0, 0, 0, 0, 0, 0, 0, 0,
1564 0, 0, 0, 0, 0, 0, 0, 0,
1565 0, 0, 0, 0, 0, 0, 0, 0,
1566 600, 600, 600, 600, 600, 600, 600, 600,
1567 600, 600, 600, 600, 600, 600, 600, 600,
1568 600, 600, 600, 600, 600, 600, 600, 600,
1569 600, 600, 600, 600, 600, 600, 600, 600,
1570 600, 600, 600, 600, 600, 600, 600, 600,
1571 600, 600, 600, 600, 600, 600, 600, 600,
1572 600, 600, 600, 600, 600, 600, 600, 600,
1573 600, 600, 600, 600, 600, 600, 600, 600,
1574 600, 600, 600, 600, 600, 600, 600, 600,
1575 600, 600, 600, 600, 600, 600, 600, 600,
1576 600, 600, 600, 600, 600, 600, 600, 600,
1577 600, 600, 600, 600, 600, 600, 600, 0,
1578 0, 0, 0, 0, 0, 0, 0, 0,
1579 0, 0, 0, 0, 0, 0, 0, 0,
1580 0, 0, 0, 0, 0, 0, 0, 0,
1581 0, 0, 0, 0, 0, 0, 0, 0,
1582 0, 600, 600, 600, 600, 600, 600, 600,
1583 600, 600, 600, 600, 600, 600, 600, 600,
1584 0, 600, 600, 600, 600, 0, 600, 600,
1585 600, 600, 600, 600, 600, 600, 0, 600,
1586 0, 600, 600, 600, 600, 600, 600, 600,
1587 600, 0, 600, 600, 0, 600, 600, 600,
1588 600, 0, 0, 0, 0, 0, 0, 0,
1589 0, 0, 0, 0, 0, 0, 0, 0,
1590 0, 600, 0, 600, 0, 0, 0, 0,
1591 600, 600, 600, 600, 0, 0, 0, 0,
1592 0, 600, 0, 0, 0, 600, 0, 0,
1593 600, 600, 600, 600, 0, 0, 0, 0,
1594 600, 600, 600, 600, 600, 600, 600, 600,
1595 600, 600, 600, 600, 600, 600, 600, 600,
1596 600, 600, 600, 600, 600, 600, 600, 600,
1597 600, 600, 600, 600, 600, 600, 600, 600,
1598 600, 600, 600, 600, 600, 600, 600, 600,
1599 600, 600, 600, 600, 600, 600, 600, 600,
1600 600, 600, 600, 600, 600, 600, 600, 600,
1601 600, 600, 600, 600, 600, 600, 600, 600,
1602 600, 600, 600, 600, 600, 600, 600, 600,
1603 600, 600, 600, 600, 600, 600, 600
1606 static Gushort helveticaWidths[335] = {
1607 0, 0, 0, 0, 0, 0, 0, 0,
1608 0, 0, 0, 0, 0, 0, 0, 0,
1609 0, 0, 0, 0, 0, 0, 0, 0,
1610 0, 0, 0, 0, 0, 0, 0, 0,
1611 278, 278, 355, 556, 556, 889, 667, 222,
1612 333, 333, 389, 584, 278, 333, 278, 278,
1613 556, 556, 556, 556, 556, 556, 556, 556,
1614 556, 556, 278, 278, 584, 584, 584, 556,
1615 1015, 667, 667, 722, 722, 667, 611, 778,
1616 722, 278, 500, 667, 556, 833, 722, 778,
1617 667, 778, 722, 667, 611, 722, 667, 944,
1618 667, 667, 611, 278, 278, 278, 469, 556,
1619 222, 556, 556, 500, 556, 556, 278, 556,
1620 556, 222, 222, 500, 222, 833, 556, 556,
1621 556, 556, 333, 500, 278, 556, 500, 722,
1622 500, 500, 500, 334, 260, 334, 584, 0,
1623 0, 0, 0, 0, 0, 0, 0, 0,
1624 0, 0, 0, 0, 0, 0, 0, 0,
1625 0, 0, 0, 0, 0, 0, 0, 0,
1626 0, 0, 0, 0, 0, 0, 0, 0,
1627 0, 333, 556, 556, 167, 556, 556, 556,
1628 556, 191, 333, 556, 333, 333, 500, 500,
1629 0, 556, 556, 556, 278, 0, 537, 350,
1630 222, 333, 333, 556, 1000, 1000, 0, 611,
1631 0, 333, 333, 333, 333, 333, 333, 333,
1632 333, 0, 333, 333, 0, 333, 333, 333,
1633 1000, 0, 0, 0, 0, 0, 0, 0,
1634 0, 0, 0, 0, 0, 0, 0, 0,
1635 0, 1000, 0, 370, 0, 0, 0, 0,
1636 556, 778, 1000, 365, 0, 0, 0, 0,
1637 0, 889, 0, 0, 0, 278, 0, 0,
1638 222, 611, 944, 611, 0, 0, 0, 0,
1639 667, 667, 667, 667, 667, 667, 722, 667,
1640 667, 667, 667, 722, 278, 278, 278, 278,
1641 722, 778, 778, 778, 778, 778, 667, 667,
1642 722, 722, 722, 722, 667, 667, 611, 556,
1643 556, 556, 556, 556, 556, 260, 500, 737,
1644 400, 584, 556, 556, 556, 556, 556, 278,
1645 278, 278, 278, 584, 584, 556, 584, 556,
1646 556, 556, 556, 556, 834, 834, 333, 556,
1647 584, 737, 500, 556, 834, 333, 1000, 333,
1648 556, 556, 556, 556, 500, 500, 500
1651 static Gushort helveticaBoldWidths[335] = {
1652 0, 0, 0, 0, 0, 0, 0, 0,
1653 0, 0, 0, 0, 0, 0, 0, 0,
1654 0, 0, 0, 0, 0, 0, 0, 0,
1655 0, 0, 0, 0, 0, 0, 0, 0,
1656 278, 333, 474, 556, 556, 889, 722, 278,
1657 333, 333, 389, 584, 278, 333, 278, 278,
1658 556, 556, 556, 556, 556, 556, 556, 556,
1659 556, 556, 333, 333, 584, 584, 584, 611,
1660 975, 722, 722, 722, 722, 667, 611, 778,
1661 722, 278, 556, 722, 611, 833, 722, 778,
1662 667, 778, 722, 667, 611, 722, 667, 944,
1663 667, 667, 611, 333, 278, 333, 584, 556,
1664 278, 556, 611, 556, 611, 556, 333, 611,
1665 611, 278, 278, 556, 278, 889, 611, 611,
1666 611, 611, 389, 556, 333, 611, 556, 778,
1667 556, 556, 500, 389, 280, 389, 584, 0,
1668 0, 0, 0, 0, 0, 0, 0, 0,
1669 0, 0, 0, 0, 0, 0, 0, 0,
1670 0, 0, 0, 0, 0, 0, 0, 0,
1671 0, 0, 0, 0, 0, 0, 0, 0,
1672 0, 333, 556, 556, 167, 556, 556, 556,
1673 556, 238, 500, 556, 333, 333, 611, 611,
1674 0, 556, 556, 556, 278, 0, 556, 350,
1675 278, 500, 500, 556, 1000, 1000, 0, 611,
1676 0, 333, 333, 333, 333, 333, 333, 333,
1677 333, 0, 333, 333, 0, 333, 333, 333,
1678 1000, 0, 0, 0, 0, 0, 0, 0,
1679 0, 0, 0, 0, 0, 0, 0, 0,
1680 0, 1000, 0, 370, 0, 0, 0, 0,
1681 611, 778, 1000, 365, 0, 0, 0, 0,
1682 0, 889, 0, 0, 0, 278, 0, 0,
1683 278, 611, 944, 611, 0, 0, 0, 0,
1684 722, 722, 722, 722, 722, 722, 722, 667,
1685 667, 667, 667, 722, 278, 278, 278, 278,
1686 722, 778, 778, 778, 778, 778, 667, 667,
1687 722, 722, 722, 722, 667, 667, 611, 556,
1688 556, 556, 556, 556, 556, 280, 556, 737,
1689 400, 584, 556, 556, 556, 556, 611, 278,
1690 278, 278, 278, 584, 584, 611, 584, 611,
1691 611, 611, 611, 611, 834, 834, 333, 611,
1692 584, 737, 556, 611, 834, 333, 1000, 333,
1693 611, 611, 611, 611, 556, 556, 500
1696 static Gushort helveticaBoldObliqueWidths[335] = {
1697 0, 0, 0, 0, 0, 0, 0, 0,
1698 0, 0, 0, 0, 0, 0, 0, 0,
1699 0, 0, 0, 0, 0, 0, 0, 0,
1700 0, 0, 0, 0, 0, 0, 0, 0,
1701 278, 333, 474, 556, 556, 889, 722, 278,
1702 333, 333, 389, 584, 278, 333, 278, 278,
1703 556, 556, 556, 556, 556, 556, 556, 556,
1704 556, 556, 333, 333, 584, 584, 584, 611,
1705 975, 722, 722, 722, 722, 667, 611, 778,
1706 722, 278, 556, 722, 611, 833, 722, 778,
1707 667, 778, 722, 667, 611, 722, 667, 944,
1708 667, 667, 611, 333, 278, 333, 584, 556,
1709 278, 556, 611, 556, 611, 556, 333, 611,
1710 611, 278, 278, 556, 278, 889, 611, 611,
1711 611, 611, 389, 556, 333, 611, 556, 778,
1712 556, 556, 500, 389, 280, 389, 584, 0,
1713 0, 0, 0, 0, 0, 0, 0, 0,
1714 0, 0, 0, 0, 0, 0, 0, 0,
1715 0, 0, 0, 0, 0, 0, 0, 0,
1716 0, 0, 0, 0, 0, 0, 0, 0,
1717 0, 333, 556, 556, 167, 556, 556, 556,
1718 556, 238, 500, 556, 333, 333, 611, 611,
1719 0, 556, 556, 556, 278, 0, 556, 350,
1720 278, 500, 500, 556, 1000, 1000, 0, 611,
1721 0, 333, 333, 333, 333, 333, 333, 333,
1722 333, 0, 333, 333, 0, 333, 333, 333,
1723 1000, 0, 0, 0, 0, 0, 0, 0,
1724 0, 0, 0, 0, 0, 0, 0, 0,
1725 0, 1000, 0, 370, 0, 0, 0, 0,
1726 611, 778, 1000, 365, 0, 0, 0, 0,
1727 0, 889, 0, 0, 0, 278, 0, 0,
1728 278, 611, 944, 611, 0, 0, 0, 0,
1729 722, 722, 722, 722, 722, 722, 722, 667,
1730 667, 667, 667, 722, 278, 278, 278, 278,
1731 722, 778, 778, 778, 778, 778, 667, 667,
1732 722, 722, 722, 722, 667, 667, 611, 556,
1733 556, 556, 556, 556, 556, 280, 556, 737,
1734 400, 584, 556, 556, 556, 556, 611, 278,
1735 278, 278, 278, 584, 584, 611, 584, 611,
1736 611, 611, 611, 611, 834, 834, 333, 611,
1737 584, 737, 556, 611, 834, 333, 1000, 333,
1738 611, 611, 611, 611, 556, 556, 500
1741 static Gushort helveticaObliqueWidths[335] = {
1742 0, 0, 0, 0, 0, 0, 0, 0,
1743 0, 0, 0, 0, 0, 0, 0, 0,
1744 0, 0, 0, 0, 0, 0, 0, 0,
1745 0, 0, 0, 0, 0, 0, 0, 0,
1746 278, 278, 355, 556, 556, 889, 667, 222,
1747 333, 333, 389, 584, 278, 333, 278, 278,
1748 556, 556, 556, 556, 556, 556, 556, 556,
1749 556, 556, 278, 278, 584, 584, 584, 556,
1750 1015, 667, 667, 722, 722, 667, 611, 778,
1751 722, 278, 500, 667, 556, 833, 722, 778,
1752 667, 778, 722, 667, 611, 722, 667, 944,
1753 667, 667, 611, 278, 278, 278, 469, 556,
1754 222, 556, 556, 500, 556, 556, 278, 556,
1755 556, 222, 222, 500, 222, 833, 556, 556,
1756 556, 556, 333, 500, 278, 556, 500, 722,
1757 500, 500, 500, 334, 260, 334, 584, 0,
1758 0, 0, 0, 0, 0, 0, 0, 0,
1759 0, 0, 0, 0, 0, 0, 0, 0,
1760 0, 0, 0, 0, 0, 0, 0, 0,
1761 0, 0, 0, 0, 0, 0, 0, 0,
1762 0, 333, 556, 556, 167, 556, 556, 556,
1763 556, 191, 333, 556, 333, 333, 500, 500,
1764 0, 556, 556, 556, 278, 0, 537, 350,
1765 222, 333, 333, 556, 1000, 1000, 0, 611,
1766 0, 333, 333, 333, 333, 333, 333, 333,
1767 333, 0, 333, 333, 0, 333, 333, 333,
1768 1000, 0, 0, 0, 0, 0, 0, 0,
1769 0, 0, 0, 0, 0, 0, 0, 0,
1770 0, 1000, 0, 370, 0, 0, 0, 0,
1771 556, 778, 1000, 365, 0, 0, 0, 0,
1772 0, 889, 0, 0, 0, 278, 0, 0,
1773 222, 611, 944, 611, 0, 0, 0, 0,
1774 667, 667, 667, 667, 667, 667, 722, 667,
1775 667, 667, 667, 722, 278, 278, 278, 278,
1776 722, 778, 778, 778, 778, 778, 667, 667,
1777 722, 722, 722, 722, 667, 667, 611, 556,
1778 556, 556, 556, 556, 556, 260, 500, 737,
1779 400, 584, 556, 556, 556, 556, 556, 278,
1780 278, 278, 278, 584, 584, 556, 584, 556,
1781 556, 556, 556, 556, 834, 834, 333, 556,
1782 584, 737, 500, 556, 834, 333, 1000, 333,
1783 556, 556, 556, 556, 500, 500, 500
1786 static Gushort symbolWidths[257] = {
1787 0, 0, 0, 0, 0, 0, 0, 0,
1788 0, 0, 0, 0, 0, 0, 0, 0,
1789 0, 0, 0, 0, 0, 0, 0, 0,
1790 0, 0, 0, 0, 0, 0, 0, 0,
1791 250, 333, 713, 500, 549, 833, 778, 439,
1792 333, 333, 500, 549, 250, 549, 250, 278,
1793 500, 500, 500, 500, 500, 500, 500, 500,
1794 500, 500, 278, 278, 549, 549, 549, 444,
1795 549, 722, 667, 722, 612, 611, 763, 603,
1796 722, 333, 631, 722, 686, 889, 722, 722,
1797 768, 741, 556, 592, 611, 690, 439, 768,
1798 645, 795, 611, 333, 863, 333, 658, 500,
1799 500, 631, 549, 549, 494, 439, 521, 411,
1800 603, 329, 603, 549, 549, 576, 521, 549,
1801 549, 521, 549, 603, 439, 576, 713, 686,
1802 493, 686, 494, 480, 200, 480, 549, 0,
1803 0, 0, 0, 0, 0, 0, 0, 0,
1804 0, 0, 0, 0, 0, 0, 0, 0,
1805 0, 0, 0, 0, 0, 0, 0, 0,
1806 0, 0, 0, 0, 0, 0, 0, 0,
1807 0, 620, 247, 549, 167, 713, 500, 753,
1808 753, 753, 753, 1042, 987, 603, 987, 603,
1809 400, 549, 411, 549, 549, 713, 494, 460,
1810 549, 549, 549, 549, 1000, 603, 1000, 658,
1811 823, 686, 795, 987, 768, 768, 823, 768,
1812 768, 713, 713, 713, 713, 713, 713, 713,
1813 768, 713, 790, 790, 890, 823, 549, 250,
1814 713, 603, 603, 1042, 987, 603, 987, 603,
1815 494, 329, 790, 790, 786, 713, 384, 384,
1816 384, 384, 384, 384, 494, 494, 494, 494,
1817 0, 329, 274, 686, 686, 686, 384, 384,
1818 384, 384, 384, 384, 494, 494, 494, 0,
1822 static Gushort timesBoldWidths[335] = {
1823 0, 0, 0, 0, 0, 0, 0, 0,
1824 0, 0, 0, 0, 0, 0, 0, 0,
1825 0, 0, 0, 0, 0, 0, 0, 0,
1826 0, 0, 0, 0, 0, 0, 0, 0,
1827 250, 333, 555, 500, 500, 1000, 833, 333,
1828 333, 333, 500, 570, 250, 333, 250, 278,
1829 500, 500, 500, 500, 500, 500, 500, 500,
1830 500, 500, 333, 333, 570, 570, 570, 500,
1831 930, 722, 667, 722, 722, 667, 611, 778,
1832 778, 389, 500, 778, 667, 944, 722, 778,
1833 611, 778, 722, 556, 667, 722, 722, 1000,
1834 722, 722, 667, 333, 278, 333, 581, 500,
1835 333, 500, 556, 444, 556, 444, 333, 500,
1836 556, 278, 333, 556, 278, 833, 556, 500,
1837 556, 556, 444, 389, 333, 556, 500, 722,
1838 500, 500, 444, 394, 220, 394, 520, 0,
1839 0, 0, 0, 0, 0, 0, 0, 0,
1840 0, 0, 0, 0, 0, 0, 0, 0,
1841 0, 0, 0, 0, 0, 0, 0, 0,
1842 0, 0, 0, 0, 0, 0, 0, 0,
1843 0, 333, 500, 500, 167, 500, 500, 500,
1844 500, 278, 500, 500, 333, 333, 556, 556,
1845 0, 500, 500, 500, 250, 0, 540, 350,
1846 333, 500, 500, 500, 1000, 1000, 0, 500,
1847 0, 333, 333, 333, 333, 333, 333, 333,
1848 333, 0, 333, 333, 0, 333, 333, 333,
1849 1000, 0, 0, 0, 0, 0, 0, 0,
1850 0, 0, 0, 0, 0, 0, 0, 0,
1851 0, 1000, 0, 300, 0, 0, 0, 0,
1852 667, 778, 1000, 330, 0, 0, 0, 0,
1853 0, 722, 0, 0, 0, 278, 0, 0,
1854 278, 500, 722, 556, 0, 0, 0, 0,
1855 722, 722, 722, 722, 722, 722, 722, 667,
1856 667, 667, 667, 722, 389, 389, 389, 389,
1857 722, 778, 778, 778, 778, 778, 556, 611,
1858 722, 722, 722, 722, 722, 722, 667, 500,
1859 500, 500, 500, 500, 500, 220, 444, 747,
1860 400, 570, 444, 444, 444, 444, 500, 278,
1861 278, 278, 278, 570, 570, 556, 570, 556,
1862 500, 500, 500, 500, 750, 750, 300, 500,
1863 570, 747, 389, 556, 750, 300, 1000, 300,
1864 556, 556, 556, 556, 500, 500, 444
1867 static Gushort timesBoldItalicWidths[335] = {
1868 0, 0, 0, 0, 0, 0, 0, 0,
1869 0, 0, 0, 0, 0, 0, 0, 0,
1870 0, 0, 0, 0, 0, 0, 0, 0,
1871 0, 0, 0, 0, 0, 0, 0, 0,
1872 250, 389, 555, 500, 500, 833, 778, 333,
1873 333, 333, 500, 570, 250, 333, 250, 278,
1874 500, 500, 500, 500, 500, 500, 500, 500,
1875 500, 500, 333, 333, 570, 570, 570, 500,
1876 832, 667, 667, 667, 722, 667, 667, 722,
1877 778, 389, 500, 667, 611, 889, 722, 722,
1878 611, 722, 667, 556, 611, 722, 667, 889,
1879 667, 611, 611, 333, 278, 333, 570, 500,
1880 333, 500, 500, 444, 500, 444, 333, 500,
1881 556, 278, 278, 500, 278, 778, 556, 500,
1882 500, 500, 389, 389, 278, 556, 444, 667,
1883 500, 444, 389, 348, 220, 348, 570, 0,
1884 0, 0, 0, 0, 0, 0, 0, 0,
1885 0, 0, 0, 0, 0, 0, 0, 0,
1886 0, 0, 0, 0, 0, 0, 0, 0,
1887 0, 0, 0, 0, 0, 0, 0, 0,
1888 0, 389, 500, 500, 167, 500, 500, 500,
1889 500, 278, 500, 500, 333, 333, 556, 556,
1890 0, 500, 500, 500, 250, 0, 500, 350,
1891 333, 500, 500, 500, 1000, 1000, 0, 500,
1892 0, 333, 333, 333, 333, 333, 333, 333,
1893 333, 0, 333, 333, 0, 333, 333, 333,
1894 1000, 0, 0, 0, 0, 0, 0, 0,
1895 0, 0, 0, 0, 0, 0, 0, 0,
1896 0, 944, 0, 266, 0, 0, 0, 0,
1897 611, 722, 944, 300, 0, 0, 0, 0,
1898 0, 722, 0, 0, 0, 278, 0, 0,
1899 278, 500, 722, 500, 0, 0, 0, 0,
1900 667, 667, 667, 667, 667, 667, 667, 667,
1901 667, 667, 667, 722, 389, 389, 389, 389,
1902 722, 722, 722, 722, 722, 722, 556, 611,
1903 722, 722, 722, 722, 611, 611, 611, 500,
1904 500, 500, 500, 500, 500, 220, 444, 747,
1905 400, 570, 444, 444, 444, 444, 500, 278,
1906 278, 278, 278, 606, 606, 576, 570, 556,
1907 500, 500, 500, 500, 750, 750, 300, 500,
1908 570, 747, 389, 500, 750, 300, 1000, 300,
1909 556, 556, 556, 556, 444, 444, 389
1912 static Gushort timesItalicWidths[335] = {
1913 0, 0, 0, 0, 0, 0, 0, 0,
1914 0, 0, 0, 0, 0, 0, 0, 0,
1915 0, 0, 0, 0, 0, 0, 0, 0,
1916 0, 0, 0, 0, 0, 0, 0, 0,
1917 250, 333, 420, 500, 500, 833, 778, 333,
1918 333, 333, 500, 675, 250, 333, 250, 278,
1919 500, 500, 500, 500, 500, 500, 500, 500,
1920 500, 500, 333, 333, 675, 675, 675, 500,
1921 920, 611, 611, 667, 722, 611, 611, 722,
1922 722, 333, 444, 667, 556, 833, 667, 722,
1923 611, 722, 611, 500, 556, 722, 611, 833,
1924 611, 556, 556, 389, 278, 389, 422, 500,
1925 333, 500, 500, 444, 500, 444, 278, 500,
1926 500, 278, 278, 444, 278, 722, 500, 500,
1927 500, 500, 389, 389, 278, 500, 444, 667,
1928 444, 444, 389, 400, 275, 400, 541, 0,
1929 0, 0, 0, 0, 0, 0, 0, 0,
1930 0, 0, 0, 0, 0, 0, 0, 0,
1931 0, 0, 0, 0, 0, 0, 0, 0,
1932 0, 0, 0, 0, 0, 0, 0, 0,
1933 0, 389, 500, 500, 167, 500, 500, 500,
1934 500, 214, 556, 500, 333, 333, 500, 500,
1935 0, 500, 500, 500, 250, 0, 523, 350,
1936 333, 556, 556, 500, 889, 1000, 0, 500,
1937 0, 333, 333, 333, 333, 333, 333, 333,
1938 333, 0, 333, 333, 0, 333, 333, 333,
1939 889, 0, 0, 0, 0, 0, 0, 0,
1940 0, 0, 0, 0, 0, 0, 0, 0,
1941 0, 889, 0, 276, 0, 0, 0, 0,
1942 556, 722, 944, 310, 0, 0, 0, 0,
1943 0, 667, 0, 0, 0, 278, 0, 0,
1944 278, 500, 667, 500, 0, 0, 0, 0,
1945 611, 611, 611, 611, 611, 611, 667, 611,
1946 611, 611, 611, 722, 333, 333, 333, 333,
1947 667, 722, 722, 722, 722, 722, 500, 611,
1948 722, 722, 722, 722, 556, 556, 556, 500,
1949 500, 500, 500, 500, 500, 275, 444, 760,
1950 400, 675, 444, 444, 444, 444, 500, 278,
1951 278, 278, 278, 675, 675, 500, 675, 500,
1952 500, 500, 500, 500, 750, 750, 300, 500,
1953 675, 760, 389, 500, 750, 300, 980, 300,
1954 500, 500, 500, 500, 444, 444, 389
1957 static Gushort timesRomanWidths[335] = {
1958 0, 0, 0, 0, 0, 0, 0, 0,
1959 0, 0, 0, 0, 0, 0, 0, 0,
1960 0, 0, 0, 0, 0, 0, 0, 0,
1961 0, 0, 0, 0, 0, 0, 0, 0,
1962 250, 333, 408, 500, 500, 833, 778, 333,
1963 333, 333, 500, 564, 250, 333, 250, 278,
1964 500, 500, 500, 500, 500, 500, 500, 500,
1965 500, 500, 278, 278, 564, 564, 564, 444,
1966 921, 722, 667, 667, 722, 611, 556, 722,
1967 722, 333, 389, 722, 611, 889, 722, 722,
1968 556, 722, 667, 556, 611, 722, 722, 944,
1969 722, 722, 611, 333, 278, 333, 469, 500,
1970 333, 444, 500, 444, 500, 444, 333, 500,
1971 500, 278, 278, 500, 278, 778, 500, 500,
1972 500, 500, 333, 389, 278, 500, 500, 722,
1973 500, 500, 444, 480, 200, 480, 541, 0,
1974 0, 0, 0, 0, 0, 0, 0, 0,
1975 0, 0, 0, 0, 0, 0, 0, 0,
1976 0, 0, 0, 0, 0, 0, 0, 0,
1977 0, 0, 0, 0, 0, 0, 0, 0,
1978 0, 333, 500, 500, 167, 500, 500, 500,
1979 500, 180, 444, 500, 333, 333, 556, 556,
1980 0, 500, 500, 500, 250, 0, 453, 350,
1981 333, 444, 444, 500, 1000, 1000, 0, 444,
1982 0, 333, 333, 333, 333, 333, 333, 333,
1983 333, 0, 333, 333, 0, 333, 333, 333,
1984 1000, 0, 0, 0, 0, 0, 0, 0,
1985 0, 0, 0, 0, 0, 0, 0, 0,
1986 0, 889, 0, 276, 0, 0, 0, 0,
1987 611, 722, 889, 310, 0, 0, 0, 0,
1988 0, 667, 0, 0, 0, 278, 0, 0,
1989 278, 500, 722, 500, 0, 0, 0, 0,
1990 722, 722, 722, 722, 722, 722, 667, 611,
1991 611, 611, 611, 722, 333, 333, 333, 333,
1992 722, 722, 722, 722, 722, 722, 556, 556,
1993 722, 722, 722, 722, 722, 722, 611, 444,
1994 444, 444, 444, 444, 444, 200, 444, 760,
1995 400, 564, 444, 444, 444, 444, 500, 278,
1996 278, 278, 278, 564, 564, 500, 564, 500,
1997 500, 500, 500, 500, 750, 750, 300, 500,
1998 564, 760, 389, 500, 750, 300, 980, 300,
1999 500, 500, 500, 500, 500, 500, 444
2002 static Gushort zapfDingbatsWidths[270] = {
2003 0, 0, 0, 0, 0, 0, 0, 0,
2004 0, 0, 0, 0, 0, 0, 0, 0,
2005 0, 0, 0, 0, 0, 0, 0, 0,
2006 0, 0, 0, 0, 0, 0, 0, 0,
2007 278, 974, 961, 974, 980, 719, 789, 790,
2008 791, 690, 960, 939, 549, 855, 911, 933,
2009 911, 945, 974, 755, 846, 762, 761, 571,
2010 677, 763, 760, 759, 754, 494, 552, 537,
2011 577, 692, 786, 788, 788, 790, 793, 794,
2012 816, 823, 789, 841, 823, 833, 816, 831,
2013 923, 744, 723, 749, 790, 792, 695, 776,
2014 768, 792, 759, 707, 708, 682, 701, 826,
2015 815, 789, 789, 707, 687, 696, 689, 786,
2016 787, 713, 791, 785, 791, 873, 761, 762,
2017 762, 759, 759, 892, 892, 788, 784, 438,
2018 138, 277, 415, 392, 392, 668, 668, 0,
2019 0, 0, 0, 0, 0, 0, 0, 0,
2020 0, 0, 0, 0, 0, 0, 0, 0,
2021 0, 0, 0, 0, 0, 0, 0, 0,
2022 0, 0, 0, 0, 0, 0, 0, 0,
2023 0, 732, 544, 544, 910, 667, 760, 760,
2024 776, 595, 694, 626, 788, 788, 788, 788,
2025 788, 788, 788, 788, 788, 788, 788, 788,
2026 788, 788, 788, 788, 788, 788, 788, 788,
2027 788, 788, 788, 788, 788, 788, 788, 788,
2028 788, 788, 788, 788, 788, 788, 788, 788,
2029 788, 788, 788, 788, 894, 838, 1016, 458,
2030 748, 924, 748, 918, 927, 928, 928, 834,
2031 873, 828, 924, 924, 917, 930, 931, 463,
2032 883, 836, 836, 867, 867, 696, 696, 874,
2033 0, 874, 760, 946, 771, 865, 771, 888,
2034 967, 888, 831, 873, 927, 970, 918, 0,
2035 509, 410, 509, 410, 234, 234, 390, 390,
2036 276, 276, 317, 317, 334, 334
2039 //------------------------------------------------------------------------
2040 // Built-in font table.
2041 //------------------------------------------------------------------------
2043 struct BuiltinFont {
2046 FontEncoding *encoding;
2049 #define numBuiltinFonts ((int)(sizeof(builtinFonts)/sizeof(BuiltinFont)))
2051 static BuiltinFont builtinFonts[] = {
2052 {"Courier", courierWidths, &standardEncoding},
2053 {"Courier-Bold", courierBoldWidths, &standardEncoding},
2054 {"Courier-BoldOblique", courierBoldObliqueWidths, &standardEncoding},
2055 {"Courier-Oblique", courierObliqueWidths, &standardEncoding},
2056 {"Helvetica", helveticaWidths, &standardEncoding},
2057 {"Helvetica-Bold", helveticaBoldWidths, &standardEncoding},
2058 {"Helvetica-BoldOblique", helveticaBoldObliqueWidths, &standardEncoding},
2059 {"Helvetica-Oblique", helveticaObliqueWidths, &standardEncoding},
2060 {"Symbol", symbolWidths, &symbolEncoding},
2061 {"Times-Bold", timesBoldWidths, &standardEncoding},
2062 {"Times-BoldItalic", timesBoldItalicWidths, &standardEncoding},
2063 {"Times-Italic", timesItalicWidths, &standardEncoding},
2064 {"Times-Roman", timesRomanWidths, &standardEncoding},
2065 {"ZapfDingbats", zapfDingbatsWidths, &zapfDingbatsEncoding}