private void render(Image node, NodeFormatterContext context, MarkdownWriter markdown) { markdown.lineIf(formatterOptions.keepImageLinksAtStart); if (!formatterOptions.optimizedInlineRendering || context.isTransformingText()) { markdown.append(node.getTextOpeningMarker()); if (context.isTransformingText()) { markdown.appendTranslating(node.getText()); } else { context.renderChildren(node); } markdown.append(node.getTextClosingMarker()); markdown.append(node.getLinkOpeningMarker()); markdown.append(node.getUrlOpeningMarker()); markdown.appendNonTranslating(node.getPageRef()); markdown.append(node.getUrlClosingMarker()); if (node.getTitleOpeningMarker().isNotNull()) { markdown.append(' '); markdown.append(node.getTitleOpeningMarker()); if (node.getTitle().isNotNull()) markdown.appendTranslating(node.getTitle()); markdown.append(node.getTitleClosingMarker()); } markdown.append(node.getLinkClosingMarker()); } else { markdown.append(node.getChars()); } }
@SuppressWarnings("MethodMayBeStatic") void render(Image node, NodeRendererContext context, HtmlWriter html) { if (!(context.isDoNotRenderLinks() || isSuppressedLinkPrefix(node.getUrl(), context))) { String altText = new TextCollectingVisitor().collectAndGetText(node); ResolvedLink resolvedLink = context.resolveLink(LinkType.IMAGE, node.getUrl().unescape(), null, null); String url = resolvedLink.getUrl(); if (!node.getUrlContent().isEmpty()) { // reverse URL encoding of =, & String content = Escaping.percentEncodeUrl(node.getUrlContent()).replace("+", "%2B").replace("%3D", "=").replace("%26", "&"); url += content; } html.attr("src", url); html.attr("alt", altText); // we have a title part, use that if (node.getTitle().isNotNull()) { resolvedLink.getNonNullAttributes().replaceValue(Attribute.TITLE_ATTR, node.getTitle().unescape()); } else { resolvedLink.getNonNullAttributes().remove(Attribute.TITLE_ATTR); } html.attr(resolvedLink.getAttributes()); html.srcPos(node.getChars()).withAttr(resolvedLink).tagVoid("img"); } }
private void render(Image node, NodeFormatterContext context, MarkdownWriter markdown) { markdown.lineIf(formatterOptions.keepImageLinksAtStart); if (!formatterOptions.optimizedInlineRendering || context.isTransformingText()) { markdown.append(node.getTextOpeningMarker()); if (context.isTransformingText()) { markdown.appendTranslating(node.getText()); } else { context.renderChildren(node); } markdown.append(node.getTextClosingMarker()); markdown.append(node.getLinkOpeningMarker()); markdown.append(node.getUrlOpeningMarker()); markdown.appendNonTranslating(node.getPageRef()); markdown.append(node.getUrlClosingMarker()); if (node.getTitleOpeningMarker().isNotNull()) { markdown.append(' '); markdown.append(node.getTitleOpeningMarker()); if (node.getTitle().isNotNull()) markdown.appendTranslating(node.getTitle()); markdown.append(node.getTitleClosingMarker()); } markdown.append(node.getLinkClosingMarker()); } else { markdown.append(node.getChars()); } }
@SuppressWarnings("MethodMayBeStatic") void render(Image node, NodeRendererContext context, HtmlWriter html) { if (!(context.isDoNotRenderLinks() || isSuppressedLinkPrefix(node.getUrl(), context))) { String altText = new TextCollectingVisitor().collectAndGetText(node); ResolvedLink resolvedLink = context.resolveLink(LinkType.IMAGE, node.getUrl().unescape(), null, null); String url = resolvedLink.getUrl(); if (!node.getUrlContent().isEmpty()) { // reverse URL encoding of =, & String content = Escaping.percentEncodeUrl(node.getUrlContent()).replace("+", "%2B").replace("%3D", "=").replace("%26", "&"); url += content; } html.attr("src", url); html.attr("alt", altText); // we have a title part, use that if (node.getTitle().isNotNull()) { resolvedLink.getNonNullAttributes().replaceValue(Attribute.TITLE_ATTR, node.getTitle().unescape()); } else { resolvedLink.getNonNullAttributes().remove(Attribute.TITLE_ATTR); } html.attr(resolvedLink.getAttributes()); html.srcPos(node.getChars()).withAttr(resolvedLink).tagVoid("img"); } }