߂ Ă

݇ ś

Ă ߈ ͂ ނ К ،

Jean-Pierre Dube ߜ
JavaWorld
ˉ ͌ :݇ͅ



͂ Jean-Pierre Dube .˃ ߈͂ ޟ
.˜ Ń ޅ ͅ Ă џ џ ϟ ڟ͘

ś .˟˛ ߊ ߂ Ă ś ޟ͊ ޟ
. 霗 ˂ Ă ͊ ˟߅ ̓ Java API
Ă ߈ ͂ ߋ ś ˛ ޟ ˗ ߛ ś
˜ ܟ ߈͂ К ݝ ͂ ś
PFDocument PFPage PFPrintObject ͂ ޛ Ԝ .˟͗
К ͂ ś ɟ߅ ͟ ˜ К
PFParagraph К . ߊ ɟ߅ ߈ ͂




ޅ ş͟˛
韙 ł К ޟ .ŋ Ă ߈ ͂ ڟ PFParagraph К
PFParagraph ˂ .΂ ŋ Κ ޅ ˂ ̓
͛ ŋ Ĉ :˟ ͅ ͟ ͅ ˂ ޅ ˟߅
ߕ ˜ ۜ ΂ ˂ К ޟ ߚ .ܛ ԃ ͅ
PFParagraph .˟ ݟ՜Ο ޅ
͘ String ݂ ˜ К ڟ ˟߅ .˟
΂ ͅ
͂ 雝 ޟ PFParagraph .˟ ˂ AttributedString
.̘ ͂ ˌ ɟ߅ PFPrintObject
韌 ̓ PFParagraph ޟ
߅ .˟ ˂ PFPrintObject ˅ ˟߅ ˝
.˟ ŋ PFParagraph


PFParagraph : ŋ


鞕 ܃ ˂ PFParagraph ͅ 삇
print() ˅ ΂˜ ˜͕ .ݜ ˟ ΂˜ ˅ Ԗ
ߕ ۜ ˅ ޟ ˅ . ߇ ŋ Ԋ ߌ ͌
(΂) ΂˜ ˅ ͅ Є .˟ ݟ՜ ޅ
print 酛 ˌ ݂ ΂˜ ˜͕ ͂ .˜ߊ ͕ ޅ Ë
.˜ ˂ ߛ ͕ ͝ ΂˜ ̓ printChilds() ˅

: ߇ ޅ ޅ˜ ̓ private ˅

renderLeftJustified() -
renderFullyJustified() -
renderCenterJustified() -
.renderRightJustified() -

鋖 ˗ ނ ͖ ( Ԋ) renderLeftJustified() ˅
.˟ ˂ ˌ ͐ ŋ

ނ renderLeftJustified() renderRightJustified() ߂ Ԋ
͏ Є .˟ ̓ ݟ ͏ Η͛ ̓ .˝
.霗 ̓ ݟ ˟ ŋ˃ layout.getAdvance() ˅
΂ ˜ ܉ ˟ ݗ Η͛ Η͛
. renderLeftJustified() renderRightJustified() ˅ .˟
.(˟ ݂ ݟ ł ˃ ł ނ )

. ΂ ͘ renderFullyJustified() ˅
renderCenterJustified() renderLeftJustified() ˂
˜ߌ ͅ ͂͘ Ԋ renderRightJustified()
К .錂 韂 雂 ͂
͂ ˜ ޟ ˜߅ LineBreakMeasure
ޟ ܉ ߊ .˟ ݂ ͂ ނߊ ˟ ̙ ˋ
Vector ڟ ͂͘ Ԋ ͝ ˟ Ԗ .ŋ ˂ ܗ
Ԋ ͝ ߌ ˅ ޟ Є - (- Ԋ) .˟ ͟
.韂 ˜ ŋ ˌ ͟ ˌ ˂ vector
˟ ˜ Є ˟ ͅ ͊ Ԋ .˟ ˂ ( Ԋ)
͂ .錂
雂ԃ ޅ Ԋ ڟ ˅ ޟ .˟ ߅ getJustifiedLayout()
TextLayout К ˟ ϟ ڟ ޟ .˟

͟ ˅ ޅ ڟ ͂͘ џ ߛ ނ ՜
͂ ւ getTextHeight() :̓ ͂ PFParagraph
͂ ͟ ͖ ܉ getNextParagraphPosition() ͘
˟ ˂ getNextParagraphPosition() ˅ .˟ ͅ
Ԝ .˟ Å͛ ͘ Є ͂͘ ޟ˜ ˟ߊ
.ŋ ˌ ނ ܗ



jw-0302-print1.gif - 11169 Bytes
getNextParagraphPosition ˅ ˂ ͂͘ џ : ܗ



.͗ ˂ ͟ ˗ ޛ ܗ Ńƛ ͟ ̓

1|PFParagraph paragraph = new PFParagraph ();
2|PFParagraph paragraph1 = new PFParagraph ();
3|
4|page.add (paragraph);
5|paragraph.setText (text);
6|paragraph.setHorizontalAlignment (PFParagraph.FULL_JUSTIFIED);
7|paragraph.setSize (new PFSize (page.getPrintableAreaSize ().getWidth (), new PFInchUnit (6)));
8|
9|page.add (paragraph1);
10|paragraph1.setText (text1);
11|paragraph1.setHorizontalAlignment (PFParagraph.FULL_JUSTIFIED);
12|paragraph1.setSize (new PFSize (page.getPrintableAreaSize ().getWidth (), new PFInchUnit (6)));
13|paragraph1.setPosition (paragraph.getNextParagraphPosition ());


paragraph ͕ ͗ ͅ ˌ ތ ̓
˅ . ͖ Ԋ ˜ͅ ޟ .ŋ ҂ paragraph1
setPosition() getNextParagraphPosition()
˂酋 ˟ߊ ˟ ͕ .˜ ޟ ː ͂͘
PFParagraph instance ڟ ˟ ՜ ޟ ̓ .˟ Ă ߈ ͂
ͅ џ ̓ getNextParagraph() ˅ ͗ ˂ Ԋ ͝ ̓
͘ ˟߅ Ŗ ̓ ̓ .˟ ˂ Ԋ ͝
.˟ ˂ getTextHeight() ˅ ˟ ˂

˂ ޅ ΂˜ ͂ ߜ ˟ ߜ ߊ
΂ ˂ PFParagraph К .ݟ ͛ ˟ߛ Ă ߈ ͂
:΂ ˜ ߊ ޅ ͟ ͅ ř ˂
ڟ ߜ ޅ К ޟ .( ͝ ) ܛ ԃ Η͛ ŋ
韂metrics ޟ PFParagraph .̄͟ String AttributedString
. ڛ ޅ ł߅ џ ߜ˃ ̘ ނ͂
߈ ͂ ߇ߛ ߍ ݝߊ
.ݜ ͐




ߍ ܗ
݋ ߍ
123456

՜
ޟ ߛ ߊ ՜
:˟ߘ Ùԛ

-
-
-

-
Ë -
ߗ -

-
ߙԛ -
ŋ ˜ -




:ڟͅ ŋ

: ŗ͌ ݂








Copyright 2001, JavaWorld/International Data Group Inc./PC WORLD Iran. All rights reserved.