尝试使用PDFBOX替换pdf中的字符串时,不显示文本

时间:2013-07-29 12:54:27

标签: pdfbox

我尝试使用Apache PDFBOX在现有pdf中用“XXX”替换字符串。当我直接使用org.apache.pdfbox.examples.pdmodel中存在的ReplaceString.java时,我无法替换它

所以我们修改了以下部分。

。 。

      else if( op.getOperation().equals( "TJ" ) )
                    {
                        COSArray previous = (COSArray)tokens.get( j-1 );
                        for( int k=0; k<previous.size(); k++ )
                        {
                            Object arrElement = previous.getObject( k );
                            if( arrElement instanceof COSString )
                            {
                                COSString cosString = (COSString)arrElement;
                                String string = cosString.getString();
                                string = string.replaceFirst( strToFind, message );
                                cosString.reset();
                                cosString.append( string.getBytes() );
                            }
                        }
                    }

。 。

修改为:

        else if( op.getOperation().equals( "TJ" ) )
                    {
                        COSArray previous = (COSArray)tokens.get( j-1 );
                        for( int k=0; k<previous.size(); k++ )
                        {
                            Object arrElement = previous.getObject( k );
                            if( arrElement instanceof COSString )
                            {
                                COSString cosString = (COSString)arrElement;
                                byte[] cosBytes = cosString.getBytes();
                                String s = new String(cosBytes, "Cp1047");
                                if(s.contains(strToFind))
                                 {
                                   String newString = s.replaceAll(strToFind, message);
                                   cosString.reset();
                                   cosString.append( newString.getBytes("Cp1047") );
                                 }
                            }
                        }
                    }

这用另一个替换了字符串。但是在PDF的某些位置,字符串在给定数字时被替换,但在用字母替换时显示为空白。

请帮忙。

0 个答案:

没有答案