Free Support Forum - aspose.com

Aspose.Words for Java 表の中の表の罫線を「罫線なし」にできない

表の中に表を作成した場合、
表の罫線に「LineStyle.NONE」を指定しているのに、「罫線なし」にできませんでした。
具体的には、外側の表は「罫線なし」になりますが、内側の表は「罫線なし」になりません。

ご確認頂けますでしょうか。

Aspose.Words for Javaのバージョンは18.4
実行したソースコードは下記の通りです。

private void text() throws Exception {
    Document doc = new Document();
    Body body = doc.getFirstSection().getBody();

    // 外側の表
    Table outer = new Table(doc);
    body.appendChild(outer);

    Row outerRow = row(doc);
    outer.appendChild(outerRow);

    // 内側の表
    Table inner = new Table(doc);
    outerRow.getFirstCell().appendChild(inner);

    Row innerRow = row(doc);
    inner.appendChild(innerRow);

    doc.save("test.rtf");
}


private Row row(Document doc) throws Exception {
    Row row = new Row(doc);

    Cell cell = new Cell(doc);
    cell.getCellFormat().getBorders().setLineStyle(LineStyle.NONE);
    row.appendChild(cell);

    Paragraph paragraph = new Paragraph(doc);
    paragraph.appendChild(new Run(doc, "abc"));

    cell.appendChild(paragraph);

    return row;
}

@acro.kobayashi,

次のコードを使用して、内部テーブルに罫線を設定できます。

Document doc = new Document();
Body body = doc.getFirstSection().getBody();

// 外側の表
Table outer = new Table(doc);
body.appendChild(outer);

Row outerRow = row(doc);
outer.appendChild(outerRow);

// 内側の表
Table inner = new Table(doc);
outerRow.getFirstCell().appendChild(inner);

Row innerRow = row(doc);
inner.appendChild(innerRow);

inner.setBorders(LineStyle.SINGLE, 1, Color.BLUE);

doc.save("D:\\Temp\\awjava-18.5.docx"); 

これはあなたが探しているものではない場合は、ZIP と私たちの参照のためにここに正しい出力を示すあなたの予想される Word 文書をアップロードしてください。MS word を使用して、予想される word 文書を作成してください。次に、Aspose を使用して同じことを実現するためのコードを提供します。

私の求めていることとは、異なりました。

内側の表の罫線を「LineStyle.NONE」にしたいです。

期待値のファイルを添付します。
test.zip (7.5 KB)

rtfファイルの場合に、問題が発生します。
docxファイルの場合は、問題は発生しません。

@acro.kobayashi,

ご質問ありがとうございます。 RTFファイルのみが添付されています。 テストのためにここに以下のリソースを添付してください:

正しい出力を示すDOCXドキュメント
RTFファイルとDOCXファイルの差異を示す比較スクリーンショットを作成してください。

これらの情報をすぐに入手できるようになると、問題の詳細な調査が開始され、詳細情報が提供されます。 ご協力いただきありがとうございます。

・差異を示す比較スクリーンショット
・実際の出力結果(actual)
・期待する出力結果(expected)
の3つを添付します。

ご確認よろしくお願いいたします。

@acro.kobayashi,

私は恐れている、我々はあなたの以前の記事には、新しい添付ファイルが表示されません。必要なリソースを再度 ZIP して添付してください。また、Dropbox に ZIP ファイルをアップロードし、テストのためにここにダウンロードリンクを共有することができます.

files.zip (73.4 KB)

すみません、アップロードが漏れていました。
アップロードしました。

@acro.kobayashi,

次のコードを試してください:

Document doc = new Document("D:\\temp\\files\\test.rtf");
Table targetTable = (Table) doc.getChildNodes(com.aspose.words.NodeType.TABLE, true).get(1);
for (Row row : targetTable.getRows()) {
    row.getRowFormat().getBorders().setLineStyle(LineStyle.NONE);
}
doc.save("D:\\Temp\\files\\awjava-18.5.rtf");

上記のコードで解決できそうです。
ありがとうございました。