Android iText PDF создание

1

Я работаю с iText на андроиде, и это в основном мой сценарий:

Запуск HTTP-вызова для получения данных GET. Разбор XML для получения строки внутри него. Используйте строку для создания PDF файла.

Строка, которую я извлекаю из XML, - это закодированные pdf-данные, физически поступающие из другого PDF файла в Интернете.

Я прошел процесс декодирования, так что его расшифрованная строка... теперь мне просто нужно заставить ее писать в какой-то API, чтобы он мог правильно сохранять.

В настоящее время я работаю с iText, и когда я пытаюсь добавить Paragraph - он делает именно то, что я ожидал, и записывает строку (включая теги, такие как название и автор и т.д.),

Есть ли способ просто написать эту строку в PDF-документе и сохранить ее правильно?

(Я ранее удалил вопрос об этом, чтобы перефразировать проблему как можно лучше).

Теги:
itext

3 ответа

2

Попробуйте этот путь...

try {
        Document document = new Document();
        File root = new File(Environment.getExternalStorageDirectory(),
                "foldername");
        String sdcardhtmlpath = root.getPath().toString() + "/filename.pdf";
        PdfWriter.getInstance(document,
                new FileOutputStream(sdcardhtmlpath));
        document.open();
        Paragraph paragraph = new Paragraph("your string");//add ur string here
        paragraph.setAlignment(Element.ALIGN_LEFT);
        document.add(paragraph);
        document.close();
    } catch (Exception e) {
        Log.v("PDFcreation", e.toString());
    }
  • 1
    милая работа ....
0
try{
        File obj=new File(Environment.getExternalStorageDirectory(),"pdf");
        if(!obj.exists())
        {
            obj.mkdirs();
        }
        String name=obj.getAbsolutePath()+"/mypdf.pdf";
        FileOutputStream fop=new FileOutputStream(name);
        Document doc=new Document();

        PdfWriter.getInstance(doc, fop);
        doc.open();
        Font font=new Font(FontFamily.TIMES_ROMAN, 20, Font.STRIKETHRU, BaseColor.GREEN);
        Paragraph p=new Paragraph("sample pdf",font);
        p.setAlignment(Element.ALIGN_LEFT);

        doc.add(p); 
        doc.close();
        }
        catch (Exception e) {
            // TODO: handle exception
            e.printStackTrace();
        }
0
public void createPDF()
    {
        Document doc = new Document();


         try {
                String path = Environment.getExternalStorageDirectory().getAbsolutePath() + "//pdf";

                File dir = new File(path);
                    if(!dir.exists())
                        dir.mkdirs();

                Log.d("PDFCreator", "PDF Path: " + path);


                File file = new File(dir, "sample1.pdf");
                FileOutputStream fOut = new FileOutputStream(file);

                PdfWriter.getInstance(doc, fOut);

                //open the document
                doc.open();

                Paragraph p1 = new Paragraph("Hi! I am generating my first PDF using iText library");
                Font paraFont= new Font(Font.COURIER);
                p1.setAlignment(Paragraph.ALIGN_CENTER);
                p1.setFont(paraFont);

                 //add paragraph to document    
                 doc.add(p1);

                 Paragraph p2 = new Paragraph("This is an example of a simple paragraph");
                 Font paraFont2= new Font(Font.COURIER,14.0f,Color.GREEN);
                 p2.setAlignment(Paragraph.ALIGN_CENTER);
                 p2.setFont(paraFont2);

                 doc.add(p2);

                 ByteArrayOutputStream stream = new ByteArrayOutputStream();
                 Bitmap bitmap = BitmapFactory.decodeResource(getBaseContext().getResources(), R.drawable.android);
                 bitmap.compress(Bitmap.CompressFormat.JPEG, 100 , stream);
                 Image myImg = Image.getInstance(stream.toByteArray());
                 myImg.setAlignment(Image.MIDDLE);

                 //add image to document
                 doc.add(myImg);

                 //set footer
                 Phrase footerText = new Phrase("This is an example of a footer");
                 HeaderFooter pdfFooter = new HeaderFooter(footerText, false);
                 doc.setFooter(pdfFooter);



         } catch (DocumentException de) {
                 Log.e("PDFCreator", "DocumentException:" + de);
         } catch (IOException e) {
                 Log.e("PDFCreator", "ioException:" + e);
         } 
         finally
         {
                 doc.close();
         }

это простая программа с помощью usinf droidText libary. Попробуйте это работать.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню