[Resolvido] = Erro ao passar arquivo texto para pdf usando Itext Ibm

Boa tarde !

Pessoal estou com uma duvida preciso passar o conteudo de um arquivo texto para pdf

porem , estou conseguindo gerar a Ultima linha e são varias linhas apos isso preciso posicionar essas linhas

dentro do pdf se alguem puder me ajudar o indicar locais de pesquisa fico grato

segue abaixo o codigo que estou usando Obs Na linha onde está escrito empresa são paginas diferentes

Att javaX

   public void WritePdf(String arquivo, String conteudo){

     Document document = new Document();
       
      PdfWriter.getInstance(document, new FileOutputStream(StrTran(arquivo,".","")+".Pdf"));
      document.open();
      
         document.add(new Paragraph(conteudo+"\n"));
      
      System.out.println(arquivo);
      System.out.println(conteudo);
      
       if (conteudo.equals("%%EOF")) {
       System.out.println("fechou o arquivo");
        //fechamento da stream de saída
        document.close();
       }      
     }
      catch(Exception e){
      System.out.println("Erro ao Escrever no arquivo!!");
     }
   } 

Arquivo Abaixo

%!
XGF
500 SETBUFSIZE
(PRINCIPAL.JDT) STARTLM
+$DJDE$ FORMS=EMPRESA_A3,FEED=BAN3,END;
01 7209072675012870000000000122022021 Nome Nome Nome Nome Nome Nome Nome
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021 Data de Processamento 25/09/2012 # Terça-feira # 25 de Setembro de 2012 # 12:49:04
01 7209072675012870000000000122022021 Data de Vencimento 21/09/2012 # Sexta-feira # 21 de Setembro de 2012 # 12:00:00
01 7209072675012870000000000122022021 Data Limite 21/09/2012 # Sexta-feira # 21 de Setembro de 2012 # 12:00:00
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000122022021 Nome Nome Nome Nome Nome Nome Nome
01 7209072675012870000000000122022021 R S SEBASTIAO 000
01 7209072675012870000000000122022021 61932250 - MARACANAU - CE
01 7209072675012870000000000122022021
01 7209072675012870000000000222022021 Nome Nome Nome Nome Nome Nome Nome
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021 Data de Processamento 25/09/2012 # Terça-feira # 25 de Setembro de 2012 # 12:49:04
01 7209072675012870000000000222022021 Data de Vencimento 21/09/2012 # Sexta-feira # 21 de Setembro de 2012 # 12:00:00
01 7209072675012870000000000222022021 Data Limite 21/09/2012 # Sexta-feira # 21 de Setembro de 2012 # 12:00:00
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021
01 7209072675012870000000000222022021 Nome Nome Nome Nome Nome Nome Nome
01 7209072675012870000000000222022021 R INDEPENDENCIA 000 FRANKLIN
01 7209072675012870000000000222022021 66840005 - BELEM - PA
01 7209072675012870000000000222022021
+$DJDE$ FORMS=EMPRESA2_A3,FEED=BAN3,END;
01 7209072675012870000000000122022021 619322502
01 7209072675012870000000000122022021 Nome Nome Nome Nome Nome Nome Nome
01 7209072675012870000000000122022021 R S SEBASTIAO 000
01 7209072675012870000000000122022021 MARACANAU - CE
01 7209072675012870000000000122022021 61932250
01 7209072675012870000000000122022021 0000001 Arq: TESTE.001
01 7209072675012870000000000122022021 7209072675012870000000000122022021
01 7209072675012870000000000122022021
01 7209072675012870000000000222022021 668400051
01 7209072675012870000000000222022021 Nome Nome Nome Nome Nome Nome Nome
01 7209072675012870000000000222022021 R INDEPENDENCIA 000 FRANKLIN
01 7209072675012870000000000222022021 BELEM - PA
01 7209072675012870000000000222022021 66840005
01 7209072675012870000000000222022021 0000002 Arq: TESTE.001
01 7209072675012870000000000222022021 7209072675012870000000000222022021
01 7209072675012870000000000222022021

Boa noite pessoal!

Bom não tive resposta mais consegui resolver , eu postarei o codigo resolvido conforme abaixo.
visto a difilculdade de encontrar solução , e talvez por esse motivo não obtive resposta.

e acho importante ajudar o pessoal a crescer na linguagem , pois acredito que quanto mais
pessoas tiverem uma boa abilidade com a liguagem mais soluções conseguiremos
e ajudara a linguagem a ser cada vez mais disseminada e adivinha quem ira ganhar com isso …
nos os desenvolvedore em java, e e claro uma peguena contribuição com o forum e com os amigos que já
tantas vezes me ajudaram, e é aqui no forum do guj o primeiro lugar que procuro.

espero que ajude!!!

/**    
Metodo para, Gravar em arquivo Pdf                                         <p>  
3 Argumentos do Tipo String                                                <p>  
Primeiro Argumento, Nome do Arquivo                                        <p>  
Segundo  Argumento, Conteudo a Ser Gravado                                 <p>  
Terceiro Argumento,Apenas Para Mudar a Assinatura do Metodo                <p>  
Exemplo de Uso =  Util.Write(NomeArquivo,Conteudo,Pdf);                    <p>  
*/   
  public void Write(String arquivo, String conteudo, String Pdf){   
  
   int cont = 0 ;   
  
   int contLine = 0 ;   
  
   int indice = 1 ;   
  
   String linha = null;   
  
   String Imagem = null;   
  
   float altura = 835;   
     
    try {   
     Document document = new Document(PageSize.A4);   
  
     FileReader reader = new FileReader(new File(arquivo));   
     BufferedReader leitor = new BufferedReader(reader);     
       
    // carregando o gif de Frente   
     Image fundoF = Image.getInstance("C:\\Java\\J2se\\Boleto\\src\\View\\img\\TESTE1.gif");     
     fundoF.scaleAbsolute (PageSize.A4.getWidth() - 74f, PageSize.A4.getHeight() - 65f);   
     fundoF.setAbsolutePosition(38,50);   
  
    // carregando o gif de Verso   
     Image fundoV = Image.getInstance("C:\\Java\\J2se\\Boleto\\src\\View\\img\\TESTE2.gif");     
     fundoV.scaleAbsolute (PageSize.A4.getWidth() - 10f, PageSize.A4.getHeight() - 10f);   
     fundoV.setAbsolutePosition(05,05);   
       
    //cria PDF do TXT     
      PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(StrTran(arquivo,".",Space(0))+".Pdf"));   
  
    //Abrir PDF   
      document.open();   
  
    // Para Poder Escrever No Pdf   
      PdfContentByte contentByte = writer.getDirectContent();   
  
    // define a fontes a ser usada     
      BaseFont F1 = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.EMBEDDED);     
      BaseFont F2 = BaseFont.createFont(BaseFont.COURIER_BOLD, BaseFont.WINANSI, BaseFont.EMBEDDED);     
      BaseFont F3 = BaseFont.createFont(BaseFont.HELVETICA_BOLD, BaseFont.WINANSI, BaseFont.EMBEDDED);     
   // Começa a ler o arquivo Linha a Linha     
      while((linha = leitor.readLine()) != null){   
        cont++;   
        contLine++;   
        if (cont > 4 && linha.substring(1,7).equals("$DJDE$")){   
         contLine = 1;   
         if(indice != 1){   
          document.newPage();   
         }   
          Imagem = linha.substring(linha.indexOf("+$DJDE$ FORMS=") + "+$DJDE$ FORMS=".length(), linha.indexOf(",FEED=BAN3,END;"));   
           if(Imagem.equals("TESTE1")){                 
            document.add(fundoF);   
           }else if(Imagem.equals("TESTE2")){   
            document.add(fundoV);   
           }   
          indice = 2;                 
        }   
        if (cont > 4 ){   
       // abre a insercao de texto e insire a fonte do documento     
        contentByte.beginText();     
        contentByte.setFontAndSize(F1,6);     
       // define o posicionamento na tela por uma matriz de pixels e escreve o texto     
        contentByte.setTextMatrix(document.left()+05,altura-(10*contLine));     
        contentByte.showText(linha);   
       // encerra o texto da página   
        contentByte.endText();     
        }   
      }   
     //fecha os arquivos   
      document.close();   
     //fecha os arquivos   
    }catch(Exception erroPdf){   
     System.out.println("Erro ao Criar Pdf!! "+erroPdf );   
    }   
  }