public inbox archive for pandoc-discuss@googlegroups.com
 help / color / mirror / Atom feed
From: Christophe Demko <chdemko-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: pandoc-discuss <pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
Subject: Re: Inline SVG in markdown, converted to ODT
Date: Sat, 12 Aug 2023 10:59:59 -0700 (PDT)	[thread overview]
Message-ID: <fe366afd-808e-4356-a328-9892b6c8b136n@googlegroups.com> (raw)
In-Reply-To: <b23470f2-112a-43e2-bf91-b484984c580cn-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>


[-- Attachment #1.1: Type: text/plain, Size: 3091 bytes --]

It's because pandoc converts the URL of an image using HTML encoding and 
does not the reverse job while producing output.

Le samedi 12 août 2023 à 19:42:38 UTC+2, nopria a écrit :

> Yes it's an option, but I would like to understand why using plain text 
> does not work.
>
> Il giorno venerdì 11 agosto 2023 alle 12:23:32 UTC+2 Christophe Demko ha 
> scritto:
>
>> You could write a filter that convert a Inline SVG image defined by 
>> plain text into a Inline SVG image defined by BASE64
>>
>> Le jeudi 10 août 2023 à 15:39:40 UTC+2, nopria a écrit :
>>
>>> Following other tentatives 
>>> <https://github.com/jgm/pandoc/issues/4058#issuecomment-908942852> of 
>>> markdown to DOCX conversion containing external SVG, I tried to convert to 
>>> ODT a markdown containing **inline** SVG, such as the one below:
>>>
>>> # Example document
>>>
>>> This is an example of Markdown document with inline embedded SVG images.
>>>
>>> Inline SVG image defined by plain text:
>>>
>>> ![SVG Image](data:image/svg+xml;charset=utf-8,<?xml version="1.0"?><svg 
>>> xmlns="http://www.w3.org/2000/svg" width="100" height="100" 
>>> viewBox="-150 -150 300 300"><rect x="-100" y="-100" rx="8" ry="8" 
>>> width="200" height="200" style="fill:#CCCCFF;stroke:#000099"/></svg>)
>>>
>>> Inline SVG image defined by BASE64 converted text:
>>>
>>> ![SVG 
>>> Image](data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiB2aWV3Qm94PSItMTUwIC0xNTAgMzAwIDMwMCI+PHJlY3QgeD0iLTEwMCIgeT0iLTEwMCIgcng9IjgiIHJ5PSI4IiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCIgc3R5bGU9ImZpbGw6I0NDQ0NGRjtzdHJva2U6IzAwMDA5OSIvPjwvc3ZnPg==)
>>>
>>> Some math to check if it works;
>>>
>>> $$A_c = 23 r^2 - v$$
>>>
>>> using command
>>>
>>> pandoc example.md -o example.odt
>>>
>>> with Pandoc 3.1.6.1. As you may confirm yourself, the BASE64 inline SVG 
>>> is correctly converted, while the textual inline SVG is not displayed in 
>>> the resulting ODT and the following warning appears at conversion:
>>>
>>> [WARNING] Could not fetch resource data:image/svg+xml;charset=utf-8 ...
>>>
>>> Given that a BASE64 inline SVG is enough to do the job, I would prefer 
>>> to avoid the BASE64 conversion and go with the plain text inline SVG.
>>>
>>> I already tried html encoding of SVG text and uppercase "utf8" without 
>>> success.
>>>
>>> I choose ODT because it's open and because it seems to display SVG 
>>> natively without needing PNG conversion (I hope it works with more complex 
>>> SVG too), which is a great feature.
>>>
>>> Thank in advance for your time.
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups "pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/fe366afd-808e-4356-a328-9892b6c8b136n%40googlegroups.com.

[-- Attachment #1.2: Type: text/html, Size: 4904 bytes --]

  parent reply	other threads:[~2023-08-12 17:59 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-10 13:39 nopria
     [not found] ` <3ed4f0e5-ad35-4aaa-81c8-4e5766b88896n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2023-08-11 10:23   ` Christophe Demko
     [not found]     ` <181d94a6-f783-45a6-8d93-284a6674b977n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2023-08-12 17:42       ` nopria
     [not found]         ` <b23470f2-112a-43e2-bf91-b484984c580cn-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2023-08-12 17:59           ` Christophe Demko [this message]
     [not found]             ` <fe366afd-808e-4356-a328-9892b6c8b136n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2023-08-12 18:01               ` Christophe Demko
     [not found]                 ` <97837349-aaf9-419d-98ca-e793c96beef1n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2023-08-13  5:38                   ` nopria
     [not found]                     ` <571445b9-922a-4dd8-8228-d3a3ad445e55n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2023-08-13 15:45                       ` Christophe Demko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=fe366afd-808e-4356-a328-9892b6c8b136n@googlegroups.com \
    --to=chdemko-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
    --cc=pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).