Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Standard Widget Toolkit (SWT) » Label Text Vertical Alignment Problem
Label Text Vertical Alignment Problem [message #521615] Thu, 18 March 2010 09:37 Go to next message
Cheney  is currently offline Cheney Friend
Messages: 12
Registered: March 2010
Junior Member
This is a multi-part message in MIME format.
--------------080309060800070705000008
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Hi,

I am try to align some label text vertically. The text need to display
in different language, e.g English,Chinese,Japanese,Korean...

But the problem is that: The same sample code,in my computer 1, the text
layout is OK, but in my computer 2, the text layout is wrong,see attached.

The sample code as I used is below:

public class Snippet143 {
public static void main(String[] args) {
Display display = new Display();
Shell shell = new Shell(display);
shell.setLayout(new GridLayout(1, false));
CLabel chinese = new CLabel(shell, SWT.BORDER);
chinese.setAlignment(SWT.CENTER);
chinese.setText("中文");
chinese.setBackground(display.getSystemColor(SWT.COLOR_YELLO W));

CLabel english = new CLabel(shell, SWT.BORDER);
english.setAlignment(SWT.CENTER);
english.setText("English");
english.setBackground(display.getSystemColor(SWT.COLOR_YELLO W));

CLabel japanese = new CLabel(shell, SWT.BORDER);
japanese.setAlignment(SWT.CENTER);
japanese.setText("日本語");
japanese.setBackground(display.getSystemColor(SWT.COLOR_YELL OW));

CLabel korean = new CLabel(shell, SWT.BORDER);
korean.setAlignment(SWT.CENTER);
korean.setText("한글");
korean.setBackground(display.getSystemColor(SWT.COLOR_YELLOW ));

shell.setSize(180, 200);
shell.open();
// Set up the event loop.
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
// If no more entries in event queue
display.sleep();
}
}
display.dispose();
}
}


I run the code base on org.eclipse.swt_3.5.1.v3555a.jar, and my two
computer is the same configuration:os.arch=amd64 os.name=Linux
os.version=2.6.25.5-1.1-default.

Dose anybody know what cause the problem?

Best Regards,
Cheney

--------------080309060800070705000008
Content-Type: image/png;
name="OnOS1.png"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="OnOS1.png"

iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAIAAAAiOjnJAAAAAXNSR0IArs4c 6QAAAAlwSFlz
AAALEwAACxMBAJqcGAAAAAd0SU1FB9oDEggwMttDRuYAAAxdSURBVHja7Z1/ UBTnGcef3fME
Tn7KOJxAa2oQRVuxBqm1Qacm0UHr0Ek6STuTwSSkGrVVQU0K7eSPpGIjDVQn mbZRTMs49o+m
OjY6NrXRip3YKBp10BoxTVMQ0JSA/DiPA277x8Jy3O3t7e69e7d39/3ESfbu 9nbM7Wee53nf
e973OEEQCADWTNL3tgXFZfjsYpbLJ+rZiyUqVbJ2Mz7fmEV0QFkvTlMqXFBc Jip19Van+HaO
IyLiiIjjfA7GH3A0ep7HwfjbPQ5Gj7RccMJjfxeceGWZqwe6oMylpY/O40D6 l+cBCaP/SIee
B36vo/GCMhcKdEHvq6i4IBEJ83PsRHT093sV3NIglmjVlZYO3w8ZYsWUWOJB /iy7gls8Ajsw
Al57uAKAiOhKS0fJ2s3+hnGIWCCsEQuAUMxjSXR/dMQyOWGsgB+tbic8IiKO BgYpe2ExZ4HH
EEsd8fxQRy8X8LS+z1sz8x+1WOLwiRtB+43zEwZx5DkYpOmzFwW8Qn9Xe/// 2okoI/ch6ck7
LU0CUWJ65pS06QrvTbA22jJspZU5dZtSmYn1xIrFK1es4Hie53mO43l+7HDi fzfseMWB+28k
NS8+4/FImiag7a+9rebt/V3tdVVlAlFF9f6MWQWiVXVVzxPR1ur9ymJ1OYp6 b93bWNy8Ja9w
z/LJbGosTiW48xFCbVXZnZamOy1NdZVqv7WzWTl7Xmr9iayGdR3MIhYJxPG8 KA/PjXpG3Ogz
NPYS1AoBO1572ysV1rz4rMr32nMLyqvra6vKiKjWQ6mtYgBTMYuekpPd33aR aAYjsTiPoDWu
EY2pBqtCSuacQqnY6vj4vKb32nMLKqrra6uek54pH0uLgbLWmbEDdsX7qFr8 hLzHSxELYsUA
grCM/ahwNC7RuFMTDSOkwoC0Xf/nWAITJtbeRAJl5RWG5q/RebOptqpMSqNE VFf1/FYVQcs5
TORwXTj9xb69rQ3vL2In1oQifWKk4njRNdijzK5tpZ61kcRLNQ165h1I0GGV OCokoopd9QKR
WLz/SnQr5yGlHJrUOMBZ8pekrd8xj13EEmOWVF3xnjqJhhEiVohmHF561ne6 QSsV1fUZswoE
ovJd9SoHhj33l7JPhYeOnfnbh80kNaVwnFerifj44/9+Pj0Dt94vla83yKdC 9UPC3b/zN0Gq
hsT0zPLqeiLKyC0Q350xq6C8er84Qarj/yhYsWzzv9fnHpGGBP7ap6Zn8JZJ kyGQLNlzF495
IN8+pWkw6HmgvtkuMT0zcWqmMDHKiaFLn+nBisVPshJZ1fblgZhBXqw7fVi6 A9Tia0tGEod2
A2AIEAtALBDpNZY//vPBH/GRAYn8WZvZiMXz/PnDr+MDBURU+Pg2ZqnQwmPW AKiSQZtYPI+a
DKiSAWKBYMWaMfXsnDkXX36rB6kQsEyFN+483Hj0wbY91352xqW/ePd65uqZ fYb+7Reu2E4k
DA/24kaaNmIlWLmE2al1h7MKn+z4+ZUZbMQau/cg1muspJlZA+2XdPa8IxUC XxnsyY3igf6e
dxTvwFeGzt6lwY4KLRAL+MgwOEyDfa4Pj3f+eE2T3ohlQSoE3jJ8LfOsg7PM /UZa6Za5SIWA
WSq8ebcIqRCwT4Xy2mmUVEMqTEtLZXgaMF/EYvddoRERq7u7B25FX8SSr7Ey kjjUWEBljSVr
i9bindOU1Lye6e7u8Zf7fJ8UTwYRmgq1zrzzAfOapyteD9UY4/UuECPFO7NU iLoqalJhqEeF
qNkxKgzPqNDXLeTBKB8V6k6FvqKocQsyRV8qZNk24+WHSmMkt2BYpEUs0y+m gFURHbESrI3p
2U3lb/aYTiwpYuFuRaJYXY6iaydzPqtp3nLKpbt455grJcUq0S3oFXGpkME+ 76wilr/JUs+p
eWTGyCreg9rnXZNYCmYoSwOlIkssBvu8+6ZCLNFBKpTd511j8S7zu3CC8X/Q D23KiDUmg3OY
nL2us0c7Sx+5oDtieYsVkqWk93AXTRmxRmVgsM87j3WFwEcG2X3esSkIYDMq DEosLKYAKmUI
W9sMiJpUKIvZd5sJBuxUE8ZUyKA1GVNZSIVIhSBEqRDFOzBFxIJYwIDpBqRC oCCD9G00sV1X
6K+VSl+3gtSn9fjCxMOX+tWcCcyTChm3zRhxgwX8xF0MTDeEIRUe+agfd9GU EWtUBqulMSXb
9kxlbniK97S01EvvxK9ekmyfljq/KPHYp+OOtrwbvzg35YE5STsPWxQ2gBho nfTCE0kzs1Kn
2VOKVk/57TGLdI6/K4MQRCyHq+jSn2fe3HU1bKPCyr/TzkN9rW33Xi2mjSXx 4pN3z8V/p4av
b+y9cW4g/R8JCm/f9OiU9KfuX/53T1tL38s/GDmy16p8ZRAasawW7sv5UxtO fkm/WAFTobga
wvOP56vvveFc8IBgjRPWbHf0344Tn6z9YdzmQ/fn2YX4NPcLvxxQuPi5Hu67 K4eT4yguyf3Y
086//NWpfGUQmlQokjwzK/zFOz/ZLbhHjw92ctenj9XnvFKh/odXXE/NT87/ 9vDDy4c2PD0U
xwe4MjA8Yo34f1XbtSzsJ0htFhpRN+5buN5x/Vr/5ieHnTetJSsTf/2uBXc3 nGJNlOHeJ7fN
NSp8Lks40Mpt+4pARCODAcS1JrqXrnItXeWq6LNkPpi44S66lsOfCofdQkdz z4/WtIateJel
7K3B33w/4fJtbrCb311mUzhz94rE3Q3W9h7OPcRdPWWNSxvC3TVD8R4/qfHr az6Z/dP5wUQs
bbvNqCm8phU4j1fFr12e3EburXsH6HiyvzNXbR36xRvx3/yJxeEW8gqHD7zn wN0Na8TixyLW
6PKv3euW6S7eNew2o/yq58PcEue5EicRjbj4XVbB6wTp4KurBg+uGtR0ZWBk xDL3bjO7H0vc
ecDa2s25XdzpfQnp+U7cs8hKhQzEMqIfa3XF0L/eif/W3BT7A8k1H7j/dGQQ 9yyyUqEs4V9X
OK948GAxZEIqBCAEqRArKZAKDUqFJu+W4rD1Q1hSYURsChIMsCo8EQs1FjBB jYXFFMCQUSHW
FQKkQhDOVBhs24x5NgXBFiAhj1hG7jZDmMpCxEIqBCYVy2LBqBCokgERCyAV gqhNhZggBepk
QMQCpohYRv1eoY6XQLgjVgg7SBU80LfGwevHV32vj6UT4YtYBk+QqrnT+gKP 9C7PH8sk7LQW
CamQ8bpC3YlPNhTBHqRCbdnN16qAcc7zx1cJv8Iag6lQXwCTdUv2GelM1PWx lQo13W/p9+u9
inR/EQvEbipUX7x7meTrlj/PkBCjLRUynMfyl/v8TS6glo/uiMUbZ5WsW7I1 e8AACSKsxmIy
KpQqKoVyStk8ffUciPJU6DnV6S+AIQ5FUCpMsDbaMmyllTl1m1INTIVsowhi kvlTYZejqPfW
vY3FzVvyCvcsnxz+UaH68AbVzJwKbVbOlpdafyJr5pqOPbdm6BFLn1WkcbM/ heeRIk1LSk52
f9tFIkZiYYkOkH5NjuP0Fu9ymGq3GewtEwYEYVmwo0JfTLZAFFaFAecwkcN1 4fQX+/a2Nry/
yJAaC8Qg9qTGAc6SvyRt/Y55DFMhiHV67i+VGTPicwGGTEbgIwBGEGwqDOVu M9hPJobEIkxl
AaRCEEkRywuv7/KUuxgo0Hd/+A4HYulUQeF8fN8MsQJ4gMADsUIXqwDEYlNj AYgVlFWey2wU
utfVlFBY4AWxZEKUwqIJLOeKGmR73o1aMu8vJok+QaloostRdO1kzmc1zVtO uYyKWGKI0rQ0
HvNYkU4oet4J81ixCuOed1kbEGZiCoN63hlPT4CIw5CedyZZDxEuogldz7vW 73ZQv0c0Iep5
Z1i8g4gAPe8gdEAsYEqx0JcMZIm4JfZYRB8bYoV8zQysQo0FIBYAEAtALACx AIBYAGKBaCfB
2pie3VT+Zg/EAiyR7XmHWCBYbFbOnpdafyKrYV0HxAKMScnJ7m8bFwt7kIJg MWnPO4h0ZHve
kQpBsDiHydnrOnu0s/SRC4hYgBnY5x0YAnreQeiAWABiAYgFIBYAEAtALACx AIBYAGIBiAUA
xAJmAj3vwBDQ8w4MAT3vwEDQ8w4Yg553YAjoeQeGgJ53YAjoeQeGgJ53EDog FoBYAGIBiAUA
xAIQC0AsACAWgFgAYgEAsYCZQM87MAT0vANDQM87MBD0vAPGoOcdGAJ63oEh oOcdGAJ63oEh
yPa8axPr1SOf4nMEavg/OIZ9SbigV1cAAAAASUVORK5CYII=
--------------080309060800070705000008
Content-Type: image/png;
name="OnOS2.png"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="OnOS2.png"

iVBORw0KGgoAAAANSUhEUgAAALQAAADICAYAAABBLcuIAAAAAXNSR0IArs4c 6QAAAAZiS0dE
AP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oDEgkV K1YZVPYAAAAZ
dEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALSklEQVR42u2c fYwU5R3HvzO7
5x26AldK7kBjpPXwrQLBK9G2GusLFLS5RmttE1LQs6loQwDf6pH4BwZQrmJD fauCVmPsH1qI
AdNqmrY2jVRDfCEtVWmq8U5A0NwJd3jHwU3/2LfZudndmX3f5z6f5LKzM7sz l53P/e77PPs8
j+U4jiMXcxZ2CqDWeeePW3z3R70idyxZzqcFNU/SV6/YluM4zpyFnSmRd//3 QPKQLCu5JSWf
jN1OvDaxndjy2c48Z+a2ZGU9f9BrpTeCXmvsdTPPX9i1/M8vSe5/hpnbkuQo 8eDZTjxzkk+z
bec/f3HXir/Zbzv4tdLnL/xa8dfOOqtVkvTSM5sypLZmf+8mp2PJcr27d39W CRAaoWtN6OT2
7LbWDKlt/nmBSdjp6gxQf7y7d786lixPZWoqNJhVofkIwCSiuQ72vb1NkZMm uFqG6UbWmF2J
HYPD0ulzF8qK8LcCNSZ0kz2i/YetUCc8cqhH02dfqUikkU/XEPa99+bYngd5 ezakaWd/M9R5
Bz7fp4HP9kmSWmZemHHs07275EiKTZmuU5qnlUbo6+ZfpAXz58uybdm2Lcuy ZduWbDv+GH9u
y7as1GuW3blGR3HAOLrvWurZ4+5Wk+544OnQ5xz4fJ8e6uqUI2nVus1qaWtP yfxQ182SpBXr
NocSOmcusCwr/A/3HgpgY1enPt27Ky7zPYUPv8hZoeVIlm2nZLWttOSy0vvl eo37iwQwizsf
eNo3cnTfdWNB52ud2a6V67ZoY1dc4I0ekVckq3bmcKMiejksT5XOEFcu0ZF5 vDD9nHnxn7Pn
adrZ84o+X+vMdq1aN3ag0UpXBAlD3q4IS5Yse2y0sN0VGqGhHno54lXZikud qtJ+covIUQP0
7vmnX5Mt8z+2I5127rya+Z0PfLArETkyY8VDXTenI0dJhR7T6PM8WvHeDitR saG6rL/9p2My
rpu7u58t6vypLjw5JZE52cshSavWb5EjpRqFv05KfdaFJRI6Ia3tzs6269F2 yy0qtOF0331j
Rql3VDK3tWrdFrW0tcuRtHL9loJ7OnIK/fyO1/TnN/6Vqtbpx7HDJa3E4/sf H9K0Fm5+tbjn
wWdzR45Cezg2/C7vFythiU2ZrpWJBmHLzPbUKVva2rVy3ebUFyslE/rkWT/U kdETSWuTHR85
xyhPa7EViZ6EWVXg9PMuckmWe4xy2J6N5JvzjYcOK3TsK9PT46FdJKt12L+Y nELb0QZJDYUN
ugeoAowgAoQGQGgAhAYIR1SSPnr9BT4JqFtmty3PFNq2bb259UE+Gag75l17 +9jIEbHpaoP6
xOuunazQAHXZCPS4i9BgntBEDjAlckRzVejdrz1Z1V927vw7JDk6PnyYOweB KnQ0X+SISwVA
5ACoeOSgUQgmVmiEhnqt0H7ddpHCI0dz8+SKvAfAt0JHaiBy9PX1IzWUJXJE w0SObBL67e/r
6+fThopHjkS3XfDI4RW1uXmy774g8SLbMf4YIHiFtgqv0IXGi1zy59oPUFij kF4OMCRD22Ej
R6kbg1RnKGXkoB8aTGwUBhfaryEXpgsuWaXdjwClihxl7+XIJzVA1SJHUAHz vc5doQFKGTkq
3svhrsxIDWWJHJUYPpoU11u93VITQSB8hQ4xY6WcIvtFFMSGEjUKCxc6n3xh 5ERkKFZoZqyA
UZGDr77BvAqN0DAuIgczvqHeIke8URjJVqGdGviVLUlfcOfAv0JHQsxYqY0F XpAZclXoKg4f
BSh9hqaXA8xvFCI0EDkAai5y1PTqo6WG1UzNjxx5Z33TFw1EDoAqRQ4ahWBi hUZoMCNDEznA
mMhx/8WtpVmsMUmpBui75x1eOzemrW8NhH4fjL/I8YsX1oafsVJpYRyHmwbB Ikfs9M7an7Gy
7e0B7hrkqNAVGMvR3DxZb73YpKu/NVGtUydr1iUx7fgw88J7tzfpopmTdOY5 p2rt1kigtacH
e6K65bpT9bXTJmtq6yRdcvUp+u2OSMbr810XxkWjsPS9HPf8TVr7/BH19H6h +xZKt3Y0pY4d
3Nmka7ptbfn7Yb23c1BT/jEh0Dlvu/IUTbnhS73zv3717j2ie39yQts2NQS+ LowTocNEjubm
yb4/Xl55eEhzznTU0Ojo+3cc1cAnjaljG3/WqOXPf6nzWx01NY/qll8NBrr2 zn5LP1hwXBMb
pcZTR3XV4iH96dWhwNcF8yNHRRqF9kmjckbTz587YGnPNFdrzw7W8vv9mmO6 YdZEzf7ucX3n
8hEtWzyiRjv4dcHQCn3CGzkilf1i5eSIdKKA3ou5Pz+qPf8e0PIfHdfQBw3q WBDTY9sj3NXx
LHSkSkuBubnpNEdP9Vi6fUbc6hPDwf+gGmKjunTRMV266JhWHYlo+tdjWnaQ aVpEjjI3CnPR
+cSwHv/xBL3ziaXhPlsbOk8O9L4N82Pa8GyD9vVbGh2xtPsvDWpsHuGu0ij0 VujiFjwPm6+n
tg/p5a4mLbl8ono1qhWbBqWXJ+Z936IVI7r/4SZd/MuIjo46OnfecT31ylHu 6riu0Gl3j3z8
RLgFz4tZH9q7b2bHkHZ2xHsoThyztb7B8X2te/sbi4b13KLhoq4LplXotLu/ uf7e6kSODVfF
tPapBvX0WRo9ZumvT07QlNlD3B0oKnJ0vXGgOuOhr141ov+82KRvnzdJrWdO VPfro/rDtmHu
DhQVOVIZutLDR89fOKznFiIwlDZyVK2XA6BcvRw5IwcTZMGwyGHiYGQWfzQ5 ctTBYo2lBplN
rtBkaDAvQzNJFkyIHIO9n7EuB5gTOVZf8T6RA8yJHI/0NOQePlqvizWyKON4 qtBpd8+4pi3/
jBX6oqFeKvRlq2NEDjBH6KUzoolGYYReDqjTyOFytz1mUaHBnAp9cMQJN+s7 39p2bvINrA+6
Dh3r1UFQoRevORR+kmxQCUtFX19/SupKLRYJdRQ5XO5esLs3/LoclcIrr7dS U7nB6+6j2+eG
nyRbrJhBjvX19SMrBKzQFZ6x4iemW+Rc4nqF98aOoOcBkyt0kUuBlaJie3Nx NhmzzeL2ix9A
5EgJXap1OcodV6jCUPLIUUwvh181zlWlvfuyxQ0aiUSOikeOfNHC7zgVGsoe OUotcz6pk8+T
cufqGQEiR9l7OdyS+sUEt5D5GolBoggQOcpaobOtUxc0NwMUUKFrs5cj2/Wo yJAzQ9s1PpbD
L54gOPi5G2qSbDHL6Rb7muQ2MQVyRQ7GQ4NRkYN1OcC8yAFgjOC5DjLjG+qN aO7D9bz6KKuM
IrSH+l6oBZmJHAAIDYDQAAgNUFSjsNZWH2VVUShK6LREAEQOAIQGKGvk8MNv /LHfGOVswzqD
jl9mWChUROhiRav0JAFA6IIlo6pC3QiNrDBuMzRAXQidlNm7JEGQ9TTC5mK/ awGUvVGYbXV9
v4VkAGoycgRZzhaBoeaFTlbjYhZSpB8aajpylOP99ENDIRT01TeygVEVulj4 g4C6EzrskrgA
VRW62K/BaRjCuGoUAlSsUQhQl0Iz/QoMixy1uBQYS3xBgULX5uxqZAYyNCA0 AEIDIDQAQgMg
NCA0QJ2w7YFbERrMYcnj+xEazOHOV59GaDCH22ZMQmigUQhQkzz60WGEBnPo XtCJ0GAOm2/6
KkKDOVy/+nGEBhqFAAgNgNAACA0IDYDQAAgNgNAACA0IDYDQAAgNgNAACA0I DYDQAAgNgNAA
CA0IDYDQAAgNgNAACA0IDYDQAAgNgNAACA1GMtj7GUKDOay+4n2EBnN4pKcB ocEczrimDaHB
HC5bHUNoMIelM6IIDebQHrMQGszh4IiD0GAOi9ccQmgwhwt29yI0mMOj2+cq Kkn3bfuQTwOM
IPrSM5v4FMAY/g+g4VQ5Yl3A/QAAAABJRU5ErkJggg==
--------------080309060800070705000008--
Re: Label Text Vertical Alignment Problem [message #522685 is a reply to message #521615] Tue, 23 March 2010 15:29 Go to previous messageGo to next message
Grant Gayed is currently offline Grant GayedFriend
Messages: 2150
Registered: July 2009
Senior Member
Hi Cheney,

I would assume that there's a different font being used in some cases
between the two machines. Try adding a listener like the one below to each
of your CLabels, and then compare the output between your two machines. Is
there a difference?

chinese.addListener(SWT.Paint, new Listener() {
public void handleEvent(Event event) {
System.out.println("----\nChinese font height: " +
event.gc.getFontMetrics().getHeight());
System.out.println("font: " +
event.gc.getFont().getFontData()[0].toString());
}
});

Grant


"Cheney Chen" <cheney_chen@i-len.com> wrote in message
news:hnss9a$n0e$1@build.eclipse.org...
> Hi,
>
> I am try to align some label text vertically. The text need to display
> in different language, e.g English,Chinese,Japanese,Korean...
>
> But the problem is that: The same sample code,in my computer 1, the text
> layout is OK, but in my computer 2, the text layout is wrong,see attached.
>
> The sample code as I used is below:
>
> public class Snippet143 {
> public static void main(String[] args) {
> Display display = new Display();
> Shell shell = new Shell(display);
> shell.setLayout(new GridLayout(1, false));
> CLabel chinese = new CLabel(shell, SWT.BORDER);
> chinese.setAlignment(SWT.CENTER);
> chinese.setText("??");
> chinese.setBackground(display.getSystemColor(SWT.COLOR_YELLO W));
>
> CLabel english = new CLabel(shell, SWT.BORDER);
> english.setAlignment(SWT.CENTER);
> english.setText("English");
> english.setBackground(display.getSystemColor(SWT.COLOR_YELLO W));
>
> CLabel japanese = new CLabel(shell, SWT.BORDER);
> japanese.setAlignment(SWT.CENTER);
> japanese.setText("???");
> japanese.setBackground(display.getSystemColor(SWT.COLOR_YELL OW));
>
> CLabel korean = new CLabel(shell, SWT.BORDER);
> korean.setAlignment(SWT.CENTER);
> korean.setText("??");
> korean.setBackground(display.getSystemColor(SWT.COLOR_YELLOW ));
>
> shell.setSize(180, 200);
> shell.open();
> // Set up the event loop.
> while (!shell.isDisposed()) {
> if (!display.readAndDispatch()) {
> // If no more entries in event queue
> display.sleep();
> }
> }
> display.dispose();
> }
> }
>
>
> I run the code base on org.eclipse.swt_3.5.1.v3555a.jar, and my two
> computer is the same configuration:os.arch=amd64 os.name=Linux
> os.version=2.6.25.5-1.1-default.
>
> Dose anybody know what cause the problem?
>
> Best Regards,
> Cheney
>


------------------------------------------------------------ ----------------
----






------------------------------------------------------------ ----------------
----
Re: Label Text Vertical Alignment Problem [message #522830 is a reply to message #522685] Wed, 24 March 2010 06:14 Go to previous messageGo to next message
Cheney  is currently offline Cheney Friend
Messages: 12
Registered: March 2010
Junior Member
Hi Grant,

Yes, your are right.Previous, the two machines' font height is not the
same. Then I configurate the two machines as the same font, but the
problem is still exist.

The font in two machines is:
----
Chinese font height: 18
font: 1|Sans|10.0|0|GTK|1|

any hints?

Best Regards,
Cheney

Grant Gayed wrote:
> Hi Cheney,
>
> I would assume that there's a different font being used in some cases
> between the two machines. Try adding a listener like the one below to each
> of your CLabels, and then compare the output between your two machines. Is
> there a difference?
>
> chinese.addListener(SWT.Paint, new Listener() {
> public void handleEvent(Event event) {
> System.out.println("----\nChinese font height: " +
> event.gc.getFontMetrics().getHeight());
> System.out.println("font: " +
> event.gc.getFont().getFontData()[0].toString());
> }
> });
>
> Grant
>
Re: Label Text Vertical Alignment Problem [message #522922 is a reply to message #522830] Wed, 24 March 2010 09:32 Go to previous message
Grant Gayed is currently offline Grant GayedFriend
Messages: 2150
Registered: July 2009
Senior Member
Can you try setting the font for each CLabel to a font that definitely
contains the characters to be shown? My theory is that Sans does not
contain some of the chinese/japanese/korean characters you're using, and
different fonts are being automatically substituted on the two machines for
drawing them. This could be an swt problem (eg.- the wrong font metrics
being used when a font is substituted), but it would be helpful to know if
choosing fonts that don't require substitution will help your case.

Grant


"Cheney Chen" <cheney_chen@i-len.com> wrote in message
news:hocak2$dfu$1@build.eclipse.org...
> Hi Grant,
>
> Yes, your are right.Previous, the two machines' font height is not the
> same. Then I configurate the two machines as the same font, but the
> problem is still exist.
>
> The font in two machines is:
> ----
> Chinese font height: 18
> font: 1|Sans|10.0|0|GTK|1|
>
> any hints?
>
> Best Regards,
> Cheney
>
> Grant Gayed wrote:
> > Hi Cheney,
> >
> > I would assume that there's a different font being used in some cases
> > between the two machines. Try adding a listener like the one below to
each
> > of your CLabels, and then compare the output between your two machines.
Is
> > there a difference?
> >
> > chinese.addListener(SWT.Paint, new Listener() {
> > public void handleEvent(Event event) {
> > System.out.println("----\nChinese font height: " +
> > event.gc.getFontMetrics().getHeight());
> > System.out.println("font: " +
> > event.gc.getFont().getFontData()[0].toString());
> > }
> > });
> >
> > Grant
> >
Previous Topic:Label displayed Incorrectly in KDE/Gnome
Next Topic:SWT browser inside Swing panel
Goto Forum:
  


Current Time: Thu Apr 25 11:51:34 GMT 2024

Powered by FUDForum. Page generated in 0.03116 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top