Почему размер вложения отличается от размера сообщения
При отправке увеличивается прежде всего размер сообщения, в котором находится ваш PDF. Изначально электронная почта создавалась для текста. Поэтому почтовая программа упаковывает вложения в формат MIME и обычно преобразует двоичные данные в обычные текстовые символы с помощью Base64. При этом каждые 3 байта файла превращаются в 4 символа, которые распределяются по строкам с символами конца строки. Само кодирование Base64 обратимо: при декодировании восстанавливаются в точности исходные байты. К готовому сообщению также добавляются заголовки, текст сообщения и разделители между отдельными частями.
Поэтому сообщение может быть значительно больше выбранного вложения. На немецкоязычном форуме кто-то спросил, почему PDF размером 20,1 MB превратился в отправленное письмо размером 27,5 MB. Если рассчитать 20 100 000 байтов в этом калькуляторе с переносами строк и без дополнительных байтов, получится 26 800 000 байтов данных Base64 и 705 264 байта символов конца строки. Всего это 27 505 264 байта, то есть около 27,51 MB. Расчёт показывает, откуда берётся такой порядок величин. Это модельный расчёт, а не анализ того конкретного письма.
Из чего складывается оценка
Для каждого файла используйте отдельную строку, поскольку каждое вложение кодируется отдельно. Размеры можно указывать, в частности, в B, KB, MB, GB, MiB или GiB. Единицу выбирайте отдельно от числового значения. Для MB калькулятор использует десятичный коэффициент: 1 MB = 1 000 000 байт, а для MiB — двоичный: 1 MiB = 1 048 576 байт. После пересчёта должно получиться целое число байтов. При вводе учитывайте особенность: точка служит десятичным разделителем, поэтому «1.000» означает единицу. Тысячу вводите как «1000» или «1 000».
- Исходный размер: суммарный размер ваших вложений в байтах. Это исходное значение, которое используется для сравнения с лимитом вложений.
- Данные Base64: вложение размером n байтов преобразуется в 4 × округление_вверх(n ÷ 3) символов. Если оставшихся в конце байтов недостаточно для полной группы из трёх, последняя группа из четырёх символов дополняется символами заполнения.
- Символы конца строки: при включённых переносах строк, как установлено по умолчанию, калькулятор разбивает символы каждого вложения на строки длиной не более 76 символов. Для каждой строки он учитывает 2 байта символов конца строки CRLF, в том числе для последней.
- Дополнительные байты: указанное вами значение для текста, заголовков и других частей сообщения. По умолчанию установлено 0.
- Оценка: данные Base64 и символы конца строки всех вложений плюс дополнительные байты.
Всегда ли Base64 увеличивает размер ровно на треть?
Только приблизительно. При преобразовании 3 байтов в 4 символа увеличение размера больших файлов приближается к 33⅓ %. Без переносов строк 10 000 000 байтов превращаются ровно в 13 333 336 байтов, то есть размер увеличивается примерно на 33,33 %. Крошечное отклонение от точной трети возникает из-за заполнения. С символами конца строки получается 13 684 214 байтов, примерно на 36,8 % больше. Поэтому приблизительное правило об увеличении примерно на 37 % описывает кодированные данные с переносами строк. Такие оценки зависят от длины строк и символов конца строки и не учитывают ни заголовки, ни текст.
Для маленьких файлов постоянный коэффициент совсем не подходит. Вложение размером 1 байт превращается в 4 символа Base64 плюс 2 байта символов конца строки, то есть всего в 6 байтов. Поэтому калькулятор точно рассчитывает каждое вложение, а не умножает всё на единый приблизительный коэффициент.
Несколько вложений: каждый файл отдельно
Вложения не объединяются в один большой блок, а кодируются по отдельности. Поэтому у каждого файла есть собственное заполнение и собственные символы конца последней строки. Лучше всего это видно на предельном примере с двумя файлами по 1 байту.
Для одного большого PDF эти несколько байтов почти не имеют значения. Но при большом количестве маленьких файлов они накапливаются.
Длина строки 76 символов — это максимум, предусмотренный стандартом MIME для строк Base64. Учёт CRLF после последней строки — принятое в этом калькуляторе правило. Почтовые программы с более короткими строками или иначе оформленным окончанием дадут немного другие значения. Ещё одно распространённое заблуждение: Base64 ничего не шифрует. Это лишь кодирование, которое можно обратить без ключа и которое не защищает содержимое вложения.
Как сравнивать с нужным лимитом размера
Лимит размера задаёт число, но не всегда уточняет, к чему оно относится. Одни правила ограничивают суммарный размер исходных вложений, то есть размеры файлов, которые показывает почтовая программа. Другие ограничивают всё сообщение с закодированными вложениями, текстом и заголовками. Поэтому в калькуляторе можно выбрать, что сравнивать с лимитом. Предварительно заполненное значение 25 MB — только начальное значение, а не требование конкретного провайдера. Если результат точно равен лимиту, лимит считается соблюдённым.
Поэтому один и тот же файл может соответствовать одному правилу и нарушать другое, и противоречия в этом нет.
Два реальных правила с разными объектами ограничения
- Gmail: согласно немецкоязычной справке Gmail о вложениях (дата обращения: 13 октября 2026), суммарный размер вложений в личных аккаунтах может составлять до 25 MB. Речь идёт о сумме вложений, поэтому здесь подходит сравнение с исходными вложениями. Для аккаунтов Google Workspace лимиты устанавливает администратор. Если суммарный размер больше, вложение заменяется ссылкой Google Drive.
- RRZE Университета Эрлангена — Нюрнберга: инструкция по ограничению размера вложений электронной почты (дата обращения: 13 октября 2026) указывает для входящих и исходящих писем на серверах RRZE максимальный размер всего письма 20 MB. Здесь нужно сравнивать с предполагаемым размером сообщения и имеет смысл также указать дополнительные байты.
Оба правила действуют только в своей области и могут измениться. Для вашей отправки важно правило вашего аккаунта — личного или управляемого работодателем, школой либо вузом. Так же важно правило почтового ящика получателя. Если вы знаете требование получателя, используйте его при сравнении, точно учитывая, к чему оно относится. Если провайдер автоматически отправляет большие файлы в виде ссылки, файл уже не находится в сообщении как вложение. Сможет ли получатель открыть эту ссылку и разрешено ли ему это, — отдельный вопрос.
Чего ещё не хватает для полного сообщения
Одно закодированное вложение ещё не является письмом. Готовое сообщение включает заголовки с отправителем, получателями, темой и техническими данными. Кроме того, в него входят текст сообщения, часто одновременно в обычном текстовом формате и в HTML, строки-разделители между частями MIME и встроенные изображения, например логотип в подписи. Их объём зависит от почтовой программы, текста и получателей.
Какое количество дополнительных байтов можно указать
Единого правильного значения нет. При 0 дополнительных байтов калькулятор показывает только закодированные вложения с символами конца строки, то есть модельное значение без текста и заголовков. Поэтому введите собственную оценку, подходящую для вашего письма. Короткому тексту без изображений требуется мало места, HTML-письму со встроенной графикой — значительно больше. Значения из примеров других писем относятся только к тем конкретным письмам. Если результат лишь немного ниже лимита, попробуйте расчёт с большим запасом дополнительных байтов. Если лимит по-прежнему соблюдён, запас есть. Если он превышен, ситуация пограничная.
Если письмо возвращается, хотя сравнение показало соблюдение лимита
- Сообщение содержало больше данных, чем вы предусмотрели дополнительными байтами, или почтовая программа использует при кодировании другую длину строк.
- Сервер получателя допускает меньший размер, чем ваш аккаунт.
- Лимит относился ко всему сообщению, а вы сравнили его с исходными вложениями. Или для вашего аккаунта действует другое правило, чем вы предполагали.
- Получатель блокирует определённые типы файлов, например документы с макросами или исполняемые программы, независимо от их размера.
Калькулятор сравнивает только выбранное вами числовое значение. Он ничего не отправляет, не проверяет доставку, форматы файлов или правила безопасности. Для рассылок существуют также ограничения отображения: некоторые почтовые ящики показывают длинные HTML-письма в сокращённом виде. Это отдельная тема, не связанная с размером вложений, и здесь она также не рассчитывается.
Слишком большой размер: дальнейшие действия с готовым PDF
Если оценка превышает лимит, у вас есть два варианта: уменьшить количество байтов самого файла или выбрать другой способ передачи вместо вложения. Если получатель прямо требует вложение, действуйте так:
- Сожмите PDF перед отправкой или, если известна точная граница, уменьшите PDF до лимита размера. Степень уменьшения файла зависит от его содержимого. Достичь целевого размера удаётся не всегда.
- Откройте результат и проверьте, остаётся ли документ хорошо читаемым.
- Снова введите здесь размер скачанного файла. Важен готовый файл, а не ожидаемая экономия.
- Если оценка укладывается в лимит, отправьте письмо. Если нет, обсудите с получателем другой способ.
Альтернативой может стать ссылка общего доступа через облачный или файловый сервис, если получатель принимает ссылки, а права доступа и условия защиты данных подходят для вашего документа. Сервис вы выбираете самостоятельно. Этот калькулятор работает только с введёнными числами и не сохраняет и не отправляет файлы. ZIP-архив, в свою очередь, не является надёжной заменой уменьшенному PDF: он не обязательно уменьшит PDF, а получатель, который прямо требует файлы PDF, может не принять архив.
Если файл нужно не отправить по почте, а загрузить на портал, можно проверить ограничения загрузки PDF и заранее оценить время загрузки файла.