Używam tego jquery przesyłania obrazu wtyczki https://github.com/blueimp/jQuery-File-UploadNiebieski Prześlij plik obrazu wielkość klient imp rozmiaru i upraw
Co potrzebne jest do zmiany rozmiaru/crop obraz w rozmiarze klienta, więc będzie mieć dokładną wysokość i szerokość , a następnie prześlij na serwer.
jest to część skryptu do przesłania, i działa dobrze, jedynym problemem jest to, że po prostu zmienia rozmiar obrazu bez przycinania i kończę na przesłaniu obrazu z np. szerokość 150 px i wysokość mówią 133 px (chociaż wysokość i szerokość początkowego obrazu jest większa niż 1000 px, a ja chcę dokładnej wysokości i szerokości - 150px). Z listy opcji myślałem, że imageCrop
powinien załatwić sprawę, https://github.com/blueimp/jQuery-File-Upload/wiki/Options#imagecrop, ale tak nie jest. Czy robię coś nie tak, czy wtyczka nie obsługuje funkcjonalności, której potrzebuję? A jeśli tak, to czy istnieje sposób, w jaki mogę osiągnąć to, czego potrzebuję, korzystając z zewnętrznej biblioteki/funkcji wykorzystującej tę wtyczkę?
Dzięki
edit:
Próbowałem również tej opcji, jak również
canvas: true,
cover: true,
crop: true,
thumbnail: true,
aspectRatio: '1/1'
ale bezskutecznie
$('#fileupload').fileupload({
url: 'test.php'
dataType: 'json',
imageCrop: true,
process: [
{
action: 'load',
fileTypes: /^image\/(gif|jpeg|png)$/,
maxFileSize: 20000000 // 20MB
},
{
action: 'resize',
maxWidth: 150,
maxHeight: 150,
minWidth: 150,
minHeight: 150,
imageCrop: true
},
{
action: 'save'
},
{action: 'duplicateImage'},
{
action: 'resize',
maxWidth: 100,
maxHeight: 100,
minWidth: 100,
minHeight: 100,
imageCrop: true
},
{
action: 'save'
}
], ...