我正在开发一个使用Java嵌入PDF文本文件的项目。到目前为止,我在开发工具Eclipse上开发和测试,程序运行非常顺利,结果如预期。
我尝试在unix上运行程序,运行程序,按预期创建目录和文件。我通过使用winSCP将PDF从unix传输到窗口来验证结果,我从传输设置选择中尝试“二进制”和“文本”,它出现了两个不同的问题。
首先,我从转移设置选项中单击“文本”,winSCP完成转移。我打开PDF并发生错误,“图像数据不足”。我检查了嵌入的文本文件,它逐行显示。
然后,我选择“Binary”并将winSCP完全转移到窗口。我打开PDF,它显示完美。但是,嵌入文本文件中的句子汇集在一行中。
我设置错误或使用错误的转移方法吗?或者我看过的东西?
非常感谢你
答案 0 :(得分:0)
你可以选择ftp,sftp,在windows和unix机器之间设置nfs共享,或者将你的pdf文件放在tar / zip / tar.gz文件中以转移到winscp
,而不是使用\n
。 windows(二进制模式)以避免任何传输问题。
然后,我选择“Binary”并将winSCP完全转移到窗口。我打开PDF,它显示完美。但是,在句中 嵌入的文本文件集中在一行。
关于这一点,你现在认为unix EOL符号与windows \r\n
vs carriage return
中的符号不同吗?这可能解释了为什么你的文本集中在一起。您可能必须更改Java代码以生成窗口样式unix2dos/tr
,或使用foreach
工具。
最后但同样重要的是,您还可以尝试直接在Linux上打开您的pdf以检查结果。