Untitled

 avatar
unknown
plain_text
a month ago
7.9 kB
3
Indexable
from reportlab.lib.pagesizes import landscape
from reportlab.lib.pagesizes import inch
from reportlab.lib import colors
from reportlab.pdfgen import canvas
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.platypus import Paragraph, Frame


# Dictionary of questions and answers under "Animaux" category
qa_dict = {
    "Animaux": [
        {
            "question": "Cet oiseau, souvent associé à la paix, est également connu pour son rôle dans des cérémonies symboliques et religieuses. Quel est-il ?",
            "answer": "La colombe"
        },
        {
            "question": "Cet animal, connu comme le plus rapide sur terre, peut atteindre des vitesses de 112 km/h lors d'une courte course. Qui est-il ?",
            "answer": "Le guépard"
        },
        {
            "question": "Ce mammifère marin, connu pour son intelligence, communique à l'aide de clics et de sifflements. Quel est-il ?",
            "answer": "Le dauphin"
        },
        {
            "question": "Cet insecte, souvent considéré comme un pollinisateur essentiel, produit du miel. Qui est-il ?",
            "answer": "L'abeille"
        },
        {
            "question": "Ce grand félin rayé est l'un des prédateurs les plus puissants de la jungle asiatique. Qui est-il ?",
            "answer": "Le tigre"
        },
        {
            "question": "Ce reptile, connu pour changer de couleur pour se camoufler, est un maître du mimétisme. Qui est-il ?",
            "answer": "Le caméléon"
        },
        {
            "question": "Ce mammifère, le plus grand au monde, vit dans les océans et se nourrit principalement de krill. Qui est-il ?",
            "answer": "La baleine bleue"
        },
        {
            "question": "Ce primate, très proche de l'humain, est connu pour son intelligence et sa capacité à utiliser des outils. Qui est-il ?",
            "answer": "Le chimpanzé"
        },
        {
            "question": "Ce petit animal à piquants se roule en boule lorsqu'il se sent menacé. Qui est-il ?",
            "answer": "Le hérisson"
        },
        {
            "question": "Ce chien, souvent utilisé comme guide pour les personnes malvoyantes, est apprécié pour son intelligence et sa gentillesse. Quelle est sa race ?",
            "answer": "Le labrador retriever"
        },
        {
            "question": "Cet oiseau de nuit est connu pour son cri caractéristique et sa capacité à voir dans l'obscurité. Qui est-il ?",
            "answer": "La chouette"
        },
        {
            "question": "Ce poisson, célèbre pour son apparence colorée, vit dans les récifs coralliens tropicaux. Qui est-il ?",
            "answer": "Le poisson-clown"
        },
        {
            "question": "Ce marsupial australien est connu pour sa poche et son habitude de sauter. Qui est-il ?",
            "answer": "Le kangourou"
        },
        {
            "question": "Ce reptile, souvent associé aux sables du désert, peut survivre à des températures extrêmes. Qui est-il ?",
            "answer": "Le lézard"
        },
        {
            "question": "Ce gros mammifère africain est connu pour ses grandes oreilles et sa trompe. Qui est-il ?",
            "answer": "L'éléphant"
        },
        {
            "question": "Ce petit rongeur à longues oreilles est souvent associé à Pâques. Qui est-il ?",
            "answer": "Le lapin"
        },
        {
            "question": "Ce prédateur marin à dents acérées est l'un des animaux les plus redoutés de l'océan. Qui est-il ?",
            "answer": "Le requin"
        },
        {
            "question": "Ce félin domestique est connu pour son indépendance et son ronronnement apaisant. Qui est-il ?",
            "answer": "Le chat"
        },
        {
            "question": "Ce grand herbivore africain est reconnaissable à son long cou. Qui est-il ?",
            "answer": "La girafe"
        },
        {
            "question": "Cet oiseau noir est souvent associé à des contes mystérieux et porte parfois le nom de 'corbeau'. Qui est-il ?",
            "answer": "Le corbeau"
        },
        {
            "question": "Ce mammifère nocturne, capable de voler, est parfois surnommé 'renard volant'. Qui est-il ?",
            "answer": "La chauve-souris"
        },
        {
            "question": "Ce prédateur arctique à fourrure blanche est un excellent nageur. Qui est-il ?",
            "answer": "L'ours polaire"
        },
        {
            "question": "Ce serpent, connu pour ses crochets venimeux, est souvent redouté dans les régions tropicales. Qui est-il ?",
            "answer": "Le cobra"
        },
        {
            "question": "Cet insecte, connu pour ses ailes colorées, commence sa vie sous forme de chenille. Qui est-il ?",
            "answer": "Le papillon"
        },
        {
            "question": "Ce grand singe, connu pour sa force et sa taille, vit dans les forêts tropicales d'Afrique. Qui est-il ?",
            "answer": "Le gorille"
        },
        {
            "question": "Cet oiseau, souvent associé aux climats froids, est connu pour sa démarche maladroite sur la glace. Qui est-il ?",
            "answer": "Le manchot"
        },
        {
            "question": "Ce félin majestueux à crinière vit dans les savanes d'Afrique. Qui est-il ?",
            "answer": "Le lion"
        },
        {
            "question": "Cet animal marin à carapace est connu pour son incroyable longévité. Qui est-il ?",
            "answer": "La tortue"
        },
        {
            "question": "Ce petit mammifère aux griffes acérées est un fouisseur efficace dans les jardins. Qui est-il ?",
            "answer": "La taupe"
        },
        {
            "question": "Cet oiseau coureur, incapable de voler, est le plus grand et le plus rapide au monde. Qui est-il ?",
            "answer": "L'autruche"
        }
    ]
}

# PDF output file
pdf_filename = "index_cards_animaux.pdf"

# Card size (5x3 inches, landscape orientation)
card_width, card_height = landscape((5 * inch, 3 * inch))

# Create PDF
c = canvas.Canvas(pdf_filename, pagesize=(card_width, card_height))


# Function to draw a single index card with a question
def draw_index_card(category, question, answer):
    styles = getSampleStyleSheet()
    centered_style = ParagraphStyle(name='Centered', parent=styles['BodyText'], alignment=1)
    category_style = ParagraphStyle(name='Category', parent=styles['Title'], alignment=1)

    # Draw the category name at the top
    category_para = Paragraph(category, category_style)
    category_frame = Frame(10, card_height - 40, card_width - 20, 20, showBoundary=0)
    category_frame.addFromList([category_para], c)

    # Create a frame for wrapping text
    frame = Frame(10, card_height - 120, card_width - 20, 90, showBoundary=0)

    # Question paragraph
    question_para = Paragraph("Q: " + question, centered_style)

    # Answer paragraph
    answer_para = Paragraph("A: " + answer, centered_style)

    # Draw the question and answer inside the frame
    frame.addFromList([question_para, answer_para], c)

    # Add a line at the bottom for decoration (optional)
    c.setStrokeColor(colors.black)
    c.setLineWidth(0.5)
    c.line(10, 30, card_width - 10, 30)


# Create a new page for each question-answer pair
for category, items in qa_dict.items():
    for item in items:
        draw_index_card(category, item["question"], item["answer"])
        c.showPage()  # Move to the next page (next card)

# Save the PDF
c.save()

print(f"PDF generated: {pdf_filename}")
Leave a Comment