Ola!
Estou desenvolvendo um projeto em c# para impressão. E uso drawstring(Texto):
Quando eu mando imprimir, se eu escrever muitas palavras, ele nao na outra linha,
Como eu faco pra te as quebras de linha quando acabar o espaco?
Ola!
Estou desenvolvendo um projeto em c# para impressão. E uso drawstring(Texto):
Quando eu mando imprimir, se eu escrever muitas palavras, ele nao na outra linha,
Como eu faco pra te as quebras de linha quando acabar o espaco?
Difícil dizer sem ver seu código. Mas acredito que você terá de fazer a quebra manualmente (com substring, por exemplo). Conte quantos caracteres cabe em cada linha e quebre seu texto nessa quantidade de caracteres.
Recomendo usar um fonte monoespaçada (cada caractere ocupa o mesmo espaço, como Courier New ou Lucida Console) pra facilitar.
Abraço.
este é meu código
G.DrawString(" Observação : "+txtObs.Text, Fonte, Brushes.Red, 20, 300);
ele escreve na linha a observação que esta no meu textbox, mas se eu escrever muita coisa ele não passa para outra linha, fica tudo na linha 300;
Baseado no que eu disse, vamos supor que cabem 40 caracteres por linha. Você pode fazer algo como:
string texto = " Observação : "+txtObs.Text;
int i;
int tam = teste.Length;
for (i = 0; i < tam; i+= 40){
//Console.WriteLine(teste.Substring(i, Math.Min(40, tam - i))); // só um teste
G.DrawString(texto.SubString(i, Math.Min(40, tam - i)), Fonte, Brushes.Red, 20, 300 + (i % 40 * 20));
}
Obs: C# não é meu forte, pode ser necessário modificar a sintaxe.
Abraço.