IMPRIMIR CONTEÊDO DE TEXTBOX COM QUEBRA DE P?GINA

MLALEX 11/09/2015 13:58:30
#451285
Olá GENTE DO SABER. O mais humilde súdito de você vem mais uma vez, rogar ajuda.

Tenho um conteúdo de um textbox que consigo imprimir da seguinte forma:


<script type=[Ô]text/javascript[Ô]>
function ImprimirTextBox() {
var content = document.getElementById([Ô]<%=TextBox1.ClientID%>[Ô]).value.replace(/[
]/g, [ô]<br />[ô]);
var shtm = [ô]<html><head><link href=[Ô]../css/style.css[Ô] rel=[Ô]stylesheet[Ô] type=[Ô]text/css[Ô] /></head><body>[ô] + content + [ô]</body></html>[ô];
var w = window.open([Ô]ImprimindoOS[Ô], [Ô]ImprimindoOS[Ô], [Ô]scrollbars=yes,width=1000,height=1200,left=500,top=0,screenx=1000,screeny=1000[Ô]);
w.document.write(shtm);
w.document.close();
w.focus();
w.print();
w.close();
}
</script>


O problema é que eu preciso que partes desse conteúdo sejam impressas em páginas diferentes. Pensei em colocar determinados símbolos no texto onde preciso forcar a quebra de página, mas não sei como forçar a quebra de página. Tipo:

 var content = document.getElementById([Ô]<%=TextBox1.ClientID%>[Ô]).value.replace([ô]<._.>[ô], [ô]comando para forçar quebra de página[ô]);


Como faço isso amáveis gurus!!
TUNUSAT 11/09/2015 16:16:37
#451302
Resposta escolhida
MLALEX,

Não sei se te ajuda, mas quebra de página é [Ô]vbcrlf[Ô] ... achei também assim [Ô]Environment.NewLine [Ô]:

====================================================================
Dicas.NET - Utilizando caracteres especiais com VB.NET
http://www.devmedia.com.br/dicas-net-utilizando-caracteres-especiais-com-vb-net/2877
====================================================================
Quebra de Linha em uma String!
http://microsoft.public.br.dotnet.languages.csharp.narkive.com/JoRGMaOW/quebra-de-linha-em-uma-string

string s = [Ô]Primeira Linha[Ô] + Environment.NewLine + [Ô]Segunda Linha[Ô];
MessageBox.Show(s);

====================================================================
Forçar quebra linha em string grande.
http://www.vbweb.com.br/dicas_visual.asp?Codigo=2711
====================================================================

[][ô]s,
Tunusat.
GUIMORAES 11/09/2015 16:25:02
#451305
é possível utilizando CSS

http://www.javascriptkit.com/dhtmltutors/pagebreak.shtml

MLALEX 11/09/2015 17:43:30
#451313
Valeu TUNUSAT mas o que eu estou precisando é de quebra de página na impressão e não de linha.

O conteúdo está em um textbox de forma contínua mas preciso que em determinado ponto, a impressão continue em outra página.

Por exemplo:
[Ô]Na primeira linha tenho: Blá bla blá..
Na segunda linha continua bla, blá, blá
A partir da terceira linha quero que a impressão continue em outra página[Ô]


Grande GuiMorais!! Já tinha pesquisado a respeito do CSS mas como utilizá-lo com um texto dentro de um textbox??
KURTGU 11/09/2015 19:48:36
#451318
Faca um for para contar as linhas quando chegar em um valor crie uma nova pagina e adicione as proximas linhas...
MLALEX 11/09/2015 20:08:04
#451319
Como assim Kurtgu??

Percorro o conteúdo do textbox linha a linha e junto em uma variável. Quando chegar no ponto onde desejo envio via session para uma página em branco. Aplico um response.write com o conteudo e mando imprimir a página? Vou imprimir página por página manualmente? é isso que vc pensou?
TUNUSAT 11/09/2015 20:31:05
#451320
MLALEX,

O que o Kurt disse foi isso:

==========================================================
how to do the left,right,mid functions in vb.net
https://social.msdn.microsoft.com/Forums/en-US/69980195-bf47-4947-9134-487bb3876bf7/how-to-do-the-leftrightmid-functions-in-vbnet?forum=vblanguage

Option Strict On

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim testString As String = [Ô]The*quick+brown*fox.[Ô]
Dim left, right, mid As String

[ô]Get the LEFT 9 characters.>>
left = testString.Substring(0, 9)

MessageBox.Show(left)

[ô]Get the right 5 characters.>>
right = testString.Substring(testString.Length - 5, 5)

MessageBox.Show(right)

[ô]Starting at the letter [Ô]q[Ô] get 11 characters.>>
mid = testString.Substring(4, 11)

MessageBox.Show(mid)

End Sub

End Class

Citação:

Note the first character is regarded as character number zero ( NOT 1 ).


==========================================================

Veja também:
==========================================================
String Functions
http://vb6reference.tomswebdesign.net/string.html
==========================================================

[][ô]s,
Tunusat.
MLALEX 14/09/2015 09:38:47
#451366
Sim Tunusat!! Eu já tinha pensado algo parecido com isso, colocando um simbolo tipo [Ô]<._.>[Ô] nos pontos onde desejo forçar a quebra de página e depois fazendo isso via html, tipo o código abaixo:

var content = document.getElementById([Ô]<%=TextBox1.ClientID%>[Ô]).value.replace([ô]<._.>[ô], [ô]qual o comando para forçar quebra de página?[ô]);



mas o problema é que eu não sei o comando para forçar a quebra de página.

Se eu for fazer do jeito que você e Kurt sugeriram, eu teria que ficar dando um [Ô]Ok[Ô] para impressão para cada trecho a ser impresso, ou eu estou errado?
TUNUSAT 14/09/2015 10:34:12
#451370
MLALEX,

Peraí... quebrar a página ou a linha?!?
A impressão é HTML?

=========================================
HTML <br> Tag
http://www.w3schools.com/tags/tag_br.asp

This text contains<br>a line break.

=========================================
Page breaks in HTML
http://www.cybertext.com.au/tips_HTML_pagebreak.htm
=========================================
How to force a line break in a loooooong word in a DIV?
http://stackoverflow.com/questions/3058866/how-to-force-a-line-break-in-a-loooooong-word-in-a-div

Use word-wrap:break-word;
=========================================

[][ô]s,
Tunusat.
MLALEX 14/09/2015 10:59:48
#451375
Quebrar página

Deixa eu explicar novamente. Tenho um texto enorme dentro de um textbox (visual studio - asp.net VB) preciso imprimir esse texto mas trechos dele deverão estar em páginas diferentes. Existe alguma coisa do tipo CSS ({ page-break-before: always }) que quebra essas páginas mas eu não sei como nem onde utilizá-los.

Pensei que seria possível fazer isso trocando simbolos no texto por comandos para quebrar a página, tipo o código abaixo, mas também não tenho idéia de como fazer isso.

var content = document.getElementById([Ô]<%=TextBox1.ClientID%>[Ô]).value.replace([ô]<._.>[ô], [ô]qual o comando para forçar quebra de página?[ô]);
MLALEX 14/09/2015 15:30:11
#451389
Pessoal, consegui em partes. Inseri no textbox os caracteres [Ô]_QUEBRA_PG_[Ô] nos diversos pontos onde quero que haja uma quebra de página e usei um replace como vocês podem ver no código abaixo:

          <script type=[Ô]text/javascript[Ô]> 
function ImprimirTextBox() {

var content = document.getElementById([ô]<%=TextBox1.ClientID%>[ô]).value.replace(/[
]/g, [ô]<br />[ô]);
content = content.replace([ô]_QUEBRA_PG_[ô], [ô]<div style=[Ô]page-break-after:always;[Ô]> </div>[ô]);
var shtm = [ô]<html><head><link href=[Ô]../Impressao.css[Ô] rel=[Ô]stylesheet[Ô] type=[Ô]text/css[Ô] /></head><body>[ô] + content + [ô]</body></html>[ô];
var w = window.open([Ô][Ô], [Ô][Ô], [Ô]scrollbars=yes,width=1500,height=1500,left=2000,top=0,screenx=1000,screeny=1000[Ô]);
w.document.write(shtm);
w.document.close();
w.focus();
w.print();
w.close();
}
</script>
}



Funciona mas só no primeiro [Ô]_QUEBRA_PG_[Ô], nos outros nada acontece. Como fazer isso da forma correta para substituir em todos???
Página 1 de 2 [11 registro(s)]
Tópico encerrado , respostas não são mais permitidas