Add support for sprmPJc paragraph SPRM, including support for logical justification. See Bug49820.doc (header 8 and header 9) for example.
Created attachment 27166 [details] pap_type.xml patch Update pap_type.xml with sorting from specification, optional descriptions and fBiDi field definition.
Created attachment 27167 [details] scratchpad patch
Applied in r1137143 Thanks, Yegor
Created attachment 27174 [details] test case test case
Yegor, One change to ParagraphSprmUncompressor.java lost Index: ParagraphSprmUncompressor.java =================================================================== --- ParagraphSprmUncompressor.java (revision 1137143) +++ ParagraphSprmUncompressor.java (working copy) @@ -346,7 +346,8 @@ } break; case 0x41: - // sprmPFBiDi + // sprmPFBiDi + newPAP.setFBiDi((byte) sprm.getOperand()); break; case 0x43: It is required for correct processing of logical left-right justification.
Should be fixed in r1137538 The missing line wasn't in the patch. Below are the changes for ParagraphSprmUncompressor from the scratchpad patch: --- src/org/apache/poi/hwpf/sprm/ParagraphSprmUncompressor.java (revision 1135282) +++ src/org/apache/poi/hwpf/sprm/ParagraphSprmUncompressor.java (working copy) @@ -346,8 +346,7 @@ } break; case 0x41: - - // undocumented + // sprmPFBiDi break; case 0x43: @@ -387,7 +386,8 @@ newPAP.setFTtpEmbedded((byte)sprm.getOperand()); break; case 0x61: - // Logicial justification of the paragraph, eg left, centre, right + // sprmPJc + newPAP.setJustificationLogical((byte) sprm.getOperand()); break; default: break; Regards, Yegor (In reply to comment #5) > Yegor, > > One change to ParagraphSprmUncompressor.java lost > > Index: ParagraphSprmUncompressor.java > =================================================================== > --- ParagraphSprmUncompressor.java (revision 1137143) > +++ ParagraphSprmUncompressor.java (working copy) > @@ -346,7 +346,8 @@ > } > break; > case 0x41: > - // sprmPFBiDi > + // sprmPFBiDi > + newPAP.setFBiDi((byte) sprm.getOperand()); > break; > case 0x43: > > It is required for correct processing of logical left-right justification.