Зображення для підручника

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

Інструменти для створення знімків вікон

Якщо вам потрібно зробити знімок вікна із усіма бічними панелями та інструментами, поради розділу Зберігання для інтернету не дуже допоможуть. Там ви знайдете лише настанови щодо того, як зберегти вміст полотна!

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

Windows

У Windows передбачено вбудований інструмент створення знімків вікон. Типово, його можна викликати натисканням клавіші PrtSc. На ноутбуках вам іноді доведеться скористатися клавішею Fn.

Linux

У GNOME і KDE є якісні програми для створення знімків вікон, які, типово, спрацьовують у відповідь на натискання клавіші PrtSc. Те саме можна сказати і про інші популярні стільничні середовища. Якщо з якоїсь причини у вас немає програми для створення знімків,

ImageMagick

Якщо користуватиметеся imagemagick, запам’ятайте таку команду:

import -depth 8 -dither <назва_файла.png>

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

Для створення невеличких анімацій у GIF можете скористатися такими програмами:

  • Peek — для цієї програми передбачено пакунок AppImage, вона має дуже простий інтерфейс. Як і багато інших програм для запису з екрана, має проблеми із Wayland.

macOS

Комбінацією клавіш для створення знімків вікон у macOS є Shift + Command + 3, відповідно до офіційної документації Apple.

Формат файлів, який відповідає завданню

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

Знімки графічного інтерфейсу

Такі зображення має бути збережено у форматі PNG і, якщо можливо, у GIF.

Зображення, на яких багато одноколірних областей.

Для таких зображень слід використовувати PNG.

Зображення у відтінках сірого

Такі зображення слід зберігати у форматі GIF або PNG.

Зображення із багатьма переходами кольорів

Такі зображення слід зберігати у форматі JPG.

Зображення зі значними прозорими областями.

Для таких зображень слід використовувати PNG.

Логіку вибору пов’язано зі способом, у який у кожному з форматів зберігаються кольори. JPEG ідеальні для фотографій та зображень із багатьма градієнтами через інший формат стискання. Втім, у JPEG не дуже добре виконується обробка контрастів. PNG набагато краще зберігає зображення із різкими контрастами. Інколи контрастних кольорів може бути менше за 256. У таких випадках, можливо, краще використати GIF.

Зображення у тонах сірого, навіть якщо на них є значна варіація градієнтів, слід зберігати у PNG. Причина полягає у тому, що коли ми використовуємо повноколірні зображення, ми, залежно від зображення, використовуємо від 3 до 5 чисел для опису значень кольорів, а кожне з цих чисел може містити будь-яке з 256 значень. У JPEG та інших форматах файлів із втратою якості використовують різні вигадливі психологічні трюки для зменшення обсягу значень, потрібних для показу даних зображення. Втім, коли ми створюємо зображення у тонах сірого, нам потрібні лише дані щодо освітленості кольорів. Освітленість має одну числову характеристику, яка може мати 256 значень, що спрощує використання GIF або PNG, замість JPEG, використання якого може призвести до прикрих дефектів (а також отримати набагато менш об’ємні файли).

Якщо маєте сумніви, використовуйте PNG.

Оптимізація зображень за якістю та розміром

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

Windows

Рекомендованим інструментом для цієї мети у Windows є IrfranView, але автор цього підручника не знає, що саме слід для зробити для досягнення мети.

Крім того, можна скористатися PNGCrush, як про це згадується у розділі щодо linux.

Linux

Оптимізація PNG

Існує повний список інструментів для оптимізації PNG, якими можна скористатися у Linux. Інструменти можна поділити на дві категорії: оптимізатори із втратами (з використанням психологічних трюків) та оптимізатори без втрат (зі спробами стиснути дані у ліпший спосіб). Втім, рекомендованими є такі інструменти:

PNGQuant

Засіб стискання PNG використовує методики зберігання зображення із втратою якості для розумного зменшення кількості кольорів.

Щоб скористатися PNGquant, перейдіть до вибраної вами теки і віддайте таку команду:

pngquant --quality=80-100 зображення.png

де image слід замінити назвою файла зображення. Коли ви натиснете Enter у теці зі стиснутими результатами з’явиться нове зображення. PNGQuant працює для більшості зображень, але для деяких зображень, зокрема зі знімками засобів вибору кольору, він не працює. Тому слід двічі перевірити, чи якісно виглядає зображення. Якщо це не так, слід спробувати один з таких варіантів:

PNGCrush

Засіб стискання PNG без втрат. Користування:

pngcrush зображення.png результа_оптимізації.png

Буде виконано спробу використатися найбільш типові методи. Додайте -brute, щоб наказати програмі спробувати усі методи.

Optipng

Ще одним інструментом стискання PNG без втрат, яким можна скористатися після використання PNGQuant, є відгалуження png crush. Користування:

optipng зображення.png

де «image» є назвою файла. OptiPNG виконає спробу використати декілька алгоритмів стискання та перезапише файл image.png оптимізованою версією. Ви можете заборонити перезапис за допомогою параметра --out imageout.png.

Оптимізація GIF

Оптимізація JPEG

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

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

macOS

  • ImageOptim — графічний інтерфейс до засобів командного рядка, зокрема PNGquant та gifski.

Редагування метаданих файла

Іноді, до файлів зображення вбудовуються деякі особисті дані. А іноді, нам самим потрібно вбудувати певні дані для поліпшення документування файла.

Існує не менше 3-4 різних способів роботи з метаданими. Крім того, обробка метаданих у різних типах файлів відбувається у різний спосіб.

Найпоширенішим інструментом для редагування метаданих є ExifTool. Ще одним інструментом редагування є ImageMagick.

Windows та macOS

Щоб встановити exiftool, просто отримайте пакунок із сайта.

Linux

У Linux ви можете встановити exiftool.

Debian/Ubuntu

sudo apt-get install libimage-exiftool-perl

Перегляд метаданих

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

exiftool зображення

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

Ви можете скористатися identify з ImageMagick:

identify -verbose зображення

Вилучення метаданих

Вилучити метадані, наприклад, з файла image.png, можна такою командою:

ExifTool

exiftool -all= image.png

Ця програма спорожнює усі мітки, які може бути встановлено за допомогою exiftool. Ви також можете наказати їй спорожнити лише певну мітку: exiftool -author= image.png

OptiPNG

optipng -strip image.png Ця команда вилучить зайві дані і виконає стискання файла png.

ImageMagick

convert image.png –strip

Видобування метаданих

Іноді потрібно видобути метадані, зокрема профіль ICC, до вилучення зайвого. Це можна зробити перетворенням зображення до типу профілю:

Convert з ImageMagick

Спочатку видобуваємо метадані до профілі перетворенням:

convert зображення.png профіль_зображення.icc

Далі, вилучаємо з файла зайві дані і повторно додаємо дані з профілю:

convert -profile профіль_зображення.icc зображення.png

Вбудовування описових метаданих

Метадані опису є насправді корисними для тих, хто користуватиметься засобами читання тексту з екрана. Браузери часто намагаються використовувати метадані опису, якщо для зображення не визначено текстового теґу alt для створення даних альтернативного текстового запису. Іншими даними, які ви, можливо, захочете вбудувати, є даними простору кольорів.

ExifTool

ImageMagick

Встановлення значення exif:

convert -set exif:ImageDescription "Опис зображення" зображення.png змінене_зображення.png

Встановлення фрагмента PNG для опису:

convert -set Description "Опис зображення" зображення.png змінене_зображення.png

Вбудовування метаданих щодо ліцензування

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

Використання властивостей

Ви можете скористатися полем dcterms:license для визначення документа із умовами ліцензування.

ImageMagick

Для GDPL:

convert -set dcterms:license "GDPL 1.3+ https://www.gnu.org/licenses/fdl-1.3.txt" зображення.png

Це визначає стенографічну назву, а потім текст умов ліцензування.

Для Creative Commons BY-SA 4.0:

convert -set dcterms:license "CC-BY-SA-4.0 https://creativecommons.org/licenses/by-sa/4.0/" зображення.png

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

Використання XMP

На сайті creative commons пропонують скористатися для цього XMP. Ви можете попросити Creative Commons License створити відповідний файл XMP, коли вибиратимете умови ліцензування.

Маємо скористатися мітками XMP для exiftool.

Отже, це виглядатиме десь так:

exiftool -Marked=true -License="https://creativecommons.org/licenses/by-sa/4.0" -UsageTerms="This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/">Creative Commons Attribution-ShareAlike 4.0 International License</a>." -Copyright="CC-BY-SA-NC 4.0" зображення.png

Іншим способом виконати позначення є такий:

exiftool -Marked=true -License="https://creativecommons.org/licenses/by-sa/4.0" -attributionURL="docs.krita.org" attributionName="kritaManual" зображення.png
У imagemagick ви можете знову скористатися параметром профілю.

Спочатку видобуваємо дані (якщо такі є):

convert зображення.png метадані_зображення.xmp

Далі, вносимо зміни до файла-результату і вбудовуємо дані зображення:

convert -profile метадані_зображення.xmp зображення.png

Визначення XMP за умовами ліцензування. Ви можете створити файл XMP для метаданих на сайті creative commons.