KIM JESTEM
Aby zbytnio się nie rozpisywać ujmę to tak: aby zarobić na studia informatyczne (informatyka stosowana na WSPiA w Lublinie - specjalność programowanie) podjąłem pracę jako grafik/specjalista DTP w niewielkiej drukarni. Po skończeniu szkoły zamiast zacząć pracę w nowym zawodzie zostałem przy grafice. W 2021 roku postanowiłem jednak wrócić do programowania. Odświeżyłem starą wiedzę ze studiów i opanowałem nowinki w programowaniu stron i systemów internetowych. 20-letnie doświadczenie w grafice/DTP oraz znajomość nowoczesnych technik programowania świetnie sprawdza się w automatyzacji pracy w DTP i grafice. Swoją pracę już zautomatyzowałem - teraz mogę pomóc Tobie.
USŁUGI
Przegląd Usług
Zautomatyzuj swój proces twórczy
Najwięcej czasu spędziłem z programem Adobe InDesign, więc tutaj pomogę najszybciej i najlepiej. Gruntowna wiedza programistyczna pozwala mi jednak na wiele więcej. Zautomatyzuję także Photoshopa, Illustratora, Corel Draw, Microsoft Office czy Google Docs i wszystko inne oparte na JavaScript i Visual Basic for Applications. Mogę także znacznie usprawnić przepływ informacji pomiędzy tymi aplikacjami.
Zakres Usług:
- Automatyzacja Procesów: Tworzenie skryptów automatyzujących codzienne zadania, co pozwala na skoncentrowanie się na kreatywnych aspektach pracy.
- Rozszerzenie Funkcjonalności: Opracowywanie wtyczek dodających nowe funkcje do Adobe InDesign. Jeżeli będzie trzeba to zaprzęgnę do pracy także sztuczną inteligencję.
- Integracja Danych: Łączenie Adobe InDesign z zewnętrznymi źródłami danych, co ułatwia pracę z dużymi ilościami informacji. Masz bazę danych, arkusz kalkulacyjny, plik JSON, XML, CSV, API? Wszystko to mogę zintegrować z Twoim InDesignem.
- Ekstrakcja Danych: Tworzenie skryptów umożliwiających ekstrakcję danych z wielu dokumentów Adobe InDesign, co pozwala na łatwe umieszczanie treści online i zarządzanie dużymi projektami wydawniczymi.
- Wsparcie i Aktualizacje: Ciągłe wsparcie techniczne oraz aktualizacje, zapewniające, że Twoje narzędzia są zawsze na bieżąco i działają bez zakłóceń.
KORZYŚCI
Redukcja Kosztów
Automatyzując swoją pracę, zaoszczędzisz czas a czas to pieniądz.
Zwiększona Jakość
Automatyzując powtarzające się i pracochłonne zadania poprawisz jakość swoich projektów poprzez wyeliminowanie ryzyka popełnienia błędów.
Spersonalizowane Rozwiązania
Otrzymasz narzędzia w pełni dostosowane do Twoich potrzeb, zapewniające płynną integrację z istniejącymi procesami i zwiększające produktywność.
Ekspertyza i Doświadczenie
Skorzystasz z mojego 20-letniego doświadczenia w projektowaniu graficznym i ekspertyzy w programowaniu www, zapewniając sobie niezawodne i wysokiej jakości rozwiązania.
Ciągłe Wsparcie
Uzyskasz dostęp do ciągłego wsparcia i aktualizacji, zapewniając, że Twoje narzędzia pozostają skuteczne i na bieżąco z najnowszymi funkcjami Adobe InDesign i trendami branżowymi.
Proces Współpracy
1. Konsultacja
Rozpoczynamy od szczegółowej konsultacji, aby zrozumieć Twoje
potrzeby i wymagania dotyczące wtyczki lub skryptu do Adobe
InDesign. Na tym etapie dokonuję wyceny o po Twojej akceptacji i
wpłacie zaliczki przystępuję do pracy. W przypadku bardziej
skomplikowanych rozwiązań mogę poprosić o dostarczenie dodatkowych
informacji lub materiałów. W przypadku prostych rozwiązań wystarczy
krótki opis wymaganej funkcjonalności - skorzystaj w tym celu z
formularza na dole tej strony. Jeżeli chcesz porozmawiać - użyj zakładki
Kontakt,
aby umówić się na konsultację.
2. Projektowanie
Na podstawie zebranych informacji tworzę szczegółowy plan i projekt rozwiązania, który spełnia Twoje oczekiwania.
3. Rozwój
Przystępuję do kodowania i tworzenia wtyczki lub skryptu, regularnie informując Cię o postępach prac. Często na tym etapie zachodzi konieczność dostarczenia dodatkowych informacji lub materiałów, więc bądź w kontakcie.
4. Testowanie
Przeprowadzam dokładne testy, aby upewnić się, że rozwiązanie działa zgodnie z założeniami i jest wolne od błędów. Następnie wysyłam Ci wersję testową do sprawdzenia. Wspólnie wprowadzamy ewentualne poprawki.
5. Wdrożenie
Po zakończeniu testów pomagam wdrażyć wtyczkę lub skrypt do Twojego środowiska pracy, zapewniając płynną integrację. Sprowadza się to zazwyczaj do pomocy w zainstalowaniu skryptu, czy wtyczki w odpowiednim miejscu na dysku twardym i/lub w odpowiednim folderze InDesigna. W przypadku bardziej skomplikowanych rozwiązań mogę pomóc w konfiguracji i dostosowaniu rozwiązania do Twoich potrzeb.
6. Wsparcie
Oferuję ciągłe wsparcie i aktualizacje, aby zapewnić, że rozwiązanie pozostaje skuteczne i zgodne z najnowszymi trendami.
Ile kosztuje automatyzacja Adobe InDesign?
Każdy przypadek wyceniam indywidualnie i poniższe informacje są jedynie orientacyjne.
Prosty skrypt
Proste skrypty to takie, które wykonują jedno zadanie, np. dodanie określonego nagłówka do każdej strony dokumentu, podmiana grafiki na inną etc. Koszt takiego skryptu zaczyna się od 120 zł.
Średnio skomplikowany skrypt lub prosty plugin
Skrypty średnio skomplikowane to takie, które wykonują kilka zadań. Koszt takiego skryptu zaczyna się od 400 zł.
Aby uzyskać dokładną wycenę, skontaktuj się ze mną, a ja przygotuję dla Ciebie indywidualną ofertę.
zaawansowany skrypt lub wtyczka
Zaawansowane skrypty lub wtyczki to takie, które wykonują wiele zadań i wymagają zintegrowania z innymi narzędziami. Koszt takiego skryptu zaczyna się od 1600 zł. W tym przypadku szczególnie ważna jest konsultacja i indywidualna wycena.
Przykłady skryptów
Poniżej znajdziesz wybrane przykłady skryptów i wtyczek, które stworzyłem do tej pory. Daj się zainspirować ogromnymi możliwościami automatyzacji pracy z programem Adobe InDesign.
Dane wejściowe:
- dokumenty .indd
Rozwiązanie:
Skrypt, który po uruchomieniu tłumaczy cały aktualnie otwarty dokument InDesigna wg zadanych parametrów. Okno dialogowe wyświetla informacje na temat aktualnie dostępnego limitu znaków (płatnego lub darmowego) oraz szacowaną liczbę znaków w otwartym dokumencie. Okno dialogowe daje również możliwość wybrania języka źródłowego i docelowego.Dostarczono:
- skrypt
- plik konfiguracyjny w formacie JSON zawierający domyślne parametry trybu pracy DeepL oraz miejsce, w którym należy umieścić własny klucz API DeepL
Problem:
Irina przygotowała w InDesignie zestaw 5 e-booków w różnych wersjach językowych umieszczonych na oddzielnych warstwach. Potrzebuje szybkiego sposobu, żeby cały zestaw spersonalizować pod konkretnego klienta. Personalizacja ma obejmować:
- podmianę logotypu umieszczonego w różnych miejscach (logotypy są w 2 wersjach dostosowanych do jasnego i ciemnego tła),
- zmianę wersji językowej dokumentu (poprzez zmianę widoczności odpowiednich warstw w dokumencie)
- zmianę głównego motywu kolorystycznego
- zaktualizowanie spisu treści
Gotowe e-booki mają być w formacie PDF o określonych parametrach oraz mają mieć aktywny (klikalny) spis treści.
Dane wejściowe:
Folder z wzorcami e-booków (pliki .indd, .indb oraz pliki graficzne) Dla każdej spersonalizowanej wersji potrzeba:
- 2 logotypów w wersji ciemnej i jasnej,
- informacji o wersji językowej
- informacji o kolorze jaki ma być głównym motywem książek
Rozwiązanie:
Skrypt, który po uruchomieniu poprosi o podanie lokalizacji folderu z danymi wejściowymi a następnie wygeneruje e-booki.
Folder z danymi wejściowymi musi zawierać:
- podfoldery z wzorcami książek, których nazwy muszą być w formacie [numer]_[nazwa] np. 123_book 1
-
podfolder "Input" zawierający 1 lub więcej folder/ów z
informacjami o personalizacji dla klienta/ów. Każdy z tych
folderów:
- musi mieć nazwę w formacie [nazwa]_[kod jezyka]_[kod HEX RGB koloru] np. Coca Cola_DE_fa7ca3
- musi zawierać 2 logotypy w formacie .png nazwane "dark.png" i "light.png"
Przed wygenerowaniem e-booków skrypt analizuje całość danych wejściowych i w przypadku błędów tworzy ich listę w pliku txt prosząc o ich skorygowanie.
Skrypt sprawdza dane pod kątem:
- kompletności wzorców (obecność plików .indd, indb oraz brakujących linków w tych plikach)
- kompletności i poprawności danych o personalizacji
W przypadku braku błędów skrypt tworzy w podanym folderze podfolder "Output" zawierający gotowe e-booki.
Dostarczono:
- skrypt
- instrukcja instalacji, obsługi, i sposobu przygotowania danych
- kilka folderów z przykładowymi danymi
Problem
Rafał potrzebuje szybkiego sposobu na zaktualizowanie szablonów (stron wzorcowych) użytych w dokumencie. Chce dodawać do nich elementy bezpośrednio ze strony, którą aktualnie edytuje, gdyż przełączanie się na stronę wzorcową w tym celu może zakłócić jego proces twórczy. Dodatkowo trzeba potem wrócić na ostatnio edytowaną stronę, co w długich dokumentach jest trochę uciążliwe.
Dane wejściowe
- dokument .indd
Rozwiązanie
Niewielki skrypt, który po uruchomieniu dodaje zaznaczony element/ty do szablonu, który jest użyty na aktualnie edytowanej stronie, co w rezultacie powoduje dodanie elementu do wszystkich stron, na których dany szablon był zastosowany.
Dostarczono
- skrypt
Problem
Johann potrzebuje szybko stworzyć 1000+ kart imiennych ze zdjęciem i krótkim tekstem. Nie może wykorzystać wbudowanej funkcji InDesigna "Scalanie Danych" bo teksty, które mają być umieszczone na kartach mają różną długość i trzeba dopasować formatowanie tak, aby tekst się zmieścił
Dane wejściowe
- Folder ze zdjęciami, które mają numer w nazwie
- specjalnie przygotowany przez Johanna plik excela zawierający dane w formacie: nr_zdjęcia;opis;imię_nazwisko
Rozwiązanie
Skrypt, który prosi o podanie lokalizacji danych wejściowych wyświetlając proste okno dialogowe a następnie generuje dokument. Johann może samodzielnie dostosować formatowanie tekstu modyfikując istniejące style w dostarczonym szablonie. Może także zmienić wygląd poszczególny elementów karty modyfikując elementy w dostarczonej bibliotece.
Dostarczono:
- skrypt,
- szablon karty ze zdefiniowanymi stylami,
- biblioteka zawierająca elementy, których skrypt używa do generowania karty.
Problem
Ron potrzebuje przygotować wzornik kolorów w programie InDesign. Ma to być ponad 300-stronnicowa książeczka zawierająca wzory ponad 2000 kolorów. Ręczne wykonanie jest możliwe ale bardzo pracochłonne i przede wszystkim bardzo podatne na pomyłki. Ron przygotował informacje o kolorach w formie pliku XML, który wygenerował w zewnętrznej specjalistycznej aplikacji oraz plik Excela z informacjami o tym jaki kolory umieścić na której stronie.
Dane wejściowe
- szablon książki w pliku .indd
- XML z informacjami o kolorach
- CSV z informacjami o tym jakie kolory na której stronie
Rozwiązanie
Skrypt, który po uruchomieniu generuje wzornik kolorów na podstawie określonego przez Rona szablonu.
Dostarczono
Gotowe wzorniki w formacie PDF i pliki .indd zgodnie z zamówieniem.
Problem
Benjamin przetwarza rocznie około 1000 dokumentów InDesigna rocznie. Są to ulotki informacyjne lub reklamy. Jego praca polega na przygotowaniu dokumentów do tłumaczenia na inne języki na zewnętrznej platwormie, która przetwarza pliki automatycznie.
Aby dokumenty zostały przetworzone poprawnie muszą spełniać szereg wymagań. Dokumenty, którymi się zajmuje można podzielić na 2 kategorie ze względu na sposób przetwarzania:
- master - dokumenty źródłowe
- local - dokumenty już przetłumaczone ale nadal zawierające błędy W zależności od rodzaju dokumentu trzeba wykonać różne czynności.
Dokumenty "master" wymagają:
- skonwertowania załączonych grafik do formatu jpg lub png oraz zmniejszenia ich rozdzielczości w razie potrzeby aby nie zajmowały zbyt dużo miejsca na platformie
- naprawienia brakujących linków; funkcja ta ma dodatkowo zmienić nazwy wszystkich plików na numery kolejne, aby zapobiec zerwaniu linku podczas dalszego przetwarzania na platformie
- naprawienia uciętych tekstów (nie mieszczących się w ramkach)
- dodania wszystkich kolorów użytych w dokumencie do panelu "Próbki" w InDesignie poprzez ich nazwanie w określony sposób
- usunięcia wszystkich obecnych w dokumencie tagów XML oraz zapisania dokumentu
Dokumenty "local" dodatkowo wymagają:
- naprawienia brakujących znaków diakrytycznych poprawienia widoczności tekstu w kolorze czarnym, który jest umieszczony na ciemnym tle
Benjamin jest byłym programistą i z pomocą chat GPT przygotował skrypty znacznie ułatwiające mu pracę, ale nie jest do końca z nich zadowolony. Chciałby je scalić w jedno rozwiązanie i poprawić ich działanie oraz rozszerzyć o dodatkowe funkcje. Bardzo zależy mu na ergonomii i profesjonalnym wyglądzie dostarczonego rozwiązania, bo chce aby korzystali z niego także inni.
Dane wejściowe
- pliki .indd
Rozwiązanie
Plugin UXP z własnym panelem integrujący się w interfejs użytkownika programu InDesign. Pozwala on wybrać rodzaj dokumentu lub dokumentów, które będą przetwarzane (master lub local), zakres plików, które będą przetworzone (aktywny dokument lub wszystkie otwarte dokumenty) oraz zakres zmian, jakie mają zostać wykonane na wybranych dokumentach. Po kliknięciu przycisku "Run checks" plugin przetwarza dokumenty.
Wszystkie ewentualne błędy lub informacje o tym, że dany dokument nadal wymaga manualnej edycji są zapisywane w pliku tekstowym aby nie przerywać pracy oknami dialogowymi. Po zakończeniu przetwarzania plugin wyświetla informację o bezbłędnym przebiegu lub wystąpionych błędach odsyłając po szczegóły do ww. pliku.
W trybie "local" plugin wyświetla 2 dodatkowe opcje możliwych modyfikacji. Jedną z nich jest możliwość przeskanowania dokumentu pod kątem niewidzialnych czarnych napisów.
W przypadku, gdy zostaną wykryte informacja o tym jest umieszczana w logu tekstowym. Użytkownik może następnie skorygować tego typu błędy w trybie półautomatycznym, który polega na tym, że po kliknięciu przycisku "Find Invisible Black Texts" plugin wyszukuje wszystkie tego typu błędy w aktualnie otwartym dokumencie i za pomocą przycisków "Prev" "Next" pozwala je lokalizować w dokumencie robiąc zbliżenie i zaznaczając daną ramkę tekstową. Użytkownik może szybko nadać tekstowi w ramce jeden z 4 zdefiniowanych wcześniej przez Benjamina kolorów lub za pomocą przycisku "Select text" zaznaczyć tekst w ramce, aby nadać mu dowolny kolor z palety.
Dodatkowo plugin dostosowuje swój wygląd do aktualnie wybranego w InDesignie motywu kolorystycznego.
Problem
Cruisin' News potrzebuje sposobu na uzyskanie ich kalendarza lokalnych wydarzeń publikowanego online w formie dokumentu InDesign. Ręczne tworzenie dokumentu jest bardzo czasochłonne, żmudne i podatne na pomyłki. Mają dane w bazie, z której mogą korzystać w dowolny sposób. Dane przed ułożeniem w szablon muszą być uprzednio przetworzone według zaleceń klienta (grupowanie i oczyszczenie z niepotrzebnych treści), a następnie sformatowane w ściśle określony sposób, który będzie łatwy do edytowania.
Dane wejściowe
- plik XML wygenerowany w zewnętrznej aplikacji
Rozwiązanie
Skrypt, który po uruchomieniu prosi o lokalizację pliku XML z danymi a następnie generuje kalendarz w programie InDesign. Skrypt korzysta z szablonu ze zdefiniowanymi stylami tekstu, które można łatwo zmienić.
Dostarczono:
- skrypt
- pusty szablon kalendarza ze zdefiniowanymi wszystkimi stylami tekstu w formie pliku .indd
Problem
Victoria ma dwa dokumenty PDF (dokument A i dokument B) i potrzebuje je scalić w jeden w ten sposób, że strony z każdego z dokumentów są umieszczone w nowym dokumencie naprzeniennie (strony z dokumentu A na stronach parzystych w nowym dokumencie a strony z dokumentu B na nieparzystych). Dodatkowo strony z dokumentu A trzeba obrócić o 90 stopni.
Dane wejściowe:
2 pliki PDF z taką samą ilością stron z informacjami umieszczonymi w takiej samej kolejności.
Rozwiązanie
Krótki skrypt, który prosi o lokalizację obu dokumentów PDF a następnie generuje nowy dokument indesign na ich podstawie.
Problem
Adam ma setki specyfikacji produktów wykonanych w formie plików InDesigna. Wszystkie mają jednakową stopkę z danymi firmowymi, która jest wykonana jako odzielny plik .indd i podlinkowana we wszystkich specyfikacjach. Po każdorazowej zmianie danych firmowych w stopce musi odświeżyć link do stopki w każdym z dokumentów i wygenerować na nowo plik PDF. To czasochłonne i nudne zadanie i Adam chciałby to zrobić automatycznie. Adam chce mieć możliwość kontrolowania czynności, które wykona skrypt: aktualizacja linków w plikach zapisanie zmienionego pliku wyeksportowanie do PDF opcjonalne przetwarzanie plików w podfolderach Adam chce także mieć możliwość wyboru predefiniowanych ustawień eksportu pliku PDF.
Dane wejściowe
- całe drzewo folderów zawierających specyfikacje produktów w plikach .indd
Rozwiązanie
Skrypt, który po uruchomieniu wyświetla okno dialogowe dające możliwość wybrania folderu ze specyfikacjami i wybrania opcji dotyczących sposobu działania.
Dostarczono
- skrypt
Problem
Stanley ma 3304 artykuły stworzone w InDesignie i potrzebuje je wszystkie przenieść online. Otrzymał informację, że potrzebuje treści zawartych w tych artykułach w formie plików XML. Dodatkowo nie wszyskie informacje zawarte w plikach .indd mają się znaleźć w wynikowych plikach XML. Chce aby została pominięta część tekstów sformatowana określonymi stylami, określoną wielkością pisma lub kombinacją obu. Artykuły są napisane w dwóch wersjach językowych i dodatkowo trzeba to rozdzielić do osobnych plików według języka. Teoretycznie wersje językowe powinny być oznaczone stylami akapitowymi oznaczającymi język, w jakim są napisane, ale w praktyce często tak nie jest i nie można na tym polegać w 100%. Dodatkowym wymogiem jest dodanie w pliku XML ściśle określonego identyfikatora. Identyfikatory ma w przygotowanym wcześniej pliku CSV zawierającym dane w formacie TYTUŁ ARTYKUŁU;ID. Trzeba identyfikatory przyporządkować na podstawie tytułu. Tutaj także pojawia się problem ponieważ tytuły w pliku CSV nie zawsze dokładnie odpowiadają temu, co znajduje się w plikach .indd. Ponadto występuje problem z różnym kodowaniem znaków specjalnych w CSV i .indd. Różne partie plików .indd są przygotowane w nieco odmienny sposób i potrzebna jest także możliwość wybrania sposobu w jaki skrypt ma te dane przetworzyć dla uzyskania najlepszych wyników. Stanley próbował samodzielnie stworzyć skrypt z pomocą chat GPT, ale nie uzyskał zadawalających wyników i stracił dużo czasu danego mu przez klienta na wykonanie zlecenia, co spowodowało, że potrzebuje chociaż części tych danych XML "na wczoraj".
Dane wejściowe
-
tysiące plików .indd CSV z identyfikatorami
Rozwiązanie
Rozbudowany skrypt, który po uruchomieniu wyświetla okno dialogowe pozwalające wybrać algorytm pracy skryptu i generuje pliki XML na podstawie plików umieszczonych w określonym folderze oraz danego pliku CSV. Do rozpoznania języka w jakim napisane są treści skrypt używa sztucznej inteligencji DeepL, natomiast do bardziej skutecznego wyszukania identyfikatora na podstawie tytułu skrypt używa m.in. algorytmu "Odległość Levenshteina" uprzednio korygując kodowanie znaków specjalnych. Głównym silnikiem skryptu jest wbudowany w InDesignie mechanizm przetwarzania danych XML, który dba o ich poprawność i pozwala korzystać z technologii XSLT do modyfikowania sposobu, w jaki treści mają być przetwarzane. Dodatkowo skrypt posiada zaawansowany system obsługi błędów informujący użytkownika w czytelny sposób o zaistniałym problemie (problemy z połączeniem DeepL, odczytem plików itp.). Pierwszą uproszczoną wersję skryptu (bez obsługi błędów, DeepL i algorytmu Levenshteina) Stanley otrzymał już po kilku dniach. Wersja ta jednak generowała pliki XML wymagające manualnej korekty. Stanley otrzymał wsparcie dotyczące jak to robić i jakiego oprogramowania użyć dla możliwie najszybszego i zadawalającego efektu. Dostarczony przez Stanleya własny skrypt wygenerowany przez chat GPT niestety okazał się przydatny tylko w niewielkim stopniu a próby jego naprawy spowodowały dodatkowe niepotrzebne opóźnienie.
Dostarczono
- skrypt UXP
- szablony XSLT definiujące przetwarzanie plików XML dla obu wersji językowych
- szerokie wsparcie dotyczące całego procesu przetwarzania danych i rozwiązywania ewentualnych problemów
Masz pytania?
Zajrzyj do FAQ. Na pozostałe pytania chętnie odpowiem w ciągu 24h.