在Java中打印Docx并仅从PDF打印前3页

时间:2019-05-28 04:11:01

标签: java

我有一个包含各种类型文件的目录。我想使用Java程序打印所有PDF或docx文件(视情况而定)。我不想打印整个文档。而是我只想打印前3页。我面临两个问题:

i。它适用于txt和pdf。但是它只打印PDF的前两页。

attributes.add(new PageRanges(3)); //更改参数无效 attribute.add(Sides.DUPLEX); 似乎不起作用。

ii。对于docx文件不起作用。打印输出中包含奇怪的字符。

如果是docx类型的文件,请尝试以下风味- 风味= DocFlavor.SERVICE_FORMATTED.PRINTABLE; 它会引发此错误:

java.lang.IllegalArgumentException:数据不是声明的类型

这是我的部分起作用的代码(适用于txt和pdf):

公共类PrintUtilityGeneric {

ThreeOrgsOrdererGenesis:
        <<: *ChannelDefaults
        Capabilities:
            <<: *ChannelCapabilities
        Orderer:
            <<: *OrdererDefaults
            Organizations:
                    - *OrdererOrg
            Capabilities:
                <<: *OrdererCapabilities
        Consortiums:
            SampleConsortium:
                Organizations:
                    - *Org1
                    - *Org2
                    - *Org3

    ThreeOrgsChannel:
        Consortium: SampleConsortium
        Application:
            <<: *ApplicationDefaults
            Organizations:
                - *Org1
                - *Org2
                - *Org3
            Capabilities:
                <<: *ApplicationCapabilities

}

0 个答案:

没有答案