Convertir texto a PDF
Contents
[
Hide
]
Pruebe en línea. Puede comprobar la calidad de la conversión de Aspose.PDF y ver los resultados en línea en este enlace products.aspose.app/pdf/conversion/txt-to-pdf
Aspose.PDF for Android via Java proporciona la capacidad de convertir archivos de Texto a formato PDF. En este artículo, demostramos cuán fácil y eficazmente podemos convertir un archivo de texto a PDF usando Aspose.PDF.
Cuando necesite convertir un archivo de Texto a PDF, primero lea el archivo de texto fuente con algún lector. Hemos utilizado StringBuilder para leer el contenido del archivo de Texto. Instancie el objeto Document y agregue una nueva página en la colección Pages. Cree un nuevo objeto TextFragment y pase el objeto StringBuilder a su constructor. Añada un nuevo párrafo en la colección Paragraphs usando el objeto TextFragment y guarde el archivo PDF resultante utilizando el método Save de la clase Document.
Convertir archivo de texto plano a PDF
public void convertTXTtoPDF_Simple () {
// Initialize document object
File pdfDocumentFileName=new File(fileStorage, "demo_txt.pdf");
File txtDocumentFileName=new File(fileStorage, "Conversion/rfc822.txt");
// Instantiate a Document object by calling its empty constructor
document=new Document();
// Add a new page in Pages collection of Document
Page page=document.getPages().add();
String string;
StringBuilder stringBuilder=new StringBuilder();
InputStream is;
try {
is=new FileInputStream(txtDocumentFileName);
} catch (FileNotFoundException e) {
resultMessage.setText(e.getMessage());
return;
}
BufferedReader reader=new BufferedReader(new InputStreamReader(is));
while (true) {
try {
if ((string=reader.readLine()) == null) break;
} catch (IOException e) {
resultMessage.setText(e.getMessage());
return;
}
stringBuilder.append(string).append("\n");
}
try {
is.close();
} catch (IOException e) {
resultMessage.setText(e.getMessage());
return;
}
// Create an instance of TextFragment and pass the text from reader object to its
// constructor as argument
TextFragment text=new TextFragment(stringBuilder.toString());
// Add a new text paragraph in paragraphs collection and pass the TextFragment
// object
page.getParagraphs().add(text);
// Save resultant PDF file
try {
document.save(pdfDocumentFileName.toString());
} catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
resultMessage.setText(R.string.success_message);
}
Convertir archivo de texto preformateado a PDF
public void convertPreFormattedTextToPdf () {
File txtDocumentFile=new File(fileStorage, "Conversion/rfc822.txt");
File pdfDocumentFileName=new File(fileStorage, "demo_txt.pdf");
Path txtDocumentFileName=Paths.get(txtDocumentFile.toString());
// Read the text file as array of string
List<String> lines;
try {
lines=Files.readAllLines(txtDocumentFileName, ENCODING);
} catch (IOException e) {
resultMessage.setText(e.getMessage());
return;
}
// Instantiate a Document object by calling its empty constructor
document=new Document();
// Add a new page in Pages collection of Document
Page page=document.getPages().add();
int count=4;
Font font=FontRepository.findFont("Droid Sans Mono");
// Set left and right margins for better presentation
page.getPageInfo().getMargin().setLeft(20);
page.getPageInfo().getMargin().setRight(10);
page.getPageInfo().getDefaultTextState().setFont(font);
page.getPageInfo().getDefaultTextState().setFontSize(12);
for (String line : lines) {
// check if line contains "form feed" character
// see https://en.wikipedia.org/wiki/Page_break
if (line.startsWith("\f")) {
page=document.getPages().add();
page.getPageInfo().getMargin().setLeft(20);
page.getPageInfo().getMargin().setRight(10);
page.getPageInfo().getDefaultTextState().setFont(font);
page.getPageInfo().getDefaultTextState().setFontSize(12);
} else {
// Create an instance of TextFragment and
// pass the line to its
// constructor as argument
TextFragment text=new TextFragment(line);
// Add a new text paragraph in paragraphs collection and pass the TextFragment
// object
page.getParagraphs().add(text);
}
}
// Save resultant PDF file
try {
document.save(pdfDocumentFileName.toString());
} catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
resultMessage.setText(R.string.success_message);
}