0

droidTextライブラリを使用して PDF を作成しようとしています。ページの中央にテキスト コンテンツを配置したいのですが、左揃えにします。ParagraphクラスとsetAlignment()メソッドではできませんでした。だから私はTextFieldクラスを使うことにしました。以下は私が使用したコードです、

Document document = new Document(PageSize.A4);

try {

    PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(android.os.Environment.getExternalStorageDirectory() + java.io.File.separator + "TextFields.pdf"));

    document.open();

    TextField tf = new TextField(writer, new Rectangle(100, 300, 200, 350), "Content");
    tf.setText("This is the content of text field");
    tf.setAlignment(Element.ALIGN_CENTER);
    tf.setOptions(TextField.MULTILINE | TextField.REQUIRED);

    PdfFormField field = tf.getTextField();
    writer.addAnnotation(field);

} catch (DocumentException de) {
    System.err.println(de.getMessage());
} catch (IOException ioe) {
    System.err.println(ioe.getMessage());
}

document.close();

コードは完璧に機能しますが、取得している出力 PDF ファイルにはこの TextField があり、TextField をクリックすると編集可能で、フォントの外観も変更できます。それを最終的なPDFに入れたくありません。その属性を削除するにはどうすればよいですか? それが不可能な場合、Android の droidText ライブラリを使用して PDF ファイルにテキストを配置する他の方法はありますか?

4

1 に答える 1

0
  1. まったくサポートされていないソフトウェア ライブラリを使用しています。http://lowagie.com/iText2を参照してくださいiText Software で入手可能な最新の iText バージョンの公式 Android ポートがあります。Apache Harmony は必要なく、BouncyCastle の代わりに SpongyCastle を使用して BC バージョンの競合の問題を修正します。http://lowagie.com/iText2を参照
  2. 透かしを追加したいようです。その場合、TextField は実際には必要ありません。TextField オブジェクトは、対話型フォームを作成するために使用されます (これが必要なものではないことを示します)。ページの途中にフレーズを追加する最も簡単な方法は、ColumnText.showTextAligned()を使用することです。詳細については、「iText in Action — Second Edition」の第 3 章の例を参照してください。
于 2012-09-18T09:18:29.690 に答える