Что удивляет людей в преобразовании документа, так это то, что в файле нет страницы для преобразования. В .docx хранятся абзацы, стили и примечание о размере бумаги, а страница, которую вы видите на экране, создается словом «Выделение» в момент открытия. Любая другая программа должна снова сделать этот макет, со своими собственными шрифтами и собственными разбитыми строками, поэтому два конвертера дают два разных количества страниц из одного файла. Понимание того, что один факт объясняет все сюрпризы в выводе, в том числе тот, где в PDF-файле появляется отслеживаемое удаление.
TL;DR: .docx — это почтовый индекс XML, несущий реальную структуру, поэтому заголовки, абзацы и списки приходят правильно, а не выводятся. Что не приходит, так это внешний вид: шрифты, столбцы, таблицы, остановки вкладок, нумерация и точные интервалы в реальном времени в частях конвертера должен реализовать текстовый процессор в честь. Измеряя на реальном входе, отслеживаемые удаления отбрасываются, поэтому отредактированный документ читается в качестве окончательной формулировки, пронумерованный список возвращается, таблица становится его ячейками в порядке чтения, а вкладка становится пробелом. В рендеринге текста западноевропейского текста, кириллические, греческие, CJK и emoji нет, потому что встроенные PDF-файлы — это Winansi. выше Конвертер Word в PDF Выполняет набор в вашем браузере.
Что внутри .docx?
ZIP-часть XML-части, и одна из них содержит все, что здесь имеет значение.
Откройте любой .docx с помощью архивного инструмента, и вы найдете word/document.xml Наряду с манифестом, частью отношений и, как правило, стилями, шрифтами, темами, определениями нумерации и настроек. Формат есть ЭКМА-376, с собственной Microsoft Примечания к выполнению покрывая, что слово делает поверх него.
Часть документа представляет собой последовательность <w:p> элементы. Каждый из них представляет собой абзац с необязательными свойствами, говорящими, какой стиль он использует и принадлежит ли он к списку, а внутри него серия прогонов, несущих фактический текст в <w:t>, йо-
Это действительно лучше, чем то, что предлагает PDF. В PDF-файле должен быть выведен абзац из вертикального зазора между строками, где преобразование в другом направлении теряет столбцы и таблицы. Здесь абзац — это абзац, потому что в файле так написано, а заголовок — это заголовок, потому что в абзаце обозначается стиль заголовка.
Загвоздка в тех частях, которые не читает преобразователь.
Почему результат не похож на Word?
Потому что внешний вид разбросан по частям, которые составляют текстовый процессор, а конвертер вместо этого печатает текст заново.
Текст находится в части документа. Причина, по которой ваш текст появляется в Calibri в 11 пунктах с интервалом 1,08, находится в styles.xml, йо- Причина, по которой ваш список гласит: «1., 2., 3.» — а не «А., Б., В.» находится в numbering.xml, йо- Тема, которая предоставляет цвет заголовка, снова находится в другой части, а свойства раздела определяют поля, столбцы и размер страницы для каждого раздела.
Почитать все это — это строить движок компоновки с семантикой Word. Вместо этого этот инструмент делает это, так это читает структуру и выкладывает ее чисто: Times Roman для основного текста, Times Bold для заголовков, 56-точечное поле, 1,4 интервал, в выбранном вами размере страницы.
Таким образом, вывод представляет собой читаемый, правильно упорядоченный документ, который не похож на оригинал. Это настоящее ограничение и стоит заявить прямо, а не хоронить, потому что люди, ищущие это обращение, делятся на две группы, и только одна из них обслуживается. Если вам нужен текст в виде PDF, который может открыть любой, это правильно. Если вы хотите эта страница, с его шрифтами и интервалами, продолжайте читать в разделе «Собственный экспорт Word».
Что выживает после преобразования?
Структура и порядок чтения, надежно. Вот полный список, измеренный по коду, а не предполагаемый.
| стихия | Результат |
|---|---|
| абзацы | сохранено в порядке документа |
| метка | Сохранён, размер по уровню, устанавливаемый жирным шрифтом |
| Список элементов | текст сохранен, маркер заменен пулей |
| Столешницы | сохраняется в виде отдельных абзацев в порядке чтения |
| Отслеживаемые удаления | упал, так как ворд отображает их |
| Вкладки и разрывы строк | стать единым пробелом |
| Жирный, курсив, цвет, шрифт | не переносимый |
| Изображения | не переносимый |
| Заголовки, нижние колонтитулы, номера страниц | не переносимый |
| Сноски и окончания | не переносимый |
Верхняя половина этой таблицы — вот почему это преобразование все еще стоит того, что в нем ничего не нужно было догадываться. Нижняя половина — это цена не реализовать Word.
Что происходит с отслеживаемыми изменениями?
Делеции исчезают, что верно, и тот факт, что он нуждается в этом, является интересной частью.
Документ, отредактированный с отслеживанием изменений, сохраняет удаленный текст в файле, внутри <w:delText> в пределах <w:del> стихия Word не знает, что нужно не показывать его как текущий текст. Конвертер, который обходит каждый текстовый узел, не делает, если только кто-то не подумал об этом.
Измеряемый абзацем, который изначально гласил: «Крайний срок — 31 марта», и был отредактирован на «30 апреля»:
with the rule: The deadline is 30 April.
without the rule: The deadline is 31 March30 April.
Каждая версия этого предложения, которую кто-либо когда-либо печатал, запускается вместе, и между ними нет места. В контракте или письме-предложении это не косметический баг: он публикует переговорную историю документа тому, кто получит PDF.
Стоит знать ради нее сама по себе, какой бы инструмент вы ни использовали. Если вы отправляете преобразованный документ наружу, проверьте, что дата или фигура, которую вы изменили, отображаются один раз, а не дважды.
Что происходит с пронумерованным списком?
Он возвращается в маркировку, потому что цифры не указаны в абзаце.
абзац списка несет <w:numPr>, что указывает на определение нумерации в другой части. Это определение содержит формат, начальную величину, уровни отступа и продолжается ли этот список предыдущего. Сам абзац содержит текст и ничего больше.
Таким образом, преобразователь, читающий только часть документа, знает, что абзац является элементом списка, а не маркером, который он должен нести. Рендеринг пули — это честный параметр по умолчанию:
• First point
• Second point
Ordinary paragraph
Это имеет значение, когда числа имеют значение. "См. шаг 4" в процедуре или пронумерованной оговорке в соглашении теряет свою ссылку. Если ваш документ зависит от его нумерации, это преобразование неверно, и собственный экспорт Word — правильный.
Что происходит со столом?
Клетки выживают, сетка не .
Ячейка таблицы содержит <w:p> Элементы, как и все остальное, поэтому текст прибывает в виде обычных абзацев в порядке чтения. Двухстолбцовая таблица регионов и рисунков выводится как:
Region | Q2 | EMEA | 412
Четыре абзаца один за другим, и ничего не записывало, что первые два были строкой заголовка. Перенос таблицы по ширине столбца, структуры строк, объединенных ячеек и границ, а затем размещение сетки, которая разбивает страниц, которая является другим и гораздо более крупным инструментом.
Это одна и та же торговая деятельность в обоих направлениях. PDF в Word сглаживает таблицу, потому что в PDF его никогда не было; слово в PDF сглаживает его, потому что перестройка — это движок макета. Честный совет в обоих случаях: если таблица является точкой, скриншот ее или оставьте оригинал.
Почему мой макет, выровненный по вкладкам, свернулся?
Поскольку вкладка является инструкцией по позициям, а без остановки табуоткать некуда ее некуда отправить.
<w:tab/> Средство "продвинуться к следующей остановке" и остановки определяются в свойствах абзаца или наследуются от его стиля. Конвертер, который выкладывает текст со своими собственными полями, не имеет смысла, к которому можно перейти, поэтому вкладка становится единым пробелом. то же самое касается <w:br/>,
input: Name <tab> Value <br> Next line
output: "Name Value Next line"
Любой, кто построил список из двух столбцов, блок подписи или простую оглавление с вкладками, полностью теряет выравнивание. Это один из наиболее распространенных способов, которым преобразованный документ выглядит неверно, и он невидим в источнике: файл выглядит как обычные абзацы, потому что он таков.
Если выравнивание имеет значение, реальная таблица в исходном документе не преобразует лучше, но, по крайней мере, она не срабатывает более очевидно.
Какие символы могут не отображать встроенные шрифты PDF?
что-то вне западноевропейской латыни, и в результате неудачи молчали о том, кто из этих персонажей виноват.
Стандарт PDF определяет четырнадцать базовых шрифтов, которые имеет каждый читатель, и они закодированы с помощью WinansiEncoding, набор из 256 символов, задокументированный в приложении D Спецификация PDF, йо- Использование их означает, что шрифт не должен быть встроен, что позволяет сохранить вывод небольшого размера, а это означает, что алфавит фиксирован.
Протестировано с PDF-библиотека, библиотека делает рисунок:
| Текст | Результат |
|---|---|
Quarterly report |
риа |
"Revenue" rose, he'd said с фигурными цитатами |
риа |
| Предложение с использованием em dashes, U+2014 | риа |
Chiffre d'affaires réalisé en Août |
риа |
Total: €1,249.50 |
риа |
Отчёт за квартал |
Неудач: WinAnsi cannot encode "О" (0x041e) |
Αποτελέσματα |
Неудач: WinAnsi cannot encode "Α" (0x0391) |
季度报告 |
Неудач: WinAnsi cannot encode "季" (0x5b63) |
四半期報告 |
Неудач: WinAnsi cannot encode "四" (0x56db) |
Revenue up 🚀 |
Неудач: WinAnsi cannot encode "🚀" (0x1f680) |
Французский, немецкий, испанский, португальский, итальянский и скандинавские языки хороши, как и знак евро, кудрявые цитаты и em dash. Русский, греческий, китайский, японский, корейский, арабский, иврит, хинди и все смайлики не являются.
Инструмент теперь именует символ в ошибке, а не говорит, что документ не может быть преобразован, потому что «удалить этот символ» — это совет, а «что-то пошло не так». Для документа в одном из этих скриптов нужен конвертер, который встраивает его, что означает, что это означает большой PDF-файл и другой инструмент.
Почему файл .doc отклонен?
Потому что .doc и .docx — это разные форматы, которые имеют три письма.
.docx — это ZIP-файл XML, представленный в 2007 году. .doc — это составной двоичный файл в макете, датируемом началом девяностых, при этом текст чередуется среди структур, которым должен ходить синтаксический анализатор. Чтение одного не является вариацией чтения другого, это отдельная реализация.
Таким образом, конвертер проверяет расширение и говорит это, а не на нечитаемом zip:
| Файл | Что написано |
|---|---|
.doc |
Это более старый формат. Откройте его и сохраните как .docx сначала |
.rtf, .odt, .pages |
Не документ Word. Экспорт как .docx |
.pdf |
уже есть PDF-файл; используйте другое направление для редактируемого файла |
Открытие .doc в Word, LibreOffice или Google Docs и сохранение в формате .docx занимает несколько секунд и является преобразованием, которое эти программы делают хорошо.
Каковы размеры заголовков и насколько они глубже?
По уровню, жирным, со всем после третьего уровня, рассматриваемым как третий.
Название стиля читается из абзаца и нормализовано, потому что оба варианта написания существуют в дикой природе. Слово пишет Heading1; несколько генераторов документов записывают heading 1, йо- оба разрешаются на один уровень и Title рассматривается как первый уровень.
| Стиль в файле | используемый уровень |
|---|---|
Title, Heading1, heading 1 |
1 |
Heading2 |
2 |
Heading3 |
3 |
Heading4 через Heading9 |
3 |
ListParagraph, BodyText, что-нибудь еще |
основной текст |
Три визуальных уровня — это преднамеренная точка остановки. Четвертый уровень, отличающийся от третьего, нуждается либо в другом шаге размера, которая начинает сталкиваться с основным текстом, либо вес или изменение стиля, которые не дают базовые шрифты.
Сколько страниц будет PDF?
Не то, что вам показалось, и разница не в баге.
Разрыв строки зависит от шрифта, поэтому тот же абзац в Times Roman в 12 пунктах занимает другое количество строк, чем в Calibri, в 11. поля различаются. Разница между линиями различается. Все, что решает, где заканчивается линия, изменилось, поэтому с ней меняются разбиения на страницы.
В измеренном прогоне документ из одного заголовка и десяти абзацев примерно сорока слов, каждая из которых состоит из двух страниц формата А4: 39 строк на первой и 2 во второй, с заголовком, установленным в 20,4 пункта, выделенным жирным шрифтом против 12 пунктов.
Практическое следствие заключается в том, что ссылки на страницы ломаются. "как описано на странице 7" в преобразованном документе теперь может быть страница 6 или 8. Документ, который перекрестно ссылается на свои собственные страницы, должен быть экспортирован из Word, где макет — тот, на который были написаны ссылки.
Когда вместо этого следует использовать собственный экспорт Word?
Всякий раз, когда внешний вид или разбиение на страницы являются частью содержания. Это более короткий список, чем кажется, но элементы на нем имеют значение.
| Используйте экспорт Word's | Используйте преобразователь |
|---|---|
| Разработанный документ: фирменный бланк, резюме, отчет с брендингом | Обычный текстовый документ, который вам нужен в формате PDF |
| Все, что имеет таблицы, изображения, верхние или нижние колонтитулы | Примечания, статья, черновик, стенограмма |
| Пронумерованные предложения или страницы с перекрестными ссылками | Любой документ, где заказ на чтение - это все, что вам нужно |
| Документ в нелатинском скрипте | документ, который вы бы предпочли не загружать где-либо |
Файл Word, сохраняя как, PDF — это истинный экспорт: тот же механизм макета, который рисовал страницу, пишет PDF, так что вы видите то, что вы получаете. Ничто в браузере не совпадает с этим, потому что ничто в браузере не имеет движка Word.
Случай для преобразования вообще — это последняя строка этой таблицы, плюс отсутствие слова под рукой.
Почему это работает в браузере?
Поскольку документы — это самые личные файлы, которые люди конвертируют, и это преобразование не требует ничего, что есть у сервера.
Чтение ZIP, разбор XML и текста рисования — это все, что изначально делает браузер. Файл читается с вашего диска на вкладку, разархивирована там, выложена там, записана в PDF-файл и возвращается обратно в качестве загрузки. Ни один запрос не содержит документ, и нигде не оставлено копии.
В рассматриваемых документах представлены контракты, резюме, медицинские письма, юридические проекты и диссертации. Обычная альтернатива загружает их в службу, преобразует их на компьютер, о котором вы ничего не знаете, и сохраняет их в течение некоторого периода, описанного в политике, которую никто не читает.
Ограничения честны: только западноевропейский текст, без изображений, нет форматирования, кроме заголовков и пуль. Они видны до того, как вы начнете, а не обнаруживаете, что стоит торговать, когда альтернативой является более приятный PDF-файл документа, который вы больше не контролируете.



