delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2011/10/05/19:00:32

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
MIME-version: 1.0
X-Proofpoint-Virus-Version: vendor=fsecure
engine=2.50.10432:5.4.6813,1.0.211,0.0.0000
definitions=2011-10-05_07:2011-10-05,2011-10-05,1970-01-01 signatures=0
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0
ipscore=0 suspectscore=1 phishscore=0 bulkscore=0 adultscore=0 classifier=spam
adjust=0 reason=mlx scancount=1 engine=6.0.2-1012030000
definitions=main-1110050211
From: Andreas Schweizer <aschweiz AT mac DOT com>
Subject: [geda-user] Re: Font sizes messed up in gschem on Mac OS X 10.6
Date: Wed, 05 Oct 2011 23:59:58 +0200
Message-id: <B795BF17-7424-4F73-A7F1-01B1AD456E1F@mac.com>
To: geda-user AT delorie DOT com
X-Mailer: Apple Mail (2.1244.3)
Reply-To: geda-user AT delorie DOT com

--Apple-Mail=_2BEF3125-62B2-4A58-9E11-D981ACB6D343
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

Hello,

> I'm hoping one of the gEDA users who use Mac OS X will come forward =
with
> a recipe for getting gEDA 1.6.0 working. (Or at least re-assure me =
that
> it can be made to work!)

I have exactly the same issue on Mac OS X 10.7.1 when compiling from =
sources.
The last few evenings, I've done some debugging to figure out why the =
fonts are
messed up in gschem.

It seems that the CoreText font backend which Pango uses on Mac OS X =
returns
cached fonts more often in PangoCoreTextFontMap. Specifically, it =
doesn't include
information about the resolution of the PangoContext in the key which it =
uses to
address cached fonts in the hash table. The fontconfig implementation on =
Linux=20
does include this information via an FcPattern data structure.

So, the resolution that the following line of code in o_text.c =
(setup_pango_return_
metrics) sets on the PangoContext is not considered by the CoreText code =
in Pango=20
when looking for a matching font in the font cache:

pango_cairo_context_set_resolution (context, 1000. * scale_factor);

I don't know if it would be a solution to scale the font size instead of =
the
resolution in setup_pango_return_metrics?

A "hotfix" for Pango would be to disable the font cache in Pango, more =
specifically
in src/pangocoretext-fontmap.c, function =
pango_core_text_font_map_load_font.

One could change this code...

      best_font =3D pango_core_text_font_map_lookup (ctfontmap,
                                                   context,
                                                   best_description,
                                                   best_face);
      if (best_font)=20
        g_object_ref (best_font);
      else

... to ...

      best_font =3D NULL;
      if (best_font)=20
        g_object_ref (best_font);
      else

... so that pango creates a new font instance instead of returning a =
cached one.

I have a more efficient fix locally on my machine which includes the =
size and=20
resolution in the key into the font cache so that the font cache is =
still of some
use. I'll try to create a bug report and patch for Pango.

Thanks Peter for maintaining this fantastic application!

greetings
Andreas


--Apple-Mail=_2BEF3125-62B2-4A58-9E11-D981ACB6D343
Content-Disposition: attachment;
	filename=smime.p7s
Content-Type: application/pkcs7-signature;
	name=smime.p7s
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIMDzCCBaAw
ggSIoAMCAQICCQDz9DDjtgv5STANBgkqhkiG9w0BAQUFADBVMQswCQYDVQQGEwJDSDEVMBMGA1UE
ChMMU3dpc3NTaWduIEFHMS8wLQYDVQQDEyZTd2lzc1NpZ24gUGVyc29uYWwgU2lsdmVyIENBIDIw
MDggLSBHMjAeFw0wOTA3MDkxNTM0NTZaFw0xNDA3MDkxNTM0NTZaMD0xGjAYBgNVBAMTEUFuZHJl
YXMgU2Nod2VpemVyMR8wHQYJKoZIhvcNAQkBFhBhc2Nod2VpekBtYWMuY29tMIIBIjANBgkqhkiG
9w0BAQEFAAOCAQ8AMIIBCgKCAQEArULFghQ1aGWdrv5beKdc9d6BoydWevihWnbZUkQ7HJ6X2U9l
gD5j3AjTj1EoEIQMNHTkydZrmyHsVPpTPwasuzYrs7jDsYVjdqduMyhQItruaF1a6tlJHUCU4DZt
J9b0HJJ6278/qTzU8AK6Y6RO9zwfHrL0lQui+5K5yTQYp+Tzzu/Cb3XsNZxMPrbqNmpjw7A5HlM/
R0o6C8zc0KJ9LoaQl3gst0KQ9s6AN2T2+OKjumjF7wdhab9uN/36I22cY+GM4Xv6JiINUrj8VClu
0gJYoNwRbqQ8fMvCqIyn9zhBo5zG94KochK2lQRYPZFCiPLvEaIWbO16dLZJ8zfIDQIDAQABo4IC
iTCCAoUwPQYDVR0RBDYwNIEQYXNjaHdlaXpAbWFjLmNvbaAgBgorBgEEAYI3FAIDoBIMEGFzY2h3
ZWl6QG1hYy5jb20wDgYDVR0PAQH/BAQDAgP4MDUGA1UdJQQuMCwGCCsGAQUFBwMCBggrBgEFBQcD
BAYKKwYBBAGCNwoDBAYKKwYBBAGCNxQCAjAfBgNVHSMEGDAWgBTrNbFWbRVgWPThIs0cRhyu0AQA
ZTCB/wYDVR0fBIH3MIH0MEegRaBDhkFodHRwOi8vY3JsLnN3aXNzc2lnbi5uZXQvRUIzNUIxNTY2
RDE1NjA1OEY0RTEyMkNEMUM0NjFDQUVEMDA0MDA2NTCBqKCBpaCBooaBn2xkYXA6Ly9kaXJlY3Rv
cnkuc3dpc3NzaWduLm5ldC9DTj1FQjM1QjE1NjZEMTU2MDU4RjRFMTIyQ0QxQzQ2MUNBRUQwMDQw
MDY1JTJDTz1Td2lzc1NpZ24lMkNDPUNIP2NlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3Q/YmFzZT9v
YmplY3RDbGFzcz1jUkxEaXN0cmlidXRpb25Qb2ludDBkBgNVHSAEXTBbMFkGCWCFdAFZAQMBAzBM
MEoGCCsGAQUFBwIBFj5odHRwOi8vcmVwb3NpdG9yeS5zd2lzc3NpZ24uY29tL1N3aXNzU2lnbi1T
aWx2ZXItQ1AtQ1BTLVIzLnBkZjB0BggrBgEFBQcBAQRoMGYwZAYIKwYBBQUHMAKGWGh0dHA6Ly9z
d2lzc3NpZ24ubmV0L2NnaS1iaW4vYXV0aG9yaXR5L2Rvd25sb2FkL0VCMzVCMTU2NkQxNTYwNThG
NEUxMjJDRDFDNDYxQ0FFRDAwNDAwNjUwDQYJKoZIhvcNAQEFBQADggEBACfhmS182eaaAZkOY64J
1L6shC7lBPIxnz1mqYF2m8CnyEuTu0Nki1Crj24F5d1onkWQVZ0eZBsqvJpRsl5rbX6yr7GYH3yw
jwgW0fkGiXvrSPUZ/WmnO6IfLeZ8C0ex3M9i59713jN3uJYm7OI90rVCMqxq/8Eemwif/Lz0KxIv
D+bD97Qn5oU6DkE1539gJfVhgLe0hUJ4/oUyoJ3Ea6S6wVwX3+a7hqbOh7YAflsHrvJOaL7yrv8g
YuNh+/WQQOT0oCDnpATWUF6WJ8S+S4/rBF6CWuIGzqgGRSq7xORhaiLbQQnyXjDI1C5jGkUsWp5+
o37uMan5/YqiIX1X7zswggZnMIIET6ADAgECAgkA4la3U5drdlgwDQYJKoZIhvcNAQEFBQAwRzEL
MAkGA1UEBhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzEhMB8GA1UEAxMYU3dpc3NTaWduIFNp
bHZlciBDQSAtIEcyMB4XDTA4MDcwOTExMTEwOVoXDTIzMDcwOTExMTEwOVowVTELMAkGA1UEBhMC
Q0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzEvMC0GA1UEAxMmU3dpc3NTaWduIFBlcnNvbmFsIFNp
bHZlciBDQSAyMDA4IC0gRzIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQD381NeSW2M
A+UnFyEYYKV2lD8VELghQM82M6wqcpqPYcNr3npJCFg9gNg78J0dQRABv2sHVhqNsz2/Y7oxfuJy
Rhhoh9eFT6DJexOp0DnRidY1Z2h2wV+WCc3POgXRPwYFCtoW8kPypAcdoqyAdQGdoOj3NKe/tuY5
aGZSRzkpTbSd6CqtFWG0ojHgEJHbHuRD8SveEME0y2yE7mIUJ0TYMfHfPCHMwKyQaNN0aMkXSo47
CaexBWWNB6SQri563npEb7AC/nT/Gof1WOmmJfHMiCIn2MsxwS8oDHFyHvf7CE5uegWsIX8/Clpm
+L/lFhT5G5vEn7ozDYaXFV2uoQaPAgMBAAGjggJGMIICQjAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0T
AQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQU6zWxVm0VYFj04SLNHEYcrtAEAGUwHwYDVR0jBBgwFoAU
F6DNweRBtjpbO8tFnb0cwpj6hlgwgf8GA1UdHwSB9zCB9DBHoEWgQ4ZBaHR0cDovL2NybC5zd2lz
c3NpZ24ubmV0LzE3QTBDREMxRTQ0MUI2M0E1QjNCQ0I0NTlEQkQxQ0MyOThGQTg2NTgwgaiggaWg
gaKGgZ9sZGFwOi8vZGlyZWN0b3J5LnN3aXNzc2lnbi5uZXQvQ049MTdBMENEQzFFNDQxQjYzQTVC
M0JDQjQ1OURCRDFDQzI5OEZBODY1OCUyQ089U3dpc3NTaWduJTJDQz1DSD9jZXJ0aWZpY2F0ZVJl
dm9jYXRpb25MaXN0P2Jhc2U/b2JqZWN0Q2xhc3M9Y1JMRGlzdHJpYnV0aW9uUG9pbnQwZAYDVR0g
BF0wWzBZBglghXQBWQEDAQMwTDBKBggrBgEFBQcCARY+aHR0cDovL3JlcG9zaXRvcnkuc3dpc3Nz
aWduLmNvbS9Td2lzc1NpZ24tU2lsdmVyLUNQLUNQUy1SMy5wZGYwdAYIKwYBBQUHAQEEaDBmMGQG
CCsGAQUFBzAChlhodHRwOi8vc3dpc3NzaWduLm5ldC9jZ2ktYmluL2F1dGhvcml0eS9kb3dubG9h
ZC8xN0EwQ0RDMUU0NDFCNjNBNUIzQkNCNDU5REJEMUNDMjk4RkE4NjU4MA0GCSqGSIb3DQEBBQUA
A4ICAQAuKnbal/NM32Qn4Vstle+5VS7buAllMUCwS718kLHZ2HEYU87oNSybFLofdILUV5LAV5Ob
UAUle+CV1F24RHjpM5BB/uG/Rpt5fXK8OFAZwGhaBrLTG95dZ89pkvj1rAmF1N1aLmo5I+/073Na
Nh7D6Y0gR2Q3Hzl5E9cOULKsuhme6oPkRUYEvs0vORAImw2J8FWyJiRRs2vRfGk9WNWBNTxoR1eN
xhKzzypqFUUvhKlOPcE5yuv73kqcrRu4YZYGILiAIxm0dkMcn66aOF4Q0jj1Hp7ZDBHVLvjJioen
DLPSKF0jbE5mBfGYY6DcYoHER+JyouBtGX49XYVFl2iAA6Xw9e3bmILO6aaW2t9uNdoZA2D2sEeY
AzTlvGC0wJDAKPQEbjy5+kmHOmU4tLVhgh6GIe+aiMV1KDWrXlJgLzrvMYume/dIDHA8tddiy7RC
w/SNuERxjCT81+6fIeiqY5bDzwdb8oHSmnAnVBjM7qHRDCKOXtCZQzmqUk5nG4/aMrxag5LaNqtT
evQRd+r81+je6pfGblAOD0TgzzDKi5qhoKf8uejFLfNz9VT+nSjXkCMjKU9JM3+QeYNKXh5hkWYE
GF3RiG+MLiFbZQFEzXZJAAAQ8hoSpR3GtgV+iBaiNgKjKaF4qyRd8Ap0DWTaCnmaFWFIVd5GBLm5
BNuqljGCAtIwggLOAgEBMGIwVTELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzEv
MC0GA1UEAxMmU3dpc3NTaWduIFBlcnNvbmFsIFNpbHZlciBDQSAyMDA4IC0gRzICCQDz9DDjtgv5
STAJBgUrDgMCGgUAoIIBRTAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEP
Fw0xMTEwMDUyMTU5NTlaMCMGCSqGSIb3DQEJBDEWBBRuU1i00rcGjZ1KgGX8jFFEP7IaKDBxBgkr
BgEEAYI3EAQxZDBiMFUxCzAJBgNVBAYTAkNIMRUwEwYDVQQKEwxTd2lzc1NpZ24gQUcxLzAtBgNV
BAMTJlN3aXNzU2lnbiBQZXJzb25hbCBTaWx2ZXIgQ0EgMjAwOCAtIEcyAgkA8/Qw47YL+UkwcwYL
KoZIhvcNAQkQAgsxZKBiMFUxCzAJBgNVBAYTAkNIMRUwEwYDVQQKEwxTd2lzc1NpZ24gQUcxLzAt
BgNVBAMTJlN3aXNzU2lnbiBQZXJzb25hbCBTaWx2ZXIgQ0EgMjAwOCAtIEcyAgkA8/Qw47YL+Ukw
DQYJKoZIhvcNAQEBBQAEggEARxJpCm0EhAICVzbez52Z/9jFE8TESLEL9kTr7ZwWAcJyhBaSPVcB
kAk5lxNZz9Hxv2J+1Jl+iacJWVvV/0GVUO5v6R93OuF2IgCIFGpcJHalZeO0tWFulRaNiW6Z9FB9
3A/wxw5f8fSTZuWtgNOgq/wliw0QdVFOHvZPfWIixxxWAuzsP5D9YjVdb9agB0FUsnKEKvwEetWq
O5LK/2opIAx87qOprxYgkZ5TTw6WdDdPRthMZBoFMmfEt+ziiwhiulGNDt/YUcXc2JYHCIWK9ix6
+hDTsG8VNCHfYxw+i725i4GBoDCu25na/zoxGnl0WIUwDcHrKc4/4sRUdyOGZgAAAAAAAA==

--Apple-Mail=_2BEF3125-62B2-4A58-9E11-D981ACB6D343--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019