文本区域中的连续文本会导致PDF溢出文本

时间:2019-05-31 15:22:28

标签: java html css pdf textarea

我看到有很多与同一场景有关的问题,这个问题相差无几,无法找出解决方案。我在牢房的桌子上有一个。当我给连续文本如“

.generaltable {
	background-color : #5C7FBF;
	border:thin;
	width : 100%;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	}
  
  
	.column {
	background-color : #DEEDFF;
	font-weight : bold;
	padding-bottom : 1px;
	padding-left : 1px;
	padding-right : 1px;
	padding-top : 1px;
	text-align : center;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	border: none;
	}
  
 .edit {
	background-color : #DEEDFF;
	border-width: 1px;
	border-style:solid;
	border-color:#DEEDFF;
	border: 1px solid #DEEDFF;
	color: black;
	text-align : left;
	font-weight : bold;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	word-break: break-all;
	}
  
  .iedit2 {
	background-color : white;
	text-align: left;
	color: black;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
	border-top: 1px solid #999999;
	border-right: 1px solid #333333;
	border-bottom: 1px solid #333333;
	border-left: 1px solid #999999;
	word-break: break-all;
	}
  
  
  
  
  
<table border="1" width="100%" align="center" cellpadding="2" cellspacing="1"  class="generaltable">  <tbody><tr id="Row35494#0">
    <th id="04" class="column" width="39%"><a href="javascript:alert('Self Explanatory')">Brief                 description of the issue *</a></th>
        <td id="1 04" width="39%" class="edit">
            <textarea id="269494_0" class="iedit2" cols="35" rows="5" wrap="virtual" maxlength="4000"                   name="fiy">ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss
             </textarea>
        </td>
      </tr>
  </tbody>
 </table>

请找到它的图片以得到清晰的概述This is the entry

点击“ Go”后,就会用JAVA代码在此处下载整个文档,这是不起作用的代码

This is the pdf

3 个答案:

答案 0 :(得分:4)

pdfHTML允许您将与表单相关的元素(输入,文本区域)直接转换为纯PDF内容,或者使用AcroForm创建PDF(以便使这些元素可编辑,因为它们应该是HTML格式的)

要启用该行为,应在传递给setCreateAcroForm(true)的{​​{1}}中使用ConverterProperties

如果您不想让这些字段可编辑,则可以在将HTML转换为PDF之后将这些字段展平。

话虽如此,您描述的行为看起来像是iText中的错误。但是创建AcroForm和展平的模式以略有不同的方式实现,并且看起来textarea将按照您的情况进行转换。您尚未附上整个示例,因此很难确定,但是对于附上的小片段,一切都很好。这是您可以使用的代码:

HtmlConverter

答案 1 :(得分:1)

您可以检测文本何时在输入框中到达新行,并插入'\ n'强制换行,以便在下载图像时,应该对换行进行硬编码。希望这会有所帮助!

答案 2 :(得分:0)

我想在您的内容元素(即.edit.iedit2)中添加以下CSS应该可以解决问题。

overflow-wrap: break-word;
word-wrap: break-word;
word-break: break-word;

让我知道是否可行:)

同样,为了使代码看起来更好一点,您可以添加以下;)

-ms-hyphens: auto;
-moz-hyphens: auto;
-webkit-hyphens: auto;
hyphens: auto;

这些将在断词处添加“-”:)