2012-03-09 3 views
5

Dans ma solution J'utilise la liste à puces dans les fichiers PDF.MigraDoc Bullet List (trous)

Il ressemble à quelque chose comme ça:

• Solcellepaneler kræver hverken autoriseret service eller tidskrævende vedligehold. 
• Solceller er støjfri, forurener ikke og har ingen bevægelige dele, hvilket mindsker 
service og vedligehold 
• Solceller kan integreres i bygningers arkitektur eller anvendes som 
bygningselement i form af tag, facader eller solafskærmning 
• Solceller har lang levetid, med en produktionsgaranti på hele 25 år 
• 10 kvadrameter solceller sparer ca. ½ ton CO2 om året 

Ce que je veux:

• Solcellepaneler kræver hverken autoriseret service eller tidskrævende vedligehold. 
• Solceller er støjfri, forurener ikke og har ingen bevægelige dele, hvilket mindsker 
    service og vedligehold 
• Solceller kan integreres i bygningers arkitektur eller anvendes som 
    bygningselement i form af tag, facader eller solafskærmning 
• Solceller har lang levetid, med en produktionsgaranti på hele 25 år 
• 10 kvadrameter solceller sparer ca. ½ ton CO2 om året 

code atm:

List<string> items = new List<string>(); 

      items.Add("Solcellepaneler kræver hverken autoriseret service eller tidskrævende vedligehold."); 
      items.Add("Solceller er støjfri, forurener ikke og har ingen bevægelige dele, hvilket mindsker service og vedligehold"); 
      items.Add("Solceller kan integreres i bygningers arkitektur eller anvendes som bygningselement i form af tag, facader eller solafskærmning"); 
      items.Add("Solceller har lang levetid, med en produktionsgaranti på hele 25 år "); 
      items.Add("10 kvadrameter solceller sparer ca. ½ ton CO2 om året"); 



     Style style = document.AddStyle("MyBulletList", "Normal"); 
     style.ParagraphFormat.LeftIndent = "0.5cm"; 

     for (int idx = 0; idx < items.Count; ++idx) 
     { 
      ListInfo listinfo = new ListInfo(); 
      listinfo.ContinuePreviousList = idx > 0; 
      listinfo.ListType = ListType.BulletList1; 
      SolcellDummyText = HvadErSolceller.AddParagraph(items[idx]); 
      SolcellDummyText.Style = "MyBulletList"; 
      SolcellDummyText.Format.ListInfo = listinfo; 
      listinfo.ContinuePreviousList = true; 

     } 

Est-il possible d'attraper événement nouvelle ligne?

+0

beau travail ... continuer à aller – Reniuz

+0

je 5 dernières heures pour essayer obtenir que travailler .. donc s'il vous plaît pas sarchasm .... – Timsen

+0

qu'est-ce que c'est? vous 'TestTestTest' et' TestTestTest' stockent dans un article? Montrez comment les éléments sont remplis ... Besoin de plus d'informations et d'explications. Ajoutez plus d'effort pour créer une question claire. – Reniuz

Répondre

14

Il vous suffit de définir le LeftIndent du style MyBulletList pour qu'il corresponde au premier arrêt de tabulation. Définissez FirstLineIndent sur une valeur négative pour laisser de la place à la puce - et c'est tout.

Pour faire simple: les exigences minimales (en supposant « paragraphe » est le résultat de AddParagraph):

paragraph.Format.LeftIndent = "2.5cm"; 
paragraph.Format.FirstLineIndent = "-0.5cm"; 
paragraph.Format.ListInfo.ListType = ListType.BulletList1; 

Voici un exemple de code qui utilise un style (le style a déjà été créé, l'extrait de code uniquement le modifie):

style = styles["BulletList"]; 
style.ParagraphFormat.RightIndent = 12; 
style.ParagraphFormat.TabStops.ClearAll(); 
style.ParagraphFormat.TabStops.AddTabStop(Unit.FromCentimeter(2.5), TabAlignment.Left); 
style.ParagraphFormat.LeftIndent = "2.5cm"; 
style.ParagraphFormat.FirstLineIndent = "-0.5cm"; 
style.ParagraphFormat.SpaceBefore = 0; 
style.ParagraphFormat.SpaceAfter = 0; 

Comme mentionné précédemment: le « truc » tout est mise en LeftIndent et utiliser un FirstLineIndent négatif à la position de la balle.

Pour ajouter un style, obtenir les styles du document et appeler:

document.Styles.AddStyle("Bulletlist", "Normal"); 
+0

Ça aiderait avec un échantillon puisque je suis assez nouveau pour migradoc – Timsen

+0

A travaillé comme un charme, merci! – Timsen

+0

Cette astuce a très bien fonctionné! Merci @ThomasH! –