niedziela, 2 czerwca 2013

I'm officially a Vaadin 7 Certified Developer! Check out my certification page: https://vaadin.com/certificate/-/view/d2c29f78087355ab26fdb602b0cd3ceb

środa, 10 kwietnia 2013

How to configure gradle sourcesets so that .groovy and .java files can be in one directory

This small snippet below makes it possible to have .groovy and .java files both in /src/main/java or /src/test/java:
sourceSets {
 //override default project structure to make it possible to have .groovy files in src/*/java
 main {
  groovy { srcDir 'src/main/java' }
  java { srcDirs = []}
 }
 test {
  groovy { srcDir 'src/test/java' }
  java { srcDirs = []}
 }
}

wtorek, 24 maja 2011

Eksportowanie PDFów w tle w InDesign CS5 - część II.

Mimo, że eksport do pliku PDF w tle możemy kontrolować za pomocą odpowiednich elementów interfejsu użytkownika w InDesign CS5 (tak jak opisałem to w poprzednim wpisie) nie każdemu odpowiada te nowe zachowanie. Co więcej, zwłaszcza w wypadku systemu Mac OS X powszechne są doniesienia o problemach (zawieszanie się programu itp.).

Całe szczęście, jeżeli chcemy wyłączyć eksportowanie w tle i przywrócić dawny sposób działania, nie ma najmniejszego problemu! Należy utworzyć pusty plik o nazwie „DisableAsyncExports.txt” i umieścić w katalogu w którym znajduje się plik wykonywalny InDesigna.

  • Na Mac OS X należy w Finderze przejść do teczki w której zainstalowany jest InDesign, ctrl-kliknąć na Adobe InDesign CS5.app a następnie wybrać Show Package Content (Pokaż zawartość), w nowootwartym oknie przejść do teczki Contents/MacOS/ i w niej umieścić utworzony plik
  • Na Windows wystarczy przejść do katalogu w którym zainstalowany został InDesign i w nim umieścić plik o którym mowa.

InDesign sprawdza istnienie pliku za każdym razem kiedy ma zacząć eksport do PDF. Fakt ten został wykorzystany przez  Marijan Tompa który napisał skrypt dodający do menu File pozycję sterującą sposobem eksportowania do pliku PDF. Skrypt można pobrać tu.

UWAGA: (dot. użytkowników Windows 7 i Vista) ponieważ skrypt ten działa wewnątrz katalogu z zainstalowanym programem, nie zadziała, jeżeli w systemie włączona opcja User Account Control.

W następnym wpisie zaprezentuję kolejne rozwiązanie, przywracające dawny sposób działania eksportu.

poniedziałek, 23 maja 2011

Eksportowanie PDFów w tle w InDesign CS5.

Jedną z nowości w InDesign CS5 jest eksportowanie PDFów w tle, bez przerywania pracy użytkownika. Choć wydaje się to ciekawą ideą, spotkałem się z informacjami o zawieszaniu się programu i innych związanych problemach. Poza tym, jak sam zauważyłem, trudno zorientować się kiedy eksport się zakończył i można np. wysłać plik do korekty.
Jeżeli chcemy śledzić postęp eksportu, włączmy paletę „Background Taks”:
Naszym oczom ukaże się pusta paleta. Kiedy wywołamy eksport do pliku pdf, pojawi się w niej na ten temat odpowiednia informacja:
Jednakże paleta wymaga miejsca na ekranie i trzeba pamiętać o jej włączeniu... Zazwyczaj chcemy przecież tylko wiedzieć, czy eksport już się zakończył. Całe szczęście, jest inny sposób: w górnej belce okna programu (tam gdzie znajduje się menu, a także ikonki typu „Otwórz Bridge”) w momencie gdy wykonywane jest jakieś zadanie w tle, pojawia się ikonka:
W momencie kiedy eksport zakończy się, rzecz jasna ikonka znika.
Tyle na dziś, jutro zaś trochę więcej informacji nt. jak w ogóle wyłączyć ten „ficzer” :)

piątek, 4 marca 2011

GREP w InDesign

Z przyjemnością informuję, że na polskim rynku ukazała się książka „GREP w InDesign” autorstwa Marka Włodarza. Jest mi tym bardziej miło, że mam w tym przedsięwzięciu swój wkład, choć naprawdę niewielki. Oto fragment przedmowy:
Począwszy od wersji CS3, Adobe InDesign dysponuje potężnym narzędziem edycyjnym - wyszukiwaniem i zastępowaniem tekstu przy użyciu wyrażeń regularnych. Nie da się przecenić wynikającej stąd możliwości zautomatyzowania zadań, które dotąd można było wykonać tylko ręcznie lub zewnętrznymi narzędziami.
Wyrażenia regularne są jednak na tyle złożone, że trudno z nich skorzystać bez przygotowania i nauki. Sam InDesign jest praktycznie pozbawiony wskazówek na ten temat, a i niewiele więcej można znaleźć w dostępnych podręcznikach. Książka ta ma na celu wypełnić tę lukę.
Choć zamieściłem w niej dziesiątki przykładów, książka nie zawiera (i nie może) rozwiązań wszystkich problemów, które można napotkać przy pracy nad tekstem. Wskazuje jednak kierunki, w których można szukać tych rozwiązań, a także niebezpieczne rafy i mielizny, które trzeba się nauczyć omijać.
W trzy dni wykonać pracę, która dotychczas zajmowała trzy tygodnie? Tak, to jest możliwe, a przedstawione w książce koncepcje i narzędzia stanowią część rozwiązania.
Szczegóły są dostępne na stronie wydawcy. Książkę zamierzam przeczytać w najbliższym czasie, więc spodziewajcie się recenzji :)

piątek, 11 lutego 2011

Getting started with Flex 4

Adobe udostępniło darmowego ebooka pt „Getting started with Flex 4”. Można ściągnąć go ze strony Adobe.
Myślę, że z czystym sercem mogę polecić go osobom, które nie znają jeszcze narzędzi Adobe. Książka jest niezłym wprowadzeniem do czwartej wersji Flexa i Flash Buildera. Jak sam tytuł wskazuje – jest to pozycja przeznaczona dla początkujących, osoby pracujące na co dzień z Flexem raczej nie znajdą tu nic interesującego.

Tytuł: Getting Started with Flex 4
Autorzy: Jeanette Stallons, Andrew Shorten, Vince Genovese
Wydawca: O'Reilly Media Inc.
Seria: Adobe Developer Library
ISBN: 978-0-596-80411-4

sobota, 26 czerwca 2010

Krzywienie przez spłaszczanie :D

Czasem zdarza się, że w przygotowywanej przez nas pracy musimy zamienić tekst na krzywe (tak, by w wynikowym pliku np. pdf albo eps nie znalazły się żadne fonty). InDesign udostępnia narzędzie służące do takich zamian. Jest ono dostępne w menu Type (Type –> Create outlines) gdy zaznaczymy tekst, moim zdaniem jednak jest niewygodne – pozbawia nas oryginalnego tekstu, co utrudnia ewentualną późniejszą edycję. Poza tym czasem nie działa jak należy z powodu błędów w jego implementacji (np. nie uwzględnia podkreślenia albo przekreślenia tekstu!).


Z tego powodu powstała sztuczka, którą teraz przedstawię. Wykorzystuję w niej fakt, że przy spłaszczaniu przezroczystości InDesign automatycznie może zamienić tekst na krzywe na całej stronie. Domyślnie takie zachowanie jest wyłączone. Aby włączyć je muszę stworzyć nowe ustawienie spłaszczania przezroczystości (flattener preset): Wchodzę w menu Edit –> Transparency Flattener Presets…:


Następnie tworzę nowe ustawienie, klikając na przycisk New…:



Pojawia się okienko definicji nowego ustawienia spłaszczania przezroczystości. Nadaję nazwę (np. „krzywienie”, Raster/Vector Balance ustawiam na 100%, Line Art and Text Resolution na 1200 ppi, Gradient and Mesh Resolution na 300 ppi. Następnie zaznaczam najistotniejszą opcję: Convert All Text to Outlines. Nie zaszkodzi również zaznaczenie Convert All Strokes to Outlines:



Oczywiście klikam OK. W tym momencie mam już gotowe ustawienie spłaszczania przezroczystości. Muszę jeszcze dodać przezroczystość, najlepiej taką, która nie wpłynie na wygląd mojej pracy… Rozwiązanie jest bardzo proste: na samym wierzchu (najlepiej na osobnej warstwie) dodaję duży prostokąt o rozmiarach strony, bez obrysu, o kolorze wypełnienia „Paper”. Następnie w palecie Effects dla nowoutoworzonego prostokątu nadaję tryb mieszania „Multiply”. W ten sposób uzyskuję przezroczystość wymuszającą krzywienie, a jednocześnie nie zmieniającą mi wyglądu pracy.


Pozostaje wyeksportować pracę do formatu, który nie obsługuje przezroczystości, np. EPS albo PDF 1.3. W opcjach eksportu należy wybrać jako ustawienie spłaszczania „krzywienie”, po to, by rzeczywiście przy eksporcie nastąpiła zamiana tekstu na krzywe:

WAŻNE! Ten sposób działa we wszystkich wersjach InDesigna do CS4. Jednakże w wersji CS5 na skutek zmian w pracy spłaszczacza przezroczystości nie zadziała!, mimo, że paleta „Flattener preview” będzie pokazywać tekst zamieniony na krzywe. Przezroczystość na stronę należy wtedy dodać w inny sposób, np. tak: dodajemy gdzieś na marginesie możliwie małą kropkę (stopień pisma 0,1pt) korzystającą z tinty czarnej farby (0,01%) a następnie nad tą kropką umieszczamy możliwie mały prostokąt 100% K o przezroczystości ustawionej na 0,01%. W tym momencie wymuszamy działanie modułu spłaszczania przezroczystości.

wtorek, 22 czerwca 2010

MacOSX w maszynie wirtualnej (VirtualBox 3.2 na intelowym PC)

Oracle VirtualBox od wersji 3.2 oficjalnie wspiera uruchamianie systemu MacOSX na komputerach produkcji Apple, niezależnie od używanego głównego systemu operacyjnego (hosta). Z przyjemnością stwierdzam, że jest możliwe uruchomienie MacOSX Snow Leo jako goszczony system (guest) także na komputerach bez znaczku jabłuszka :)

Poniżej instrukcje (zaczerpnięte ze strony http://www.sysprobs.com/install-mac-snow-leopard-1063-oracle-virtualbox-32-apple-intel-pc)

Wymagania wstępne


  1. Oracle VirtualBox 3.2 (do pobrania stąd)
  2. DVD instalacyjny systemu MacOSX (albo plik ISO). Nie bądź piratem, kup oryginał! Wbrew temu co się powszechnie sądzi, jest dostępna wersja nie będąca uaktualnieniem dla MacOSX Leo.
  3. EmpireEFIv1085.iso dla procesorów Intel (bootloader, konieczny do uruchomienia MacOSX)
  4. (Opcjonalnie) sterownik dla wbudowanej karty dźwiękowej
  5. No i oczywiście sprzęt wspierający wirtualizację. W moim przypadku był to procesor Intel Core2Quad 9650 i 8GB RAM, do tego Win7 64bit Ultimate

Instalacja MacOSX, krok po kroku


  1. Tworzymy nową maszynę wirtualną w VirtualBoxie, o następujących ustawieniach:
    Poszalałem nieco z pamięcią, do stabilnej pracy powinno wystarczyć 1gb.
    WAŻNE: należy wyłączyć wsparcie dla EFI. EFI działa tylko na komputerach produkcji Apple; żeby umożliwić uruchamianie MacOSX na komputerze nieapplowskim, korzystamy z bootloadera (w którym m.in. znajduje się emulator EFI).
  2. Montujemy empireEFIv1085.iso w napędzie płyt maszyny wirtualnej.
  3. Po uruchomieniu maszyny wciskamy F12 aby wybrać źródło bootowania. Wybieramy CD -ROM (klawisz C):

    Po uruchomieniu bootloadera EFI należy zmienić zamontowaną płytę na DVD instalacyjny MacOSX Snow Leo:

    Po chwili należy wcisnąć F5 – powinien pojawić się drugi dysk – instalacyjny MacOSX. Być może trzeba będzie wybrać go za pomocą wciśnięcia Entera.
  4. W tym momencie ładuje się instalator i rozpoczyna normalna procedura instalacji MacOSa. Jeżeli korzystamy ze świeżego dysku wirtualnego należy pamiętać o skonfigurowaniu go za pomocą Narzędzia dyskowego:

    Po uruchomieniu Narzędzia dyskowego przechodzimy na zakładkę Partycje i dodajemy nową partycję za pomocą przycisku plusa:

    Po dodaniu nowej partycji zamykamy Narzędzie dyskowe (Jabłko-Q) i przechodzimy do instalacji. Akceptujemy licencję, a następnie wybieramy nowoutworzoną partycję jako miejsce docelowe nowej instalacji MacOSX. Czekamy ok. 30 minut. Pod koniec instalacji może pojawić się komunikat o błędzie, ale nie należy się nim przejmować. Instalator spróbuje zrestartować maszynę wirtualną. UWAGA: Niestety, wyłączanie maszyny i jej restart nie przebiegają normalnie, w związku z czym należy przeprowadzać je z okienka VirtualBoxa.
  5. Instalacja bootloadera: montujemy z powrotem plik iso z bootloaderem a następnie instalujemy z niego program myHack. Zawiera on w sobie (oprócz bootloadera EFI) sterowniki usprawniające pracę MacOSX z różnego rodzaju sprzętem.

Uwagi końcowe


MacOSX w ten sposób zainstalowany działa stabilnie, chociaż moim zdaniem nieco wolno. Aktualizacja systemu działa bezproblemowo.

sobota, 5 czerwca 2010

Tabela i grafika

Dostałem mailem następujące zapytanie: Jak w jednej komórce tabelki umieścić grafikę i tekst?
Otóż wbrew pozorom jest to dość łatwe :).
Zacznijmy od tego, że komórka w tabeli zachowuje się pod wieloma względami podobnie do ramki tekstowej; między innymi można w niej umieścić obiekty wewnątrz wątku tekstowego – tzw. obiekty zakotwiczone (anchored objects). Wystarczy ustawić się kursorem tekstowym wewnątrz komórki i wstawić grafikę (ctrl-d), a następnie dodać tekst, np:


Jeżeli chcę umieścić tekst (np. tytuł lub podpis) na obrazku zaznaczam go czarną strzałką i udaję się do menu Object->Anchored Object->Options...:

W opcjach obiektu zaktowiczonego wybieram Above line, a następnie ustawiam odległość następnej lini od obiektu na ujemną wartość:

Dobrze jest włączyć sobie podgląd (Preview), wtedy wyraźnie widać co się dzieje :)