0

iText 5.4.0 を使用して PDF ファイルを作成しています。PDFにカスタムプロパティをいくつか追加する必要があります。私は2つのアプローチを試しました

  1. com.itextpdf.text.DocumentクラスのaddHeaderメソッドと
  2. の setMoreInfo メソッドcom.itextpdf.text.pdf.PdfStamper

ただし、どちらもカス​​タム プロパティを情報ディクショナリに追加します。

Xmp を使用してそれらを追加し、Xml ファイルに戻す必要があります。これどうやってするの??

4

1 に答える 1

0

はい..!!..カスタムスキーマをこのように実装しました

public class CustomSchema extends XmpSchema 
{

private static final long serialVersionUID = -4551741356974797330L;

public static final String LABELID = "ls:LabelId";

public CustomSchema() {
    super("cusprop");
}

public void addLabelId(String labelId) {
    XmpArray array = new XmpArray(XmpArray.UNORDERED);
    array.add(labelId);
    setProperty(LABELID, array);
}
public void addLabelArr(String tagId, String[] tagValue) {
    XmpArray array = new XmpArray(XmpArray.ORDERED);
    for (int i = 0; i < tagValue.length; i++) {
        array.add(tagValue[i]);
    }
    setProperty(tagId.toString().replace(" ", "").trim(), array);
}
}

以下のような結果のXML

     <rdf:Description rdf:about="" xmlns:ls="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
     <TagId-20>
        <rdf:Seq>
            <rdf:li>arr0</rdf:li>
             <rdf:li>arr1</rdf:li>
        </rdf:Seq>
     </TagId-20>
     </rdf:Description>

この構造もカスタムできるかどうか知りたいです。例えば、

    -<TagId-20>
            -<customTag>
                    <ls:userId>USERNAME</ ls:userId >
                    <ls:WONum>12-110992</ WONum >
            </customTag >
    </TagId-20>

上記の構造を取得するには、何をする必要がありますか?? 利用可能な例はありますか?

于 2013-04-25T06:19:47.457 に答える