импортировать изображения в anki автоматически на лицевую и тыльную сторону карт

1925
acman123

У меня есть несколько изображений с таким именем в папке:

Image_00036.jpg
Image_00037.jpg
Image_00038.jpg
Image_00039.jpg

Я хочу создать несколько карт. Каждая карточка будет иметь четные изображения на лицевой стороне и нечетные изображения на ее оборотной стороне. Как я могу сделать это автоматически, без необходимости вручную перетаскивать каждое изображение?

0

1 ответ на вопрос

0
Ingaz

Шаг 1. Подготовьте метаданные

Я полагаю, что вы уже знаете:

  1. Как создать новую колоду (не обязательно, но имеет смысл)
  2. Как определить новый тип заметки
  3. Как определить карты для типа заметки
  4. Импорт из текстового файла с разделителями

Если нет - проверьте документацию, это не сложно.

Вам нужно создать тип заметки как минимум с 3 полями: Id, FrontImage, BackImage

Шаг 2. Создать текстовый файл с разделителями

Я предполагаю, что ваши файлы изображений пронумерованы от 0 до N с предшествующими нулями. Например, если N = 100, тогда имена изображений: image00000.jpg - image00100.jpg.

Цель: создать текстовый файл с разделителями, например:

Card_00000;<img src="Image_00000.jpg"/>;<img src="Image_00001.jpg"/> Card_00001;<img src="Image_00002.jpg"/>;<img src="Image_00003.jpg"/> Card_00002;<img src="Image_00004.jpg"/>;<img src="Image_00005.jpg"/> Card_00003;<img src="Image_00006.jpg"/>;<img src="Image_00007.jpg"/> Card_00004;<img src="Image_00008.jpg"/>;<img src="Image_00009.jpg"/> Card_00005;<img src="Image_00010.jpg"/>;<img src="Image_00011.jpg"/> Card_00006;<img src="Image_00012.jpg"/>;<img src="Image_00013.jpg"/> Card_00007;<img src="Image_00014.jpg"/>;<img src="Image_00015.jpg"/> Card_00008;<img src="Image_00016.jpg"/>;<img src="Image_00017.jpg"/> Card_00009;<img src="Image_00018.jpg"/>;<img src="Image_00019.jpg"/> Card_00010;<img src="Image_00020.jpg"/>;<img src="Image_00021.jpg"/> Card_00011;<img src="Image_00022.jpg"/>;<img src="Image_00023.jpg"/> 

Рецепт 1. Используйте язык сценариев

В генерации питона могут быть:

print("\n".join(['Card_%05d;<img src="Image_%05d.jpg"/>;<img src="Image_%05d.jpg"/>' % (image_number,image_number*2, image_number*2 +1 ) for image_number in range(0, int(100/2))])) 

Рецепт 2. Используйте электронную таблицу

Если вам удобнее использовать офисные инструменты, вы можете использовать электронную таблицу.

Вам необходимо создать: автоинкрементное поле и 2 вычисляемых поля.

Пример: https://docs.google.com/spreadsheets/d/1W1DQ2ZSm4XuYNeKlkybbTeXh7RGqkk8H-7CgCaBVeI4/pubhtml

Формула для фронта:

= Concatenate("<src img=""Image", Text(A2*2-1,"00000"),".jpg"" />") 

Шаг 3. Сохранение в файл, импорт, копирование изображений в папку мультимедиа, наслаждайтесь

Точно так.

Удачи!