Corel FORUM Strona Główna Corel FORUM
Forum użytkowników programów firmy Corel. Grafika wektorowa, rastrowa i obróbka zdjęć cyfrowych

FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  GrupyGrupy
RejestracjaRejestracja  ZalogujZaloguj  DownloadDownload

Poprzedni temat «» Następny temat
Zachowanie oryginalnych rozmiarów w mm po rastrowaniu X4+
Autor Wiadomość
zyzio 
Praktyk


Dołączył: 06 Cze 2011
Posty: 90
Skąd: Podkarpacie
Wysłany: 1 Maj 2018, 22:11   Zachowanie oryginalnych rozmiarów w mm po rastrowaniu X4+

Witam. Koledzy ponieważ cały czas do tej pory trzymam się X3 ale chcę sobie dokupić dodatkowo X4, bo otwiera więcej pdf-ów lecz z tego co zauważyłem od tej wersji zmienił się mechanizm wygładzania podczas rasteryzacji, który powoduje zmianę rozmiaru obiektu w mm - teraz dodatkowy wygładzający piksel po obwodzie zostaje dodany na zewnątrz (dokładnie pół piksela z każdej strony), a mi to bardzo nie pasuje ponieważ rastrowane obiekty następnie wielokrotnie powielam na dużym arkuszu drukowym i dochodzi do pomyłek w ostatecznym rozmiarze całego składu.

Zastanawiam się czy dałoby się napisać takie obejście tego problemu czyli makro, które podczas jednego procesu najpierw przypisze do dwóch zmiennych oryginalną wysokość i szerokość zaznaczenia w milimetrach, następnie albo wywoła oryginalne okienko przekształcenia w mapę bitową albo pozwoli wprowadzić te same parametry co w tym okienku ale na customowej formie i w ostatnim etapie przypisze zrastrowanej już bitmapie początkowe rozmiary w milimetrach.

Z góry dzięki jak zawsze
 
 
grzjanik 
Bywalec
GrzJanik


Wersja CorelDRAW: X7
Pomógł: 2 razy
Wiek: 52
Dołączył: 16 Lis 2016
Posty: 34
Skąd: Łódź
Wysłany: 7 Maj 2018, 15:07   Rozmiar bitmapy

Witam.

U mnie działa. :)

Kod:
'Funkcja opóźniająca od John'a al. "runflacruiser" z forum Oberon'a

Function Wait(sngWaitMax As Single) As Boolean
    Dim sngStartTime As Single
    sngStartTime = Timer
    Do While (Timer - sngStartTime) < sngWaitMax
        DoEvents
    Loop
End Function


Dalej moje makro

Kod:
Sub BitmapaRozmiarowa()
    Dim s As Shape, x#, y#, w#, h#
   
    ActiveDocument.ReferencePoint = cdrBottomLeft
    ActiveDocument.Unit = cdrMillimeter

    If ActiveSelection.Shapes.count <> 0 Then
        ActiveShape.GetBoundingBox x, y, w, h, False

        SendKeys "%{B}", True
        SendKeys "{.}", True

        Do
            Wait (1) 'Czas pauzy w sekundach (tutaj pauza powtarzana
            dopóki nie zostanie zamknięte okno zamiany na bitmapę)
        Loop Until ActiveWindow.Active

        ActiveShape.SetPosition x, y
        ActiveShape.SetSize w, h

        Exit Sub
    Else
        MsgBox "Brak selekcji!", vbCritical
    End If
   
    ActiveWindow.Refresh
    Application.Refresh
   
End Sub


Generalnie makro pobiera położenie i rozmiar obiektu, otwiera okno zamiany na bitmapę, po jego zamknięciu zmienia rozmiar i położenie bitmapy.

Pozdrawiam.
GrzJanik
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group
Nowe zasady dotyczące cookies. Wykorzystujemy pliki cookies, aby nasz serwis lepiej spełniał Państwa oczekiwania. Można zablokować zapisywanie cookies, zmieniając ustawienia przeglądarki.
         
Strona wygenerowana w 0.09 sekundy. Zapytań do SQL: 12