Google Android - это несложно

Добро пожаловать на форум сайта startandroid.ru
Текущее время: 21 окт 2018, 06:41

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: работа с pdf
СообщениеДобавлено: 13 янв 2015, 14:46 

Зарегистрирован: 13 апр 2014, 11:38
Сообщений: 40
Благодарил (а): 3 раз.
Поблагодарили: 3 раз.
здравствуйте!
Вопрос такой
каким образом научить itext ладить с русскими буквами
перепробовал все способы, что нашел в инете ,в том числе и через настройку "Cp1251"
англ буквы без проблем, но вот с русскими беда

или подскажите другую библиотеку для работы с pdf

сейчас
Код: [ Загрузить ] [ Скрыть ]
  1.                 BaseFont baseFNT=BaseFont.createFont(BaseFont.COURIER, "Cp1251", BaseFont.NOT_EMBEDDED); 
  2.             Font font=new Font(baseFNT,30,Font.NORMAL); 
  3.             docPDF.add(new Paragraph("ТЕКСТ", font)); 


также пробовал в /assets запихнуть шрифт от винды times.ttf
Код: [ Загрузить ] [ Скрыть ]
  1. BaseFont baseFNT=BaseFont.createFont("TIMES.TTF", "Cp1251", BaseFont.NOT_EMBEDDED); 

строка ошибки не выдает - но текст все равно отсутствует


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: работа с pdf
СообщениеДобавлено: 13 янв 2015, 18:27 

Зарегистрирован: 13 апр 2014, 11:38
Сообщений: 40
Благодарил (а): 3 раз.
Поблагодарили: 3 раз.
ладно кому пригодиться для работы с pdf и itext

кидаем файл с шрифтом в assets
потом делаем следующее
Код: [ Загрузить ] [ Скрыть ]
  1. BaseFont baseFNT=BaseFont.createFont("/assets/TIMES.TTF", BaseFont.IDENTITY_H, BaseFont.EMBEDDED); 
  2.             Font font=new Font(baseFNT,30,Font.NORMAL); 
  3.             docPDF.add(new Paragraph("и что угодно можно тут писать йоптыть",font)); 


и работает все
в pdf отражаются русские буквы


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: работа с pdf
СообщениеДобавлено: 22 янв 2015, 17:54 

Зарегистрирован: 20 янв 2015, 20:06
Сообщений: 22
Благодарил (а): 6 раз.
Поблагодарили: 0 раз.
package com.anzik.z;

import android.content.Intent;
import android.os.Bundle;
import android.os.Environment;
import android.support.v7.app.ActionBarActivity;
import android.view.Menu;
import android.view.MenuItem;

import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;


public class PdfActivity extends ActionBarActivity {

public int getPreviousPageImageResource() { return R.drawable.left_arrow; }


public int getNextPageImageResource() { return R.drawable.right_arrow; }


public int getZoomInImageResource() { return R.drawable.zoom_in; }


public int getZoomOutImageResource() { return R.drawable.zoom_out; }


public int getPdfPasswordLayoutResource() { return R.layout.pdf_file_password; }


public int getPdfPageNumberResource() { return R.layout.dialog_pagenumber; }


public int getPdfPasswordEditField() { return R.id.etPassword; }


public int getPdfPasswordOkButton() { return R.id.btOK; }


public int getPdfPasswordExitButton() { return R.id.btExit; }


public int getPdfPageNumberEditField() { return R.id.pagenum_edit; }

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);


File sdCard = Environment.getExternalStorageDirectory();


File dir = new File (sdCard.getAbsolutePath() + "/pdf");


dir.mkdirs();


File f = new File(dir,"book.pdf");


if (!f.exists()) try {


InputStream is = getAssets().open("book.pdf");


int size = is.available();


byte[] buffer = new byte[size];


is.read(buffer);


is.close();


FileOutputStream fos = new FileOutputStream(f);


fos.write(buffer);


fos.close();


} catch (Exception e) { throw new RuntimeException(e); }


String path = f.getPath();


Intent intent = new Intent(this, PdfActivity.class);


intent.putExtra(PdfActivity.EXTRA_PDFFILENAME, path);


startActivity(intent);

}
Не могу указать путь к файлу.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: работа с pdf
СообщениеДобавлено: 11 ноя 2016, 09:25 

Зарегистрирован: 11 ноя 2016, 09:20
Сообщений: 1
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Rustam писал(а):
ладно кому пригодиться для работы с pdf и itext

кидаем файл с шрифтом в assets
потом делаем следующее
Код: [ Загрузить ] [ Скрыть ]
  1. BaseFont baseFNT=BaseFont.createFont("/assets/TIMES.TTF", BaseFont.IDENTITY_H, BaseFont.EMBEDDED); 
  2.             Font font=new Font(baseFNT,30,Font.NORMAL); 
  3.             docPDF.add(new Paragraph("и что угодно можно тут писать йоптыть",font)); 


и работает все
в pdf отражаются русские буквы



Мне почему-то не помогает. Производится парсинг html.... Русских букв в результирующем pdf всё равно не видит. Установка font-family в style для тега body не помогает:
Код: [ Загрузить ] [ Скрыть ]
  1. Paragraph p = new Paragraph(); 
  2.                 p.setFont(font); 
  3. XMLWorkerHelper xwh = XMLWorkerHelper.getInstance(); 
  4.                 ElementList htmlList = xwh.parseToElementList(htmlDocument.toString(), null); 
  5.                 for (Element element : htmlList) { 
  6.                     p.add(element); 
  7.                 } 
  8. document.add(p); 


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 3 часа


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB