2009-09-17 12 views
6

Mamy obecnie system do przycinania obrazów, które używa jCrop na front-end, i System.Drawing w .NET na zapleczu - to działa bardzo dobrze, ale teraz musimy wprowadzić rotację obrazu. Potrzebne są tylko kąty 90 stopni, a jQuery.Rotate działa dobrze w izolacji, ale chciałbym połączyć te dwie wtyczki jQuery z wdziękiem. Czy masz jakieś doświadczenie w tej dziedzinie? Czy istnieje "wstrząsnąć" rozwiązaniami?Łączone obracanie obrazu i przycinanie w jQuery

+0

Czy możesz podać więcej szczegółów na temat tego, co próbujesz osiągnąć? Czy chcesz, aby użytkownik zdefiniował prostokąt przycinania i jednocześnie zdefiniował kąt obrotu? Jaki jest dokładny wynik wizualny, który próbujesz osiągnąć? –

+0

Witam Ates, Próbuję uzyskać pojedynczy widok obrazu, za pomocą paska narzędzi, który umożliwia obracanie i kadrowanie obrazu w jednym, połączonym kroku. –

Odpowiedz

0

myślę jQuery rur podszewka jest odpowiedzią dla każdego jQuery plugin

na przykład:

$("image").rotate(foo).crop(foo); 
+1

Obawiam się, że to nie zadziała. Zarówno jCrop, jak i jQuery-Rotate wprowadzają istotne zmiany w DOM; muszą się w jakiś sposób zintegrować. W ostateczności mogłem podzielić obrót i kadrowanie na kilka kroków, ale wolałbym je trzymać razem. –

+0

Pipelining .. nie istnieje w jQuery. Każda funkcja właśnie zwraca obiekt 'jQuery'. – Dykam

+0

dla Dykam: i to jest to, co nazywamy wykładziną rurową: D, możesz przepuszczać więcej niż jedną operację dla Daniela: masz rację, ale wciąż możemy znaleźć rozwiązanie ...Podobał mi się ten problem i opublikuję kolejną odpowiedź, jeśli znajdę jeden –

0

Od dwóch wtyczek-ins działają w bardzo różny sposób, nie sądzę MOŻESZ łatwo połączyć oba. jCrop pozwala po prostu zdefiniować prostokątną ramkę na obrazie. Obrót, z drugiej strony, albo wykorzystuje <canvas> faktycznie obrócić obraz lub filtr DXImageTransform aby pokazać go obracać

+0

w IE Obrót jest wykonywany z atrybutem kąta, co oznacza, że ​​można wykonywać obrót, a następnie jCrop –

+0

Co atrybut kąta? Oficjalna witryna jquery-rotate (http://code.google.com/p/jquery-rotate/) stwierdza: Obsługiwane są dwie implementacje obsługi obrazków JavaScript: 1. korzystanie z filtru DXImageTransform dla przeglądarki Microsoft Internet Explorer 2. używanie Obiekt canvas dla innych przeglądarek –

+0

tak, a filtr jest stosowany z css, więc można go obrócić, a następnie jCrop po zastosowaniu obrotu –

1

Proponuję obrócić stronę serwera obrazów. Naprawdę nie można połączyć jCrop z obróconym obrazem, ponieważ metoda oparta na CSS "kłamie" na temat szerokości i wysokości.

Może być bardzo szybki. Twój interfejs użytkownika po prostu doda "obrót = 90" do obrazu kwerendy obrazu po kliknięciu przycisku, a obraz zostanie przeładowany.

Oto bardzo simple example of using jCrop and querystring-based resizing.

Weź look at the demo page, aby zobaczyć, jak bardzo jest responsywny - dodanie polecenia obracania zajmie tylko kilka linii javascript. Jeśli tego potrzebujesz, mogę przesłać próbkę tego, jak je połączyć.

0

Wiem, że to stare pytanie, ale czy sprawdziłeś tę wtyczkę jQuery o nazwie CropIt?

Demo wygląda bardzo dobrze i posiada powiększenie, przycięcie i obrót w tej samej wtyczce, nie wymaga kodu backendu.

Mam nadzieję, że to pomoże.