Извлечение в один и тот же каталог, медиа из разных файлов .docx, конвертированных с помощью Pandoc - PullRequest
0 голосов
/ 17 марта 2020

Цель

Я конвертирую некоторые .docx в .md с помощью pando c. Эти файлы .docx имеют изображения, которые после преобразования помещались в каталог (markdown-repository / media /), и на его URL-адрес ссылались в конечном файле .md.

Таким образом, цель состоит в том, чтобы получившиеся файлы .md со ссылками, указывающими на нужные изображения, сохранялись в markdown-repository / media /. Чтобы это произошло, все изображения в markdown-repository / media / должны иметь уникальное имя.

Проблема

Для каждого преобразования изображения были разбиты последним преобразованием, потому что pandocs не отслеживает имена изображений, оно создает image1.png, image2.png, image3. png, et c ... для каждого преобразованного файла.

Мое предложение

  1. Создайте папку для хранения носителей для каждого файла, и в этой папке, содержащей носитель, будет преобразовано имя файла.
  2. Генерация случайного уникального имени для изображений.
  3. Заменить ссылки в файле .md на имена сгенерированных изображений.

Пример:

fileA.docx fileB.docx

Шаг 1

Преобразование .docx в .md:

pandoc --extract-media=/result-media/output-media-for-fileA/ -f docx -t markdown fileA.docx  -o fileA.md

pandoc --extract-media=/result-media/output-media-for-fileB/ -f docx -t markdown fileB.docx  -o fileB.md

На этом этапе у нас будет /result-media/output-media-for-fileA/ 3 изображения

image1.png
image2.png
image3.png

и в fileA.md эти 3 ссылки, указывающие на эти изображения:

![](/result-media/output-media-for-fileA/image1.png)  
![](/result-media/output-media-for-fileA/image2.png)  
![](/result-media/output-media-for-fileA/image3.png)  

Примечание: то же самое для файла B (я не буду помещать здесь, чтобы быть более простым, просто замените файл A на файл B в ссылках)

Шаг 2

Затем создайте уникальный файл имена для изображений в /result-media/output-media-for-fileA/ и /result-media/output-media-for-fileB/ и каким-то образом сохраните «журналы», чтобы мы могли затем заменить имя изображения новым именем внутри файла A.md и fileB.md

Примечание : На этом этапе у меня больше всего затруднений.

Шаг 3

Затем я могу просто переместить все изображения с уникальным именем в мою основную папку markdown-repository/media/.

Ресурсы

Эта проблема уже задавалась на форуме Pando c, но похоже, что Pando c не имеет никакой возможности справиться с этим, поэтому я считаю, что с помощью linux сценариев оболочки мы можем обернуться.

https://pandoc.org/MANUAL.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...