MS Word → InDesign CS4 - приборкання норовливих. епізод 3
Про проблеми імпорту тексту з MS Word в InDesign CS3 / CS4 неодноразово згадувалося на різних форумах, наприклад:
Текст (rtf) заганяю в CS3 - завжди все нормально, заганяю в CS4 - втрачає виноску №1 на 5 стор. <…> Якщо вставляти весь файл (НЕ фрагмент) в CS4 то і текст виноски втрачається, і ще одна виноска. Кинув це файл, тільки doc, в СS4 все нормально (хоча в CS3 файли завжди в RTF вставляли, там навпаки якщо doc, то втрачав частину виносок). Не розумію в чому справа.
Працював в InDesign CS3. Проблем із завантаженням Word-івських текстів практично не було. Все зберігалося - локальне форматування, виноски, таблиці, прив'язані ілюстрації (вкрай рідко злітало кілька виносок (з 500 виносок пропадало штук 5-6), пропадали виділення ПЖ, курсив). Завантажував файли в форматі «rtf». Загалом можна було довіряти.
Встановив ліцензійний CS4, поставив поновлення до 6.0.4.
I) Пробую завантажити RTF текст.
1. Пропала частина тексту.
2. На початку тексту замість посилань на виноски варто рожеве виділення, а виноски пропали. Через кілька сторінок виноски ліниво з'явилися, але йдуть не підряд. Деякі пропали, а на їх місце переїхали ті, що стояли після.
3. Замість вордівських маркерів в переліках - рожеві квадратики.
II) Пробую завантажити DOC текст.
Завантажився краще, але частина виносок пропала за сценарієм п.2 (див. Вище).
При продовженні розгляду з'ясувалося, що вхід виноски і її текст пропадає для виноски, яка в тексті слід ПІСЛЯ великої російської літери «К». При цьому наступні виноски імпортуються правильно, але їх нумерація збивається на одиницю (для кожного входженія). І так далі в усьому тексті для виносок, що йдуть після «К».
Підвів підсумок Михайло Іванюшін:
На сьогоднішній момент я знаю тільки один спосіб не втратити виноски в книзі:
1) зберегти текстовий файл як RTF
2) імпортувати його в InDesign CS3
3) зберегти результат як INX
4) взяти цей INX файл в InDesign CS4 або InDesign CS5 та продовжити верстку книги.
Цей алгоритм доречний в тому випадку, якщо в ворде вже є стильова розмітка, яку треба обов'язково зберегти.
Але якщо потрібно просто перенести текст з виносками, і передбачається вся стильова розмітка тексту, що називається, з нуля, вже в пограмма верстки, то поки не дав збою такий підхід:
1) при імпорті в вікні 'Place' встановити прапорець 'Show Import Options'
2) у вікні в блоці 'Formatting' вибрати радіокнопку 'Remove Styles and Formatting from Text and Tables'.
Тобто немає необхідності звернення до перевіреної паличці-виручалочка - версії InDesign CS3.
Індізайн 7, установки імпорту: видалити стилі, зберегти локальне форматування.
Результат: операція мною перервана після 15-хвилинного очікування, прогрессбар зупинився на самому початку і більше не рухався.
Індізайн 6, установки імпорту - ті ж.
Результат: операція мною перервана після 20-хвилинного очікування, прогрессбар зупинився на самому початку і більше не рухався.
Індізайн 5, установки імпорту ті ж
Результат: нормальний імпорт, все виноски збережені (243 шт.)
Індізайн 7, установки імпорту: видалити стилі, що не зберігати локальне форматування
Результат: нормальний імпорт, все виноски на місці.
Індізайн 7, установки імпорту - зберігати стилі і форматування, автоматичний імпорт стилів.
Результат: велика частина тексту втрачена. Імпортовано тільки 10 сторінок. Про виноски краще не згадувати.
висновки:
1. У Індізайн 6 і 7 є проблеми при імпорті зі збереженням локального форматування. У Індізайн 5 їх немає.
2. Повноцінного безпроблемного імпорту тексту з MS Word в InDesign для російських дизайнерів-верстальників не існує, незважаючи на недавно зазначене десятиліття програми.
3. Оскільки звернення до фірму Adobe ігноруються, то необхідний пошук сторонніх розробок або розробка нових програмних засобів по імпорту даних в Індізайн.
В результаті пошуку сторонніх розробок був знайдений тільки раніше відомий InDesign Converter, платний макрос до MS Word, про який вже писалося на нашому сайті в рубриці «Модулі». Викачуємо, встановлюємо, запускаємо. Макрос перериває свою роботу з повідомленням про помилку. Повторні запуски після перезавантажень MS Word і всього комп'ютера також успіху не мали. Лист до розробника макросу з описом проблеми та скріншот залишилося без відповіді.
функціонал макросу
1. Автоматичне перетворення локального форматування MS Word в символьні стилі Індізайна (bold, italic, bolditalic, sub, sup, underline). Виділення кольором на даний момент ігноруються.
2. Створення одного стилю абзаців для всього тексту. Маппінга стилів поки немає. Планується в майбутньому.
3. Створення абзацного стилю для виносок. Наше тестування показало, що жодна виноска не втрачається.
4. Малюнки мовчки ігноруються і не переносяться в Індізайн. В подальшому доопрацюванні може бути вставка на їх місце фрази типу pic 1, pic 2 і т.д. (Тегірованний текст Індізайна не працює з картинками).
5. Таблиці перетворюються в текст з роздільниками tab між осередками і \ r між рядками. Такий текст легко можна перетворити назад в таблицю засобами Індізайна. Надалі можна зробити, щоб таблиці з MS Word імпортувалися як таблиці.
6. Списки з Буллет. Буллет замінюються на зірочку. Можна потім легко через греп замінити на стиль. Надалі можна вирішити і цю проблему, щоб Буллет відразу приходили Буллет.
1. Скачайте архів з макросом, розпакуйте і відкрийте файл в блокноті, потім виділіть весь текст і скопіюйте в пам'ять (Ctrl + C).
2. Запуск MS Word, натисніть Alt + F8. У появівшемя вікні виберіть Макроси з: Normal dot (загального шаблону)
4. Збережіть макрос (Crtl + S) і перейдіть у вікно MS Word. На цьому установка закінчена.
1. Відкрийте файл в MS Word, призначений для імпорту в InDesign.
2. Натисніть Alt + F8. У вікні, виділіть макрос InDesignTagText і натисніть кнопку Виконати.
3. В результаті роботи згенерує текстовий тегірованний файл, який буде записаний в ту ж папку і з тим же ім'ям, як і у вихідного файлу, але з розширенням .txt. Вихідний файл з розширенням .doc залишиться без змін.
4. Звичайним способом імпортуйте цей файл в новий документ InDesign CS4.
5. Якщо ви працюєте в InDesign CS3 - відкрийте згенерований файл в блокноті, знайдіть на початку файлу рядок, що починається як
«
Завантажити макрос в текстовому вигляді
Ми сподіваємося, що порушені в цій статті питання вам небайдужі і що ви приймете активну участь в тестуванні макросу, висунемо багато конструктивних пропозицій, повідомте про режими роботи, де макрос не справляється або не в повній мірі справляється зі своїм завданням. В іншому випадку подальший розвиток макросу буде припинено.
I. Для перетворення виносок в тегів текст пропонуємо скористатися макросом FootnotesToText. взятим з сайту Word Expert і трохи підправленим для наших цілей. Макрос переносить виноски в основний текст MS Word, укладаючи його в теги
II. Відновлення тегірованних виносок в InDesign робите розробленим нами скриптом footnotesFromTags.jsx. який виконує зворотну процедуру створення виносок з тексту, поміченого вищевказаними тегами. В скрипті вирішена задача збереження локального форматування виносок (для чого власне він і розроблявся). На даний момент зберігається форматування Bold, Italic, Bold Italic і легко можуть бути додані інші типи форматування.
Скрипт також створює абзацний стиль Footnotes і привласнює його всім відновленим виноска. Відредагуйте параметри стилю на свій розсуд. Виноски до таблиць не обробляються.
Працездатність скрипта тестувалася в InDesign CS4.
Загальна послідовність дій
- Встановіть макрос FootnotesToText в MS Word і скопіюйте скрипт footnotesFromTags в папку користувача скриптів Індізайна.
- Відкрийте призначений для імпорту документ в MS Word, запустіть макрос FootnotesToText. Після обробки макросом збережіть документ під іншим ім'ям і з розширенням .rtf.
- Імпорт ваш файл .rtf в Індізайн. Зверніть увагу на параметри імпорту- форматування тексту не повинно загубитися.
- Поставте курсор в текст і запустіть скрипт footnotesFromTags. Процес відновлення буде супроводжуватися прогрессбар.
Нещодавно ми отримали лист від Андрія Сущенко:
Спасибі, Андрій. Ми з задоволенням виконуємо Ваше прохання
Дякую за роботу!
Проблема архінасущная. Але загальний підхід до її вирішення мені все-таки бачиться іншим. Наскільки я розумію, вся проблема в виносках. Текст без виносок затягується нормально через RTF. Особисто у мене збоїв не було. І що важливо при цьому - збереження картинок з Word-а; структури складних таблиць з об'єднаними осередками, заголовними рядками; нумерованих і булетних списків. Так чому б не використати на повну ці можливості. Тоді треба в Word-е перетворити виноски в тегованих текст, зберегти в RTF. Тобто залишити теги тільки для виносок, а в InD затягувати RTF (при цьому виноски залишаються в тегах). Уже в InD локальне форматування легко перетворюється в стильове - наприклад, за допомогою Blatner Tools, або прекрасно працюють безкоштовним скриптом Preptext. Залишиться тільки перетворити тегованих виноски в справжні. І такі скрипти теж є, наприклад, ReFoot. Ось тільки ці скрипти незберігають локальне форматування всередині виносок. От якби тут чогось підкрутити, тоді проблема буде вирішена.
Або інший шлях. Початок таке ж ... Запихаємо RTF з тегованих виносками в InD. Відразу ж експортуємо його в тегірованний текст. Все форматування, таблиці повністю зберігаються. І тепер імпортуємо назад в InD вже як тегованих текст. При цьому виноски стають на місце (звичайно, якщо в Word-е для них прописали правильні індезайновскіе теги. Ну або в Text-Only можна ці теги підправити.).
Але при такому способі губляться впроваджені картинки, які спочатку могли бути в Word-е.
Тоді перед експортом в тегірованний текст впроваджені картинки треба «разембеддіть» і потім скриптом замінити всі inline-картинки на теги, що містять повний шлях до них (ось цього скрипта і не вистачає!). Далі - так само як і вище, імпортуємо тегірованний текст в InD, обробляємо локальне форматування, замінюємо теги з шляхами до картинок на самі картинки - наприклад недавно обговорювалося тут скриптом шановного Михайла Іванюшіна.
У будь-якому випадку при такому підході по максимуму використовується те, що може дати RTF без глюків.
Admig, мені дуже сподобалося ваше перше речення. Тепер спробую викласти як я це зрозумів, а ви подправьте якщо щось не так. Значить, підправляє макрос, щоб виноски зі збереженням форматування вставлялися в основний вордовскій текст уже не як виноски, а як простий текст зі збереженням форматування, там же зауважимо тегами початок і кінець всіх конкретних виносок. Таблиці і графіку і все інше не чіпаємо і зберігаємо такий файл в RTF. Імпортуємо в Індізайн збережений RTF-файл. При цьому форматування виносок має зберегтися, збережуться і теги початку-кінця виносок. Далі запускаємо індізайновскій скрипт, який за тегами пізнає виноски всередині основного тексту і зробить їх справжніми виносками. Цей скрипт треба розробити. Це не так складно, програмування для Індізайна я на два порядки краще знаю чим програмування для MS Word. Ви згадали скрипт Refoot, чи не можна мені його вислати або дати посилання на скачування, в тому випадку якщо він не jsxbin?
Другий ваш варіант мені здається складніше, та я вже й встиг закохатися в перший.
І останнє питання - ви точно впевнені що RTF без виносок завжди добре імпортується в ID у всіх версіях, з усілякою графікою і складними таблицями? А то за останні два роки я тексту без виносок в своїй роботі не бачив.
З приводу переклад локального форматування в стильове після імпортування RTF в InD: Blatner Tools, по-моєму, занадто багато подробиць зберігає в стилях, доводиться чистити зайве. Нещодавно оновлений скрипт Preptext справляється найкраще.
З приводу другого мого варіанту - так є ще й третій. Після імпортованого «підготовленого» RTF в Індізайн текст відразу експортується в inx або в idml. Все зберігається - форматування, таблиці, графіка. І потім вже в цьому inx (по суті текстовий файл!) Замінюються «тегірованние» виноски на «правильні» Індізайновскіе. Але це тільки в теорії. Розібратися в структурі inx файлу дуже непросто.
Щодо коректності імпорту RTF без виносок. Що сказати? Упевнений, що особисто у мене в CS4 жодного разу збою не було. Коли боровся зі зникненням виносок, пробував різні варіанти, в т.ч. прибирати їх взагалі. Графіка точно зберігається. Списки зберігаються. Складна структура таблиць зберігається. Форматування іноді дає збій, коли імпортується DOC. З RTF було все в порядку.
І ще навздогін одна думка. При розмітці виносок тегами в Word-е добре б окремо обробляти випадки, коли виноска варто всередині комірки таблиці. Розстановка виносок на місця скриптом в Індізайне в цих місцях дасть збій.
Може б, позначити іншими тегами, з тим щоб в Індізайне ці випадки обробити вже вручну за бажанням користувача.