2010-04-27 5 views
2

j'ai quelques paragraphes dans un FlowDocument, et ce que j'ai besoin est de justifier toutes les lignes (même les lignes avec des sauts de ligne)WPF: Comment justifier toutes les lignes dans les paragraphes (lignes avec des sauts de ligne aussi)

est ici un exemple de code:

<Paragraph TextAlignment="Justify"> 
"One of the most important operations necessary when text materials 
are prepared for printing or display is the task of dividing long 
paragraphs into individual lines.<LineBreak/> 
When this job has been done well, 
people will not be aware of the fact that the words they are reading 
have been broken apart arbitrarily and placed into a somewhat rigid 
and unnatural rectangular framework; but if the job has been done 
poorly, readers will be distracted by bad breaks that interrupt 
their train of thought." 
</Paragraph> 

la sortie de ce qui précède ne justifie pas la ligne qui a un saut de ligne, cette ligne sera aligné à gauche, ce que j'ai besoin est une ligne de même largeur pour toutes les lignes

Comment cela pourrait-il être réalisé? (Notez que la sortie désirée est la même sortie réalisable en ms si un paragraphe a des sauts de ligne et est configuré pour justifier, par exemple si nous avons 3 mots sur une ligne, nous aurons 1 mot sur la gauche, un dans le centre et une à droite)

Merci, Sam

Répondre

1

Je ne pense pas que vous pouvez obtenir ce que vous voulez. Même si vous remplacez le <LineBreak/> par un paragraphe proche (que je sais que vous ne voulez pas):

<Paragraph TextAlignment="Justify"> 
One of the most important operations necessary when text materials 
are prepared for printing or display is the task of dividing long 
paragraphs into individual lines. 
</Paragraph> 
<Paragraph TextAlignment="Justify"> 
When this job has been done well, 
people will not be aware of the fact that the words they are reading 
have been broken apart arbitrarily and placed into a somewhat rigid 
and unnatural rectangular framework; but if the job has been done 
poorly, readers will be distracted by bad breaks that interrupt 
their train of thought. 
</Paragraph> 

la dernière ligne du paragraphe est justifié à gauche.

+0

Si ci-dessus n'est pas réalisable, comme une alternative que je songeais à justifier manuellement le texte connaissant le saut de ligne de chaque ligne, cela pourrait-il être réalisé d'une manière ou d'une autre? comme définir une largeur et un espacement manuel pour chaque ligne afin que j'obtienne un paragraphe justifié? – sam

0

Est-ce que vous pourriez vouloir todo:

<Paragraph Margin="5,5,5,5"> <!--You can assign margin here or below to give you the spacing needed--> 
<!--You can set width as need, but new line can be done in a textblocks LineBreak--> 
<TextBlock TextAlignment ="Justify" TextWrapping="Wrap" Width="150"> 
    One of the most <LineBreak/>important operations necessary when text materials 
    are prepared for printing or display is the task of dividing long 
    paragraphs into individual lines. 
</TextBlock>        

espoir qui aide ...

+0

7 ans plus tard, j'ai la réponse :) Désolé, je ne serai pas en mesure de valider votre réponse car ce projet a été abandonné il y a longtemps, j'espère que quelqu'un d'autre le validera et en bénéficiera – sam