Paragaphs之间的本机HTMLView空间

时间:2017-10-07 02:10:08

标签: react-native react-native-android

我目前使用(尝试过其他一些)项目HTMLView(https://github.com/jsdf/react-native-htmlview),但它增加了每个元素之间的空间。

我基本上需要从字符串中呈现两种类型的标记P和H3。我也试着用我的风格将边距和填充设置为0 - 但它没有任何效果。

任何代码建议?或者是一个简单的函数来运行item.teaser并将每个P和H3替换为具有特定类的TEXT元素?

      <HTMLView addLineBreaks={false} value={item.teaser} stylesheet={htmlStyles.teaser} />

space between paragraph and next elements

3 个答案:

答案 0 :(得分:1)

此方法Sub PDFtesti() Dim timestamp As Date Dim PR As PrintRanges Dim lngLast As Long Dim lngFirst As Long Dim savePath As String Dim PrintPDF As Integer Dim name As String timestamp = Now() With ActivePresentation name = .Slides(2).Shapes("TextBox1").OLEFormat.Object.Text savePath = "C:\Powerpoint\" & Format(timestamp, "yyyymmdd-hhnn") & " - " & name & ".pdf" lngLast = .Slides.Count Set PR = .PrintOptions.Ranges PR.ClearAll PR.Add lngLast - 1, lngLast .Slides(2).MoveTo lngLast - 1 .ExportAsFixedFormat _ Path:=savePath, _ FixedFormatType:=ppFixedFormatTypePDF, _ PrintRange:=PR(1), _ Intent:=ppFixedFormatIntentScreen, _ FrameSlides:=msoTrue, _ RangeType:=ppPrintSlideRange .Slides(lngLast - 1).MoveTo 2 End With End Sub 有效,然后使用正则表达式替换数据

示例:

const regex = /<br|\n|\r\s*\\?>/g;

样式

<HTMLView
    value={symptom.text.trim().replace(regex, '')}
    stylesheet={webViewStyle}
 />

答案 1 :(得分:0)

您可以尝试以下方法:

value={"<div>"+item.teaser+"</div>"}

如此处所示: https://github.com/jsdf/react-native-htmlview/issues/202

干杯:-)

答案 2 :(得分:0)

我认为主要问题将是您在HTMLView中传递给值参数的数据。中间可能有多个标签,并且这些标签由父标签包装。该库需要有效的HTML,这意味着所有内容都应包装在单个顶级标签中。因此,请使用主标签/父标签包装值。

示例:value={"<div>"+item+"</div>"}

这是我发现的另一种方法。

使用存储正则表达式const regex = /<br|\n|\r\s*\\?>/g;的变量

然后在替换功能中使用此正则表达式

<HTMLView
  value={`<div>${symptom.text.trim().replace(regex, '')}</div>`}
  stylesheet={webViewStyle}
/>