Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТЕХНОЛОГІЯ ГАЗЕТНО-ЖУРНАЛЬНОГО ВИРОБНИЦТВА.rtf
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
149.05 Mб
Скачать

  1. Математична модель системи газетного верстання

Різні види моделей — фізичні та абстрактні, що в свою чергу поділяються на гносеологічні, інформаційно-кібернетичні, сенсуально-чуттєві, концептуальні, математичні, передбачають певні рівні моделювання. Процеси комп'ютерного опрацювання тек­сту найадекватніше виражаються за допомогою математичних моде­лей, які реалізуються на вибраних рівнях структурування текстової інформації методами аналітичного та імітаційного моделювання.

Складність та специфіка процесів опрацювання тексту, пов'язаних з моделюванням основного об’єкта (видання), не дозволяє описати їх засобами аналітичного моделювання. Це означає, що побудова повної математичної моделі процесу перетворюється в задачу без розв’язку, тому при створенні си­стем комп’ютерного підготування видань ефективним є сукупне або вибіркове застосування методів аналітичного та імітаційного моделювання. Останні передбачають створення імітаційних або алгоритмічних моделей, що ідентифікують не тільки структуру досліджуваного об’єкта, але й динаміку поетапного отримання відповідних елементів видання. Імітаційні моделі у порівнянні з математичними (аналітичними) повніше описують процеси, використовуючи алгоритмічні мови або псевдомови, що містять універсальні засоби творення алгоритмів.

Будь-яка динамічна система в певні моменти часу харак­теризується відповідним станом, який залежить від значень вхідних параметрів, структури системи та випадкових величин. Для систем комп’ютерного підготування видань суттєвими в цьому плані є основні параметри формування видання, складність тексту, струк­тура системи (її програмне забезпечення), технологія підготування видання. Без врахування цих характеристик в загальній аналітично- імітаційній моделі неможливо досягти надійного та ефективного функціонування системи в цілому. Моделюючі алгоритми за­лежать найбільше від структури програмного забезпечення та функціональних перетворень, що відбуваються над текстом. Моделювання процесів формування тексту- передбачає:

  • формалізований опис видання для побудови статичних мо­делей елементів об’єкта;

  • аналітичне моделювання процесів творення структурних частин видання;

  • розробку моделюючих алгоритмів;

  • створення загальної комп’ютерної моделі процесу через компіляцію моделюючих алгоритмів (програм), тобто одержання програмного забезпечення системи;

  • випробування моделі (виконання програм) на комп’ютері;

-— аналіз результатів моделювання.

Детальніше розглянемо перші два пункти. До структурних частини видання належать:

  • слово;

  • проміжок (пробіл);

  • рядок;

  • колонка;

  • рисунок;

  • додаткові елементи видання (заголовок, підзаголовок, підпис до рисунків, врізи тощо);

  • стаття;

  • полоса;

-— розворот.

При створенні нового газетного видання розробляється ша­блон, отже, проаналізуємо схему творення шаблон}'.

Математична модель та алгоритм формування рядка. Найчастіше текст оцінюється за якостю сформованих рядків, ве­личиною пробілів між словами (далі «пробіл між словами» назива­тимемо «пробіл»), його рівномірним розподілом у сусідніх рядках, наявністю коридорів, ступенем перекриття абзацного відступу кінцевим рядком абзацу. Контролюється правильність розділення слів переносами, наявність у суміжних рядках трьох переносів підряд, закінчення рядка прийменником, який складається з однієї букви, або скорочення, що відноситься до наступної інформації.

Виконання вимог технологічних інструкцій, що регламен­тують якість тексту', поєднуються з необхідністю створення ал­горитм}', який би дозволяв одержувати позитивний результат для будь-якої різновидності тексту, включаючи рубрики, виноски, вірші, драматургію. До них необхідно включати команди, які визначають

особливості формування та оформлення рядків тексту. В результаті роботи алгоритмів (програм) потрібно одержати числову модель ряд­ка — прототип реального текстового рядка видання. Рядок набуває кінцевого вигляду після додаткового опрацювання у пристроях виведення. Така модель будується на основі вимог до формування рядків тексту, що враховують специфіку групи або класу конкретних видань, способи їх оформлення, технологію підготування до ви­пуску з використанням автоматизованої системи верстання. Перед безпосереднім викладом змісту алгоритму автоматичного формату ­вання рядка розглянемо вихідні фактори та умови, що впливають на його зміст і структуру.

Аналіз вимог до варіантів і способів формування тексту дозволяє поділити їх на три функціональні групи. У першу групу включені такі характеристики тексту, як горизонтальний формат, гарнітура і кегель шрифту, параметри проміжку' між словами.

Вимоги другої групи стосуються рядків, які містять підставний ініціал, абзацний відступ, форматуються вліво, вправо, на формат, рядків рубрик і виносок, а також колонцифр, колонтитулів, норм, сигнатур.

До третьої групи віднесені вимоги, виконання яких можливе після логічного аналізу певних ділянок тексту. До них належать спеціальні правила переносів словосполучень, наприклад, заборо­на відриву (перенесення в наступний рядок) ініціалів від прізвища (і навпаки), скорочених найменувань мір від числа, до якого вони відносяться; правила виділення тире, номера, параграфа, сторозряд- них чисел.

Згідно з дослідженями проф. В. М. Сенківського в загальному випадку рядки основного тексту повинні бути форматовані на зада­ний формат, чи закінчуватися правильним переносом, якщо такий варіант ймовірний. Отож для всіх рядків тексту треба визначити умови, за яких вони можуть бути форматовані, а для слів з переноса­ми потрібно граматично правильно вибрати місце розділення.

Визначимо умови, при яких форматування рядка може вважа­тися завершеним. Для заданого горизонтального формату введемо поняття мінімально допустимої довжини рядка, що формується (рис. 33).

Визначимо довжину при мінімальному' значенні пробілу:

де Р — горизонтальний формат;

ітах і Ітт — відповідно, максимшіьне і мінімальне значення (межі зміни) проміжку між словами; п — кількість проміжків у рядку.

Аналогічно до попереднього, рядок, який формується, матиме максимально допустиму довжину, значення якої /., = Р + пЛ( при максимальній величині проміжку Величина

Це зона форматування рядка. Вираз для визначення Ь, свідчить, що, крім «звичайної» зони форматування, якою в друкарстві кори­стуються давно, і яку назвемо лівосторонньою зоною, форматування рядка можливе при наявності правосторонньої зони. Величина зони форматування залежить від приростів проміжків та їх кількості в рядку. Оскільки приріст Аі визначається типом вивідного пристрою, у певних межах він є величиною дискретно постійною. Величина зони форматування залежить остаточно від кількості проміжків і визначається форматом, кеглем, гарнітурою (в невеликій мірі), ха­рактером літератури, структурою тексту. Зона форматування є важ­ливою характеристикою процесу формування будь-якого тексту; її величина впливає на кількість слабких і щільних рядків, на число рядків з переносами, ступінь виконання певних правил складання тексту, а отже, на якість формування тексту.

Таким чином, справедливе твердження, що формування ряд­ка можна завершити, якщо при мінімальному значенні проміжку справджується нерівність:

Цей варіант необхідно передбачити заздалегідь, тому що фор­матування рядків, довжина яких задовольняє (11.6), веде до макси- мально щільного тексту'.

Якщо з певних причин (кінцеве слово в рядку не ділиться на склади, або має місце заборона на розрив слова чи рядка в межах

пропонується користуватися виразом (11.3), як основним. Одночасно допускається формування тексту, для якого умова закінчення рядків має вигляд:

Із (11.3) випливає, що форматування рядка стає можливим, якщо при ґтіи його нагромаджувана довжина досягає зони формату­вання. Вираз (11.4) свідчить, що ширина рядка, який формується з максимальним значенням пробілу, може перевищувати заданий фор­мат на величину зони.

Описані варіанти формування рядка схематично зображені на рис. 33. Відстань між словами дорівнює: ґ ; ґ Обидва варіанти можуть бути програмовані й обираються, виходячи з характеру видання та способів оформлення тексту. Відповідна інформація включається в набір вказівок, що становлять основу діалогу кори­стувача з системою. Обґрунтування вибору варіанта проводиться за допомогою експериментального формування деякого масиву тексту' з використанням обох способів та аналізу одержаних на комп’ютері результатів.

Для форматування рядка з оптимальним значенням проміжку І який визначається співвідношенням

де а. — ширина і-го символу рядка; т — число символів у рядку.

Аналогічно, при максимальному значенні проміжку:

то формування рядка завершується. В іншому випадку доведен­ня його до потрібної довжини здійснюється за рахунок збільшення

•іони форматування) довжина рядка, який формується із значенням / , відповідає нерівності:

Такий варіант призводить до слабкої щільності тексту.

На основі наведених положень запропонуємо математич- ну модель процесу формування рядка, в якій закладена тенденція до підвищеної щільності тексту. Згідно з прийнятоим підходом в загальній моделі виділена базова частина (ядро моделюючо- го алгоритму), яка уособлює власне процес форматування рядка. Формування текстового рядка здійснюється шляхом нагромадження довжин слів. Беручи до уваги ширину символів, визначаємо довжи- ну поточного слова, яка додається до обчисленої довжини рядка. Після кожного чергового сумування нагромаджена довжина рядка порівнюється з заданим форматом, тобто здійснюється перевірка

співвідношення:

де гл— ширина 1-го символу в j-му слові; т — кількість символів у j-му слові. Відповідно до наявно­го числа проміжків п визначається кількість слів, що вмістилися в рядку.

Якщо в (11.8) маємо строгу нерівність, то нагромадження слів продовжується. При рівності довжини рядка заданому форматові (зустрічається зрідка) аналізується останнє слово в рядку. Якщо воно є прийменником, який складається з однієї букви, або скороченням типу м. (місто), с. (село), о. (озеро) тощо, то це 5 0 слово 5 0 пере­носиться в наступний рядок. Одночасно здійснюється перевірка на входження в зону частини рядка, що залишилася. Якщо при цьому справедлива нерівність

величини проміжків. Якщо такі кроки не дають результатів, рішення про вибір варіанта закінчення рядка приймається на основі аналізу вагових коефіцієнтів, присвоєних кожній із вимог. Це означає, що в поточному рядку залишається прийменник, чи скорочення, або збільшуються відстані між буквами, що приводить до слабкої щільності тексту.

До аналогічного висновку приходимо, аналізуючи останнє співвідношення. Виберемо варіант, при якому частина рядка, що за- лишилася, дорівнює Ьг Прийнявши в (\ \ .9) N = п - 2 і Аі = - ?тш,

одержимо:

де сік — ширина к-го символу частини слова, яка розмістилася в рядку (б < г);

де ар — ширина р-го символу слова, яке не вмістилося в рядку. За допомогою алгоритм}' пошуку переносів у слові воно ділиться на склади. Якщо слово не має переносів, або його перший склад переходить за межі формату, таке слово повністю переноситься в на­ступний рядок, а формування поточного рядка закінчується вищео­писаним способом.

При наявності переносів в останньому слові один або декілька його складів залишається в поточному рядку, стан якого описується наступним співвідношенням:

Останнє співвідношення характерне для тексту із невеликою щільністю формування.

Якщо умова в (1.8) не виконується, це означає, що останнє слово перейшло за межі рядка, тобто:

або після спрощення виразу:

і —- ширина дефісу.

Моделюючий алгоритм повинен враховувати різні варіанти югічних переходів, розшифрування і реалізацію команд поліграфіч­ного оформлення, заповнення інструкцій стану' рядка.

Автоматичний пошук переносів у словах. Часто в процесі формування тексту слово, яке додається до поточної довжини рядка, инкликає так зване «переповнення формату», виходячи за допустимі горизонтальні межі. В цьому випадку виникає необхідність визна­чення для такого слова місця можливого розриву, або поділу його на і клади (для перенесення частини слова в наступний рядок).

Алгоритм автоматичного пошуку переносів у словах є складо- іюю загального алгоритму формування рядка. Основою алгоритму служать правила орфографії відповідної мови. Можливе викори­стання різних методів і методик, які відображають свої підходи до проблеми складоподілу.

Крім правил мови, враховуються структура спеціальних словників, об’єм пам’яті, який відводиться для них в комп’ютері, швидкодія машини.

Найпоширенішими є такі методи поділу слова на склади: метод словника, поділу слів за звучністю, імовірнісний метод логічних пра­вил. Кожен з них має свої переваги і недоліки, тому на практиці мож­ливе їх комбіноване застосування. Опишемо деякі з цих методів.

Метод словника побудований на основі використання попе­редньо введеного і записаного в пам’яті комп’ютера спеціального словника певного об’єму з вказанням місць можливих переносів у словах. Слово в тексті, яке треба поділити на склади, аналізується зі знайденим у словнику; з якого вибирається необхідна інформа­ція. Використання методу є в достатній мірі ефективним у зв’язку зі зменшенням часу обміну даними між оперативною і зовнішньою пам’яттю комп’ютера. Точність його може досягати 99%.

Метод поділу слів за звучністю грунтується на тому, що більшість слів в українській мові будується за принципом зростаючої звучності. Кінець складу припадає на місце падаючої або однакової звучності. Букви алфавіту' діляться за звучністю на голосні, сонорні, дзвінкі й глухі. Згідно з методом перенос можливий у місцях падаючої звучності, тобто там, де попередня буква має більшу звучність, ніж наступна.

Розділимо літери українського алфавіту на вказані групи:

  • голосні: а, о, у, є, є, и, і, ї, ю, я;

  • сонорні: л, м, н, р;

  • дзвінкі: б, в, г, д, ж, з;

  • глухі: к, п, с, т, ф, х, ц, ч, ш. щ.

Використаймо цей метод для поділу на склади слова «аль­тернатива». Розділивши між собою букви в місцях падаючої звучності, одержимо: аль-тер-на-ти-ва. В словах, які містять декілька приголосних підряд, деякі переноси втрачаються і точність методу сягає 85%.

Імовірнісний метод використовує аналіз буквосполучень, ділячи їх на подільні і неподільні. Для подільних сполучень літер визначається ймовірність поділу слів у розрахованому місці. При аналізі слова на наявність переносів підраховується ймовірність можливого його поділу на кожній букві і визначається найімовірніше місце переносу. Точність методу7 складає 70%.

Одним з найефективніших є метод логічних правил, реалізоваваний у системах «Книга» та «АККОРД». Він грунтується на аналізі логічної структури слова та формалізації фонетичних і граматичних правил орфографії. Відповідно до методу всі букви алфавіту' української мови поділені натри групи: голосні, приголосні, особливі. В останню входять букви «й» та «ь». Місця переносів виз­начаються шляхом аналізу сполучень букв указаних груп. Для поділу слова на склади використовується правило: перенос можливий після голосної букви перед приголосною. Це необхідна логічна основа ал­горитму, але, звичайно, достатня.

Різноманітність варіантів та виключень при поділі слів на склади дуже велика і не може забезпечуватися одним правилом. Необхідно враховувати синтаксичну будову слова, приймаючи до уваги префікс, корінь, суфікс, закінчення, а також його семантичні особливості, які стосуються взаємного розміщення деяких букв, пра­вила переносів яких повинні бути враховані окремо. У зв’язку з цим запропонований метод доповнюється відповідними методиками, сумісне використання яких покращує якість переносів.

У загальному випадку слово — це певна сукупність символів, обмежена пробілами. У цій множині, крім букв, можуть зустрічатися

цифри, деякі знаки, власні пробіли. Кількість їх та місце розташу­вання заздалегідь невизначені. Застосування формалізованих пра­вил переносів у цьому випадку стає неможливим. Для вирішення цієї задачі використовується методика виділення букв у загально­му символьному слові. Номери і кількість знаків, які є буквами, іапам'ятовуіоться для майбутнього коригування місць переносів. Такий спосіб суттєво спрощує даний алгоритм і скорочує час на про­грамний пошук переносів у слові.

Аналіз частин слова, одержаних за методом логічних правил, свідчить, що в складних словах, або тих, що містять префікси, часто з’являються неправильні переноси. Найчастіше помилки виника­ють у тих випадках, коли основа або друга частина складного слова починається декількома підряд приголосними буквами, наприклад, надбудувати, проштрафитися.

Для одержання правильних переносів запропонована методика виділення префікса або частини складного слова. Відповідно до цієї методики в пам’яті комп’ютера організовується словник префіксів і початкових частин складних слів з можливими переносами в них. У загальному алгоритмі розробляється оптимальний спосіб пошуку префікса або частини слова. Вони порівнюються з початком слова, яке при формуванні рядка викликає переповнення формату, і має бути поділене на склади. При збігу початку слова з аналогом у словнику переноси останнього фіксуються в результуючому масиві переносів слова. Частина слова, яка залишилася після відділення префікса, опрацьовується згідно з загальними правилами.

Як складається такий словник? У досить великому об’ємі слів (50-60 тис.) у відповідності до прийнятого алгоритму вручну визначаються можливі переноси. Слова, в яких згідно з алгорит­мом з’являються неправильні переноси, аналізуються на можливу наявність у них префікса або частини складного слова (для ско­рочення обидва елементи в контексті назвемо словом «префікс»). Досліджується можливість виправлення переносу при внесенні префікса у словник. Один префікс може покращити переноси декількох слів. Залежно від кількості слів, які при цьому «обслуго­вуються», виділені префікси для української мови поділені на п’ять груп. Так, для орфографічного словника української мови в першу

груш7 внесено 32 префікси, які покращують переноси в 28 словах, відповідно в другу: 40 префіксів — до 30 слів; в третю: 41 — до 12; в четверту: 60 — до 5; в п’яту': 110 — 3 слова.

Досвід функціонування системи «АККОРД» свідчить, що вне­сення в пам'ять комп’ютера словника, який містить 300 префіксів, дозволяє досягти 99%точності розділення слів переносом. При оцінці якості сформованого тексту слід враховувати, що рядок не завжди закінчується власне на неправильному переносі, навіть якщо такий існує. Загальне число рядків з переносами визначається характером тексту, горизонтальним форматом, величиною зони форматування, прийнятим способом формування рядків, параметрами шрифту'. Методика визначення закінчень дозволяє виключити варіанти, коли рядок починається частиною слова, яка не містить голосної або приголосної. Згідно з цією методикою в кінці слова фіксуються «ь» та «й». Крім того, від слова відділяється та його частина, яка не утворює складу, тобто не містить комбінацій «голосна-приголосна» або «приголосна-голосна». Отже, пошук переносів здійснюється в скороченому слові.

З урахуванням методу логічних правил, наведених методик та граматичних правил переносів в українській мові розроблено вимоги до алгоритму автоматичного визначення місць переносів у словах.

  1. В слові виділяються власне букви. Запам’ятовується кількість символів (не букв, якщо такі є) перед словом.

  2. Слово, яке містить менше чотирьох букв, у тому числі мен­ше двох голосних або приголосних, переносити не можна.

  3. Початок слова порівнюється з словником префіксів. Якщо слово містить префікс, перейти до п.4, інакше — до п.5.

  4. Після префікса можливий перенос, крім випадків, вказаних у примітці. Частина слова, яка залишається після виділення префікса, аналізується як будь-яке слово без префікса.

Примітка. Якщо префікс закінчується приголосною буквою (крім букви «х»), далі йде голосна, перенос можливий як перед цією голосною, так і після неї.

  1. Частини слова, які не містять голосних або приголосних, переносити не можна.

  2. Перенос можливий після голосної перед приголосною.

  1. Дві однакові приголосні, які знаходяться між голосними, розділяються переносом. Перед ними перенос заборонений. Це не накладає заборони на інші переноси в слові.

  2. При сполученні декількох приголосних перенос можливий її будь-якому місці між ними. Перед першою приголосною перенос небажаний.

Примітка. Буквосполучення «дж», «дз», «ст» не можна розривати переносом, крім випадків, коли приголосні «д» або «с» відносяться до префікса.

  1. Перед знаком «’» (апостроф) і після нього перенос заборо­нений. Перед буквами «ь», «й» перенос заборонений; після них до­зволений, крім випадків, вказаних у примітці.

Примітка. Буквосполучення «йо» та «ьо» розривати не мож­на; перед «йо» перенос дозволений.

  1. При сполученні декількох голосних їх можна розділяти переносом. Перед першою і після останньої голосної перенос заборонений.

  2. Після знаків «дефіс» і «тире» перенос можливий; перед ними заборонений.

Примітка. Частини слова, розміщені по обидва боки від дефісу, аналізуються як самостійні слова.

  1. При наявності в слові команди, яка забороняє розриватй символи, перенос у місці її розміщення заборонений.

Примітка. Символи інших команд та їх параметрів, розміщених усередині слова, прирівнюються до знаків.

Вхідними даними алгоритму є слово, яке містить будь-які символи. Для початку виділяється слово, що містить тільки букви. При умові, що кількість їх менша чотирьох або у виділеному слові є менше двох голосних або приголосних, слово вважається таким, що не має переносів, а в результуючий масив, який визначає кількість переносів, а також номери букв, після яких вони можливі, пересила­ються нулі. На цьому вітка алгоритму закінчує свою роботу.

Якщо вимоги відносно кількості букв виконуються, визна­чається закінчення слова, а його початок порівнюється з префік­сами, які розпочинаються тією ж буквою, що й слово. Для більш ефективного пошуку префікси згруповані в словнику за алфавітом з одночасним указаниям їх кількості на певну букву.

Префікси з однаковими початками розміщуються у словнику в порядку зростання їх довжини. При збігу початку слова з одним із префіксів власні переноси префікса записуються в результуючий масив, а частина слова, що залишилася, аналізується відповідно до загальних правил. Після визначення місць переносів у слові їх при необхідності коригують, тобто визначають фактичні номери символів у вхідному слові, після яких можливий перенос.

Приведений алгоритм можна поділити на три частини: виді­лення букв; пошук префіксів; визначення власне переносів.

Такий алгоритм дозволяє переносити слова з відхиленням

  1. 4% від загальної кількості переносів. Тобто на 1000 переносів не­правильними можуть бути не більше чотири. Важливим є визначення ймовірності виникнення в тексті рядків з переносами. Припустімо, в рядку з форматом /'’слово, що підлягає переносу, містить N переносів ,у;,..., ьп. Зобразимо схематично стан рядка в момент поділу слова на склади (рис. 34). Згідно з прийнятими позначєнями: Ь} = Р - пАґ,

  1. — накопичувана довжина рядка до слова, яке викликало перепо­внення формату. На рисунку в прямокутнику зображене слово, де аналізуються переноси. Ймовірність входження будь-якого пере­носу в зону визначимо як відношення довжини частини слова, яке знаходиться в зоні, до величини всієї зони.

Фіксуватимемо довжини частин слів до чергового переносу. Нехай АІ = /;. Аналогічно для другого складу

Знайдемо довжини частин слів, визначених кожним перено­сом. Довжина першого складу

Аналогічно ймовірність попадання іЧ-го переносу в зону вйключки:

а довжина слова до другого переносу А2 = 1+ І Продовжуючи далі, одержимо

де довжина будь-якого складу визначається зі співві­дношення:

Виключимо із розгляду переноси, які не попадають в зону, тобто ті, які відповідають співвідношенням:

Дослідимо переноси, для яких довжини частин слів задоволь­няють нерівностям:

Згідно з рис. 34 стверджуємо, що

де 1з1 — довжина частини рядка по першому переносу; к — кількість символів до початку зони в слові, яке розри­вається переносом.

Ймовірність попадання в зону першого переносу

де їІ — довжина частини складу, який потрапляє в зон}'. Для другого переносу: