Estou querendo gravar um pdf, porém o tamanho máximo do arquivo é de 2 MB. Então eu preciso dividir o arquivo em tamanhos que sejam menores que 2 MB. Até agora só consigo fazer a divisão do arquivo por páginas, entretanto eu não consigo saber se o split feito tem menos de 2 MB.
Como posso descobrir o tamanho de uma página de um pdf?
Obs.: Estou utilizando o Itextpdf para a leitura do arquivo.
Depois, valide se o tamanho é menor ou maior que o que precisa (2 mega, no caso)
Se for maior, divida o array em partes que tenham, no máximo, os 2 mega.
Cada novo array de bytes pode ser gravado em um arquivo separado.
Um possível problema, difícil de contornar, seria o arquivo original possuir várias imagens e a divisão dos bytes ocorrer no meio de uma.
M
Solucao aceita
matheusYudi1 like
Obrigado pela resposta darlan,
Mas consegui uma outra forma de fazer o split. É necessário baixar a dependencia do itext-xtra e nela há uma classe SmartPDFSplitter, há o método split em que há ele recebe um outputstream e o tamanho do arquivo como parâmetro.