From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Po Lu Newsgroups: gmane.emacs.devel Subject: Re: Variable pitch text filling Date: Sat, 04 Dec 2021 08:35:00 +0800 Message-ID: <871r2tw6kr.fsf@yahoo.com> References: <87ilwft1ph.fsf@gnus.org> <87sfvessx6.fsf@gnus.org> <87wnkp9c3t.fsf@gnus.org> <87ee6wanra.fsf@gnus.org> <83r1awse4k.fsf@gnu.org> <87sfvc8kdw.fsf@gnus.org> <83czmgs7t1.fsf@gnu.org> <87k0go8ios.fsf@gnus.org> <83bl20s2dp.fsf@gnu.org> <87wnkojmny.fsf@gnus.org> <837dcos1oy.fsf@gnu.org> <87o860jm27.fsf@gnus.org> <831r2ws0jf.fsf@gnu.org> <87fsrcjkik.fsf@gnus.org> <83ee6uao67.fsf@gnu.org> <83sfva92vo.fsf@gnu.org> <83czme85xk.fsf@gnu.org> <877dclzoeo.fsf@gnus.org> <83pmqd7a3j.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="8272"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.60 (gnu/linux) Cc: Lars Ingebrigtsen , tumashu@163.com, casouri@gmail.com, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Dec 04 01:36:15 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mtJ2F-0001ys-LE for ged-emacs-devel@m.gmane-mx.org; Sat, 04 Dec 2021 01:36:15 +0100 Original-Received: from localhost ([::1]:41348 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mtJ2E-0000oK-L0 for ged-emacs-devel@m.gmane-mx.org; Fri, 03 Dec 2021 19:36:14 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:50546) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mtJ1E-0008FV-UX for emacs-devel@gnu.org; Fri, 03 Dec 2021 19:35:12 -0500 Original-Received: from sonic310-25.consmr.mail.ne1.yahoo.com ([66.163.186.206]:37597) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mtJ1C-0000fI-OU for emacs-devel@gnu.org; Fri, 03 Dec 2021 19:35:12 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1638578108; bh=q/airtGzK9j0MnbJ/eUcqgPQ0u80xlEVVpaatc8zITM=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From:Subject:Reply-To; b=sDPbcMPloidpau5mG0MWtz6khCGVJDm+fmBlhXpKZr88mFPEO+kEBc5VI2Ov2j0Pu0JquXGpF7y1iB1bGAX7tzN5jVn1yjunhD+KKeWPlLGW6Ye3E6y0d4fcZXTcb2l04V0gr0fd5Z3TIV1Q6dIhCWHnFGKQnDn1woT1ydbLo3uZpur112daP6X7jp5OMVXk7PpGdp5u9pIFOg7ezQrrDjVxB7diNPkoN2S9rbJMTmMY2yTbd8efxnZhozL9tqnvIpohT2NbmL+L/ZhWDGhG4Kt05tGTeVrDLRRJX2eFcr4koV/OM/rToW4VeqqfVdBLCul/wppqHlcZnwNw/iuJLA== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1638578108; bh=42ApIEWCNawwV0buOr+4i9gxmCoFEDp0acD+p1lJsNJ=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=ntGa4+CiM6gYgmZqsCv78pyF+/8PqQ9i2c5gEEtK/kKmtYy07h9rdrK9UYVaWBvsfxMg5yRTa3dcvJtOCx6UfW8OGNdAw1Pco0cZBbgHfTZSFPELjdGQjYaoIVl/RnUifJvHyeC1vTetpTvtOYfDTImG1F91ZGWvvF/XYUEBoPDX5QtXKE34aYqFG9M0MeLoqKPfYd90upOnG1VXDW9dwh/Xxp06b5Yorx/ouuopuS+6h6ajDQwESxkQzFRHmDLM/yZKeMZ35EegvzuEhDla+JwHPsPzqO7WzuZnk1FKMT8cp0CmkJAu1o4QkVj7m5gRE3YPPiiugSbwMmBMF7pH9A== X-YMail-OSG: TGCebZwVM1mZRhHi3HdrUYe8AqqeDNVeJXQr5SWmGDB2WVp.VJY1xx631IbnoTA rktu5oe3s3cwmPATwG.yvieuB8AlA0KtvsNllsp2vFOdpznb4jjh8wqv7JsppxmoinLQp1JsNCia ScwTk5z4cEm._LUVWr79lL9oLCGPgfrLqwhiYD9gw8tpzuB.q_u9LxBHa5b3vCZDWVoY6zx4rWz2 j9J8ePCpYt4XKGpk3lyTlMyHFbJCfNj8m7jw_Qh2EBy8ZaoWLf4c22cXOVxKaBGgurKdN13vhpx8 QHBWKZNwoccgrfC6KneUFlqEzBlKeRnLQx5iid8zz5Mgxfe2WKTraOv3QKyUJRO_jVGjrTPAvUvt OOjupGwEkenLWBRXBvieFM5OSrdV.M5T9T1kMqPiACRXV8_Jrc21RlPDI9bUp9X3gTGYmtuqUvzW 11gqo6g31r5a2656R424avy3GO4uuJxiDo.cmvNrlY4Qx5koXwikVQcAR4dGcOjpi8dToboFEYKV .4cNg.Pv_HRBaQpI5Dsm7fLhOsllGIbdKx_kfLPePSOYNec.PpGRo7sld1uXrKT3enD6ntyj2eIh ue6GGpZF1Pz0GEz6xcq2HKWfb7moQQynUcbr57xtcGmBFml3c268Z1MQzdp2eXWTwQR2dXIskOSz cl7V_U_07b2PjImwOyh3PUjJFL9Ip065VjDyGb8Ud8imkqGt4pXpY.9ZnHhphthhxHCxKmdHYfx5 zoHpVqieTwTZ0vmNDYtOm3GCVo5KkXl69k7F7lCmp8dXXKp.SNNcHTCRzuMA8WJf8isBptUeQTyZ UGEWymbgT7Mku0gP7ZsFdFIKHkULlRla4cbqa8SZLc X-Sonic-MF: Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic310.consmr.mail.ne1.yahoo.com with HTTP; Sat, 4 Dec 2021 00:35:08 +0000 Original-Received: by kubenode512.mail-prod1.omega.sg3.yahoo.com (VZM Hermes SMTP Server) with ESMTPA ID 02da95ef50fb706eddab65248eddc5cb; Sat, 04 Dec 2021 00:35:05 +0000 (UTC) In-Reply-To: <83pmqd7a3j.fsf@gnu.org> (Eli Zaretskii's message of "Fri, 03 Dec 2021 21:38:08 +0200") X-Mailer: WebService/1.1.19306 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Received-SPF: pass client-ip=66.163.186.206; envelope-from=luangruo@yahoo.com; helo=sonic310-25.consmr.mail.ne1.yahoo.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:280884 Archived-At: Eli Zaretskii writes: > That'd be much slower, I guess? For each such separate glyph we need > first clear the background with the color of the face, then draw the > glyph itself. Right now, we clear the background for all of the > glyphs in one GUI call, then write all of the glyphs in a single call > to the font driver. Every decent font system has the ability to specify glyph advances manually. Perhaps we could extend the font driver's draw function with another `advance' parameter that specifies the width of each glyph? We already do this in the Cairo font backend, and the Mac font backend, but transparently without the knowledge of the rest of Emacs.