es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo puedo extraer un PDF almacenado en el directorio resources.raw de mi aplicación hacia el dispositivo en uso?

Tengo un formulario en pdf almacenado en los recursos de mi aplicación de Xamarin Android.
Quiero que el usuario de la aplicación pueda extraer el formulario de los recursos y completarlo.

Encontré algunos ejemplos en Android nativo, pero no puedo adaptarlos a Xamarin.
Necesito obtener el archivo de recursos en un flujo de entrada, pero no lo logro.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Solución

    Para extraer un formulario PDF de los recursos de una aplicación de Xamarin Android y permitir al usuario de la aplicación llenarlo, puedes seguir estos pasos:

    1. Agrega el formulario PDF a la carpeta “Resources” de tu proyecto de Xamarin Android.
    2. Accede al formulario PDF como un flujo utilizando el método Application.Context.Assets.Open().

    var pdfStream = Application.Context.Assets.Open("nombreArchivo.pdf");
    
    1. Utiliza una biblioteca de PDF, como iTextSharp o XFINIUM.PDF, para cargar el formulario PDF desde el flujo.
    var pdfDocument = new Xfinium.Pdf.PdfFixedDocument(pdfStream);
    
    1. Ahora, el usuario puede llenar el formulario utilizando una biblioteca de rellenado de formularios PDF, como pdftron o Syncfusion.
    // carga el formulario llenado en un nuevo documento PDF
    var filledPdfDocument = pdftron.PDF.FDFDoc.CreateFromXFDF(xfdfData);
    
    // combina el formulario llenado con el formulario PDF original
    pdfDocument.Form.Fill(filledPdfDocument, false);
    
    1. Por último, puedes guardar el formulario PDF llenado en un archivo, o enviarlo a una impresora para imprimirlo.
    // guarda el formulario PDF llenado en un archivo
    var outputPath = Path.Combine(Android.OS.Environment.ExternalStorageDirectory.AbsolutePath, "FormularioLlenado.pdf");
    using (var outputStream = new FileStream(outputPath, FileMode.Create))
    {
        pdfDocument.Save(outputStream);
    }
    
    // imprime el formulario PDF llenado
    pdfDocument.Print();
    

    Con estos pasos, deberías ser capaz de extraer exitosamente un formulario PDF de los recursos de tu aplicación de Xamarin Android y permitir al usuario llenarlo.

Comments are closed.