Компоненти для Lazarus - Записки журналіста-програміста
На цій сторінці зібрані посилання на різні компоненти, що дозволяють розширити можливості Lazarus та прискорити розробку програм. Адже як відомо, програмісти — народ лінивий, і вони (ми) вважають за краще не винаходити велосипеда, по можливості використовуючи вже готові рішення.
Мультимедіа
Audio Component Suite — колекція компонентів для розробки програм, що працюють з аудіо-даними (відтворення/запис/обробка). Може відтворювати wav, ogg, mp3, mp2, wma та інші формати, записувати звук із будь-якого джерела, «грабувати» та багато іншого.PortAudio — проект крос-платформного Audio API, доступний для Windows, Mac OS X, Unix (OSS/ALSA), SGI та BeOS. Містить враппери, що дозволяють працювати з бібліотеками C, а також приклади використання PortAudio DLL в Lazarus LCL під Windows. Враппер для portaudio.dll взятий із Sourceforge-проекту UltraStar.UltraStar Deluxe — заголовні файли до різних бібліотек для Windows, Linux та Mac OS X (з деякими скороченнями): portaudio, BASS, ffmpeg, SDL, libpng, FreeImage, freetype, JEDI-SDL, Lua , midi, pcre, portmixer, projectM, samplerate, SQLite, zlib, fft.RackCtls — колекція компонентів для роботи з Hi-fi-системами.mpg123.dll - крос-платформний декодер форматів MPEG layers 1, 2 та 3 (MP3 протестований погано); приклад приклад містить два враппера, протестованих тільки під Win32.
Графіка та ігри
Graphics32 - набір компонентів для роботи з графікою. Включає функціональнішу реалізацію TImage (TImage32).Kambi VRML game engine - движок 3D-ігри, орієнтований насамперед на формати VRML/X3D.GLScene — повноцінна бібліотека 3D-графіки, яка використовує для рендерингу OpenGL. Дозволяєредагувати 3D сцени безпосередньо з IDE (офіційний сайт).TOpenGLBox - каркасний OpenGL-компонент для Lazarus, що реалізує область рендерингу OpenGL.LazRGBGraphics - пакет для швидкої обробки зображень та маніпуляції пікселями (такими як scan line) у пам'яті.TMetafile/TMetafileCanvas - реалізація EnhMetafile API для Windows.FreeImage — відкрита бібліотека, що забезпечує підтримку популярних графічних форматів, таких як PNG, BMP, JPEG, TIFF та інших (працює у Windows, Linux та Mac OS X). Включає PicViewer — приклад програми (тільки для Windows), що показує зображення за допомогою цієї бібліотеки (DLL).
Інструменти
FpSystools - адаптація Kylix-пакету TurboPower Systools для Lazarus/FPC.DCPcrypt - бібліотека криптографічних компонентів DCPcrypt.RXfpc - деякі з компонентів RXlib, конвертовані на Lazarus.MultiLog - система ведення логів, розроблена для FPC-Lazarus.OnGuard - порт Turbo Power OnGuardUniqueInstance - компонент, що блокує запуск більш ніж однієї копії програми (див. також приклад використання та файловий архів).XDev Toolkit - крос-платформний пакет інструментів для розробників.MouseAndKeyInput - юніт для платформо-незалежного управління введенням за допомогою миші та клавіш.PascalSane — бинд API для сканера (libsane) з прикладом використання.log4delphi - система ведення логів, заснована на log4j.fppkggui - простий gui для fppkg.SymScan - інтерфейс сканера штрих-кодів для пристроїв серій Symbol/Motorolla MC.Theodp - інструменти для роботи з UTF-8.
Zlibar — об'єкти для створення та розпакування архівів zlib, що містять декількафайлів.Lazarus Zlib - клас-обгортка для зручної роботи з zlib-архівами.FreePascalArchivePackage — адаптація бібліотеки TurboPower Software Abbrevia для Free Pascal Compiler.ZipFile — компонент для інкапсуляції zip-файлів (з архівом можна працювати як із звичайною файловою системою).libtar - клас для роботи з .TAR-архівами від Stefan Heymann; може використовуватися разом із zstream для створення файлів .tar.gz.bzip2lib - потокові класи для стиснення та розпакування bzip2.
BeepFp - framework для протоколу BEEP.Sockets - компоненти для роботи з сокетами TCP/IP.lNet — набір компонентів, які забезпечують просту, однопотокову керовану подіями реалізацію протоколів, починаючи з TCP і UDP, і до SMTP і HTTP. lNet не використовує ніяких зовнішніх бібліотек і легко портується на нові платформи.FPC та Apache Modules — заголовні файли для створення модулів до Apache на FPC.Web Services Toolkit - пакет для роботи з веб-сервісами.Internet Tools - клас для отримання та парсингу html-сторінок, а також автооновлення.Brain Patchwork DX, LLC. — порт візуальної та невізуальної реалізації клієнта та сервера TCP/UDP для Lazarus 0.9.22/FPC 2.0.4.Synapse — бібліотека для роботи з протоколом TCP/IP.Indy for Lazarus project — 119 компонентів Indy для FPC/Lazarus (проект заморожений).Indy with Lazarus — адаптація Indy9 та Indy10 для Lazarus (ще одна спроба).
Бази даних
StringHashMap - контейнер String -> Pointer. Швидкий та витрачаючий мінімум пам'яті.Runge-Kutta - науковий компонент для інтеграції диференціальних рівнянь із використанням подій.CsvDocument — робота з CSV файлами звикористанням парсера або "клітинного" інтерфейсу на кшталт того, що використовується в компоненті StringGrid.
EpikTimer - точний таймер, написаний спеціально для Lazarus.Manager Worker Threads System - менеджер потоків, що дозволяє обробляти численні об'єкти та дані в реальному часі.TrayIcon — крос-платформний компонент для створення піктограми програми в системному треї.TPopupNotifier - компонент, що показує підказки у вигляді хмари (balloon).MultiDoc - компонент для написання псевдо-MDI додатків у Lazarus.MDButtonsBar — ButtonsBar для компонента MultiDoc.MPICH - біндинги для MPI (Message Passing Interface).
Візуальні компоненти та інтерфейс
Діаграми та графіки
Доступ до «заліза»
NIDAQmxBase — модуль для використання пристроїв National Instruments за допомогою бібліотеки NI DAQmx Base (не більше бібліотеки NI DAQmx).PascalSCADA — набір компонентів для спрощення розробки програм HMI/SCADA, що взаємодіють з PLC або іншими промисловими пристроями.CUPS для Lazarus project - реалізація Common UNIX Printing System для FPC/Lazarus.Bluetooth — доступ до пристроїв Bluetooth (наприклад, Wiimote).