Automatiquement Mot De L'Habillage De Texte Pour Imprimer Une Page?
J'ai un code qui imprime une chaîne de caractères, mais si la chaîne est de dire: "bla bla Bla"... et il n'y a pas de sauts de ligne, le texte occupe une seule ligne. Je voudrais être en mesure de façonner les cordes de façon à ce mot revient à l'dimensions de la feuille de papier.
private void PrintIt(){
PrintDocument document = new PrintDocument();
document.PrintPage += (sender, e) => Document_PrintText(e, inputString);
document.Print();
}
static private void Document_PrintText(PrintPageEventArgs e, string inputString) {
e.Graphics.DrawString(inputString, new Font("Courier New", 12), Brushes.Black, 0, 0);
}
Je suppose que j'ai pu trouver la longueur d'un personnage, et le texte à la ligne manuellement, mais si il est intégré dans la façon de le faire, je préfère le faire. Merci!
Vous devez vous connecter pour publier un commentaire.
Oui, il y a la Cordon de serrage a la capacité à mot le Texte à la ligne automatiquement. Vous pouvez utiliser MeasureString méthode pour vérifier la météo de la chaîne Spécifiée peut complètement Dessiné sur la Page ou Pas et combien d'espace est requis.
Il y a aussi un TextRenderer Classe spécialement à cet effet.
Voici un Exemple:
Ici, j'ai spécifié maximum de 60 Pixels de largeur, puis mesurez la chaîne va me donner la Taille qui sera nécessaire pour Tirer cette chaîne. Maintenant, si vous disposez déjà d'une Taille ensuite, vous pouvez comparer les retours de Taille pour voir si elle va être bien Dessiné ou Tronquée
J'ai trouvé ceci : Comment: Impression d'un Texte de plusieurs pages de Fichiers dans Windows Forms
Mec im souffrance avec l'impression en HTML, total cauchemar. Je dirais qu'à mon avis vous devriez essayer d'utiliser quelque chose d'autre à imprimer le texte etc passer des paramètres à reporting services et contextuel d'un fichier PDF que l'utilisateur peut imprimer.
Ou potentiellement vous pourriez avoir besoin de compter le nombre de caractères et de spécifier explicitement un saut de ligne!