2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Проблема с кириллицей LateX
Сообщение06.12.2024, 17:56 
Аватара пользователя
Есть простенький шаблон для аглийского текста.
Код:
\documentclass[11pt,a4paper,openright]{article}

\usepackage[normalem]{ulem}
\usepackage[utf8x]{inputenc}
\usepackage[english]{babel}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{indentfirst}
\usepackage{sectsty}
\usepackage{amssymb}
\usepackage{setspace}
\usepackage{latexsym}
\usepackage{booktabs}
\usepackage[font=footnotesize,labelfont=bf]{caption}
\usepackage{rotating}
\usepackage{lscape}
\usepackage{longtable}
\usepackage[dvipsnames,usenames]{color}
\usepackage{geometry}
\usepackage[square,comma,super]{natbib}
\usepackage{titlesec}
\usepackage{float} % to use [H] and put the figure exactly where you want

\usepackage[hidelinks]{hyperref}

Есть часть кириллического шаблона, который позволяет получать в англоязычном шаблоне PDF:
Код:
%\usepackage[utf8]{inputenc}
\usepackage[T1,T2A]{fontenc}
\usepackage[russian]{babel}

Без этой вставки компилятор Overleaf вообще отказывается выдавать PDF.
Если же меняю
\documentclass[11pt,a4paper,openright]{article} на \documentclass[12pt,a4paper]{report},
то ошибка указывает уже только на \usepackage[russian]{babel}.
Возможно, из-за пересечения \usepackage[english]{babel}.
Это можно исправить?
Цель, получить безошибочную компиляцию с смешанным языковым набором. (часть русскоязычных терминов должна быть на русском для дальнейщей работы "над ошибками").

 
 
 
 Re: Проблема с кириллицей LateX
Сообщение06.12.2024, 18:10 
MGM, тут ИИ поможет, проверил его советы на https://www.overleaf.com/ - компилируется и русская кодировка работает. Ваш вариант у меня также выдаёт ошибку.
o1 писал(а):
Да, подобную проблему можно решить, если скорректировать подключение babel и кодировок. Основная идея — использовать многозначное подключение babel со списком языков, например, `[english,russian]`, и при этом следить за кодировками.

Попробуйте, например, следующий вариант (для pdflatex):

Код:
\documentclass[12pt,a4paper]{report}

\usepackage[T1,T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english,russian]{babel}

\usepackage{amsmath,amssymb,latexsym}
\usepackage{graphicx}
\usepackage{indentfirst}
\usepackage{sectsty}
\usepackage{setspace}
\usepackage{booktabs}
\usepackage[font=footnotesize,labelfont=bf]{caption}
\usepackage{rotating}
\usepackage{lscape}
\usepackage{longtable}
\usepackage[dvipsnames,usenames]{color}
\usepackage{geometry}
\usepackage[square,comma,super]{natbib}
\usepackage{titlesec}
\usepackage{float}
\usepackage[hidelinks]{hyperref}



Ключевые моменты:

1. **Babel**: Используем `\usepackage[english,russian]{babel}`, чтобы в одном документе были оба языка. По умолчанию будет выбран первый, то есть английский. Русский можно включать командой `\selectlanguage{russian}` и обратно `\selectlanguage{english}`.

2. **Кодировки**: Используем `\usepackage[T1,T2A]{fontenc}` и `\usepackage[utf8]{inputenc}`, что позволит корректно работать с латиницей и кириллицей в utf-8 без расширений `utf8x`, которые иногда вызывают проблемы.

3. **Удаление дублирующих подключений**: Не нужно отдельно `\usepackage[english]{babel}`, так как уже указан список языков. Достаточно `[english,russian]`.

После этого смесь русских и английских текстов должна корректно компилироваться. Если всё же возникают проблемы, стоит проверить, не осталось ли где-нибудь конфликтующих пакетов или кодировок, а также попробовать компилировать lualatex или xelatex, с использованием `fontspec` и `polyglossia` — это более современный подход.

 
 
 [ Сообщений: 2 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group