Создание отчетов на арабском языке с помощью DjangoPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Создание отчетов на арабском языке с помощью Django

Сообщение Anonymous »

я пытаюсь создать отчет с помощью django, но арабское слово по какой-то причине оказывается отредактированным, это пример PDF-файла
это моя функция просмотра
это функция и шаблоны отлично работают при загрузке PDF-файла, но когда дело доходит до рендеринга арабского языка, он не работает
я скачал этот арабский шрифт NotoKufiArabic-VariableFont_wght.ttf, но он по какой-то причине не работает
from django.http import HttpResponse
from django.template.loader import get_template
from xhtml2pdf import pisa
from io import BytesIO
from django.shortcuts import get_object_or_404
from ..models import Supplier, TransactionModel
from django.db.models import Sum

def generate_pdf_report(request, supplier_name):
supplier = get_object_or_404(Supplier, supplier_name=supplier_name)
transactions = TransactionModel.objects.filter(supplier_name=supplier).order_by('payment_date')

total_paid = transactions.aggregate(Sum('payment_amount'))['payment_amount__sum'] or 0
remaining_amount = supplier.total_amount - total_paid

context = {
'supplier': supplier,
'transactions': transactions,
'total_paid': total_paid,
'remaining_amount': remaining_amount,
}

template = get_template('supplier_report.html')
html = template.render(context)

result = BytesIO()
pdf = pisa.pisaDocument(BytesIO(html.encode("UTF-8")), result, encoding='UTF-8')

if not pdf.err:
response = HttpResponse(result.getvalue(), content_type='application/pdf')
response['Content-Disposition'] = f'attachment; filename="{supplier_name}_report.pdf"'
return response
return HttpResponse('Error generating PDF', status=400)

а это мой шаблон



تقرير المورد - {{ supplier.supplier_name }}

@font-face {
font-family: 'Arabic Font';
src: url('../../NotoKufiArabic-VariableFont_wght.ttf') format('truetype');
}
body {
font-family: 'ArialArabic', Arial, sans-serif;
direction: rtl;
text-align: right;
}
table {
width: 100%;
border-collapse: collapse;
}
th, td {
border: 1px solid #ddd;
padding: 8px;
text-align: right;
}
th {
background-color: #f2f2f2;
}



تقرير المورد - {{ supplier.supplier_name }}
نوع المورد: {{ supplier.get_supplier_type_display }}
طريقة الدفع: {{ supplier.get_payment_method_display }}
المبلغ الكلي: {{ supplier.total_amount }}
المبلغ المدفوع: {{ total_paid }}
المبلغ المتبقي: {{ remaining_amount }}
تاريخ الدفعة القادمة: {{ supplier.next_payment_date }}
اسم المصدر: {{ supplier.issuer_name }}
البريد الإلكتروني: {{ supplier.email }}

جدول المعاملات



رقم الدفعة
تاريخ الدفع
قيمة الدفعة



{% for transaction in transactions %}

{{ transaction.payment_num }}
{{ transaction.payment_date }}
{{ transaction.payment_amount }}

{% endfor %}



```


Подробнее здесь: https://stackoverflow.com/questions/790 ... ith-django
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Создание отчетов на арабском языке с помощью Django
    Anonymous » » в форуме Python
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Создание PDF-файла на арабском языке с использованием Django и xhtml2pdf
    Anonymous » » в форуме Python
    0 Ответы
    24 Просмотры
    Последнее сообщение Anonymous
  • Создание PDF-файла на арабском языке с использованием Django и xhtml2pdf
    Anonymous » » в форуме Python
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Когда в представлении сетки экспорта есть данные на арабском языке в формате pdf с использованием JQUERY, он загружен, н
    Anonymous » » в форуме Jquery
    0 Ответы
    36 Просмотры
    Последнее сообщение Anonymous
  • Itext Html в PDF Текст на арабском языке не работает
    Anonymous » » в форуме C#
    0 Ответы
    32 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»